staging.inyokaproject.org

eigenes Brennscript zum Anpassen - bitte ausprobieren!

Status: Gelöst | Ubuntu-Version: Nicht spezifiziert
Antworten |

Stefan_hb

Avatar von Stefan_hb

Anmeldungsdatum:
5. März 2005

Beiträge: 49

[Update 08.03., 20:45, habe einen Fehler bei der AudioCover-Erstellung behoben, Script aktualisiert.]
[Update 09.03., 14:00, die Erstellung des Audiocovers funktioniert jetzt.]
[Update 10.03., 15:00, Fehler im Menüpunkt "dl" behoben.]

Hallo,
ich bin schon seit längeren etwas unzufrieden mit den Möglichkeiten, die man hat, unter Linux bequem eine CD zu brennen. K3B hat sich für mich nicht als zuverlässig genug erwiesesen, längere Zeit habe ich "bashburn" benutzt, aber auch das funktioniert bei mir nur 80-prozentig.
Da ja alle Brenn-Programme unter Linux nur frontends für "cdrecord" etc. sind, habe ich mir überlegt, dass man sich eigentlich selbst ein Script scheiben müsste, das die am häufigsten benutzten Befehle menügesteuert ausführt. Dies habe ich nun durchgeführt und möchte euch das Script vorstellen.

Bild:

Ungültiges Makro

Dieses Makro ist nicht verfügbar

Das Listing des Scriptes findet ihr im Wiki:
programmierung:skripte:Brennen mit der Bash
Hier kann man es downloaden:
http://www.go77.de/linux/Burner.tar.gz
Bitte verwendet zum Ausprobieren die Download-Datei, bei Copy+Paste des Codes aus der Webseite können Fehler auftreten. (Außerdem kann das Wiki ja jeder editieren- vielleicht ja auch zum Vorteil.)

Ziel war es, alle wichtigen Befehle in einem Script zu haben, und bei einer Umstellung auf z.B. eine andere Distribution einfach die betreffenden Pfade/Parameter in dem Script zu ändern, und wieder ein bequemes Brennprogramm zu haben.
Eines vorweg: Ihr werdet das Script nicht testen können, ohne einige (wenige) Anpassungen an euer System zu machen (ich beschreibe das weiter unten), aber es lohnt sich meiner Meinung nach, dann das Scribt hat nette Features, wie z.B. das automatische Generieren eines erstklassigen Audio-CD-Covers.
Für das Script ist es erforderlich, ein temporäres Brennverzeichnis (z.B. ~/tmp/burn) anzulegen, dieses nenne ich im folgenden BURNDIR.

Erklärung des Menüs (siehe Bild):
–-
-Titelzeile

-Größenangabe von BURNDIR
Wieviel Platz belegen die Daten, die ich sichern will? Diese Anzeige lässt sich durch drücken der Taste "r" aktualisieren.

- 1 - Mp3/Ogg nach Wav dekodieren
Hier wird folgendes gemacht: alle mp3 und ogg-files in BURNDIR werden erst umbenannt, Leerzeichen werden durch Underscores ersetzt, MP3 wird nach mp3 umbenannt, usw. Dann werden die Audiodaten nach *.wav dekodiert
(Hinweis: Die einzelnen "mv"-Befehle geben hier Fehlermeldungen aus, wenn z.B. keine "*.OGG" gefunden werden. Diese können einfach ignoriert werden.)

- 11 - Audio-CD nach Wav rippen
Für das einfache Kopieren einer Audio-CD wird diese verlustfrei ins Wav-Format gerippt.

- 1x - Wav brennen
Die so erstellten Wav-Dateien werden auf CD gebrannt

- 2 - Iso von Daten erstellen
Von allen Daten in BURNDIR wird ein ISO erstellt

- 21 - Iso von CD erstellen
Von einer CD wird ein ISO erstellt

- 2x - Iso brennen
Das ISO-File wird auf CD gebrannt

- Die Punkte i, wl und dl sind selbssterklärend. "wl" hat den Sinn, dass man nach den Dekodieren und Brennen von mp3s nicht per Hand die Wav-Dateien löschen muss, das hat mich bei "bashburn" immer genervt

- r, b: selbsterklärend

- c - Daten-CD-Cover erzeugen
Mit den Programm "cdlabelgen" wird ein ersklassiges CD-Cover in HOME erzeugt, auf dem alle Dateien in BURNDIR aufgelistet werden
http://www.go77.de/linux/Data.pdf

- a - Audio-CD-Cover erzeugen
Man kann in BURNDIR ein JPG-file ablegen (auch schon vorm Brennen), wenn man diesen Menüpunkt auswählt, wird ein CD-Cover erzeugt, das auf der Vorderseite das Bild hat (komplett ausgefüllt), und auf der Rückseite eine numerierte Titelliste! Cool, oder?
Ich habe hier Slim-Case Cover erstellt, weil ich diese fast ausschließlich verwende, aber durch Anpassung kann man natürlich auch Jewel-Case-Cover erzeugen.
Hier ein Bild zum Ausprobieren:
http://www.go77.de/linux/coverbild.jpg
Hier ein fertiges Cover:
http://www.go77.de/linux/Audio.pdf
Dieses Cover wird aus den Namen der Wav-Dateien ohne weitere Bearbeitungsschritte erzeugt, einfach auf Knopfdruck.
\––\––\–––-

Was braucht man, damit es funktioniert?:

cdrecord
lame (natürlich kann auch alles andere benutzt werden, muss dann halt angepasst werden)
ogg123
normalize

Für die Cover-Erstellung:
mogrify
cdlabelgen
tiff2ps (ist im Paket libtiff-tools)
\––\––\––\––\––-
Was muss man im Script anpassen:

Zeile 8: Hier muss angegeben werden, welches Verzeichniss man als BURNDIR verwenden möchte
Zeile 77: Hier muss der cdrecord-Befehl definitiv angepasst werden. Ihr müsst sebst ausprobieren, mit welchen Parametern ihr cdrecord auf eurem System zum Brennen bewegt. Die meisten werden sicherlich auch angeben müssen, mit welchem Gerät cdrecord brennen soll
Zeile 79: Hier muss angegeben werden, von welchem Laufwerk die Wav-Dateien ausgelesen werden sollen
Zeile 83: Dasselbe zum Auslesen der ISO-Datei von CD
Zeile 85: cdrecord, siehe oben
\––\––\––\––
Wenn ihr das Script also in diesen fünf Zeilen anpasst, habt ihr ein relativ komfortables Menü zum Brennen, etc.

Bestimmt kann man das eine oder andere in dem Script auch eleganter lösen, aber mir war am wichtigsten, dass ich voll und ganz durchblicke und bei einem Umstieg auf ein anderes System einfach die paar Zeilen ändern muss und dann flutscht es wieder.

Vielleicht hat der eine oder andere ja Lust, das hier auszuprobieren und seine Erfahrungen mitzuteilen.
Viel Spaß,
Stefan

programmierung:skripte:Brennen mit der Bash

Moderiert von blackbird:

Skript als wichtig eingestuft und im Wiki verewigt.

Jehu Team-Icon

Avatar von Jehu

Anmeldungsdatum:
22. Oktober 2004

Beiträge: Zähle...

Deine tolle Beschreibung und die Features deines Tools lassen mich neugierig werden.
Ich werd's gleich mal saugen und testen. Danke!
Wenn du es noch schaffs, dass "madman" Songs an dein Script übergibt und das brennen loslegt, dann wäre es wohl perfekt. 😉

madman verwendet ein einfaches Script als Plugin.

marco@baloo:/usr/lib/madman/plugins$ ls
burn_to_audio_cd  export_m3u     plugin_example
burn_to_data_cd   move_to_trash  README
marco@baloo:/usr/lib/madman/plugins$
#! /bin/bash
# MADMAN-PLUGIN-VERSION: 2
# MADMAN-NAME: Burn to an Audio CD
# MADMAN-DESCRIPTION: Creates an audio CD containing the songs in K3b.
# MADMAN-ARGUMENTS: %repeat% %path%/%file% %endrepeat%
# MADMAN-MENUSTRING: Burn to &Audio CD

if which k3b > /dev/null ; then
  if k3b --version | grep "K3b: 0.9"; then
    k3b --audio "$@" &
  else
    # 0.10 onwards
    k3b --audiocd "$@" &
  fi
else
  xmessage "K3b was not found. Please install from http://k3b.sourceforge.net" &fi

Weiss nicht, aber vielleicht wär das ja noch ein Feature. ☺

Badcel

Avatar von Badcel

Anmeldungsdatum:
25. Oktober 2004

Beiträge: 457

@tribun die Idee ist saugeil 8)

@stefan_hb *bittebittebitte* 😉

littlepaul Team-Icon

Anmeldungsdatum:
17. Oktober 2004

Beiträge: 1010

wenn man dvdrecord per Skript auch so ansprechen könnte, dann wäre das genial; aus Zeitmangel habe ich es noch nicht probiert

dejot Team-Icon

Avatar von dejot

Anmeldungsdatum:
23. Oktober 2004

Beiträge: Zähle...

so, möchte mcih jetzt auch mal dafür bedanken! Das Kodieren von mp3 zu wav mit GnomeBaker dauert einfach viel zu lange.
Danke!

dejot Team-Icon

Avatar von dejot

Anmeldungsdatum:
23. Oktober 2004

Beiträge: Zähle...

noch ne Ergänzung: normalize scheint es nicht mehr zu geben, das ganze heißt jetzt normalize-audio.
Und damit das ganze funzt, muss man das Script im Burndir ausführen, ist das Absicht? Ich gucks mir noch mal an, vielleicht hab ich ja was falsch gemacht.

mdkuser

Avatar von mdkuser

Anmeldungsdatum:
7. Februar 2006

Beiträge: 1098

Gute Idee, man sollte aber wenn moeglich noch etwas fortgeschrittenere Aktionen mit reinnehmen wie z.B.:

- Multisession CD brennen
- vorherige Session importieren und neue Session hinzufuegen
- Multisession CD fixieren
- CD-extra CD erstellen und brennen (spezielle Multisessionoption)
- (S)VCD erstellen und brennen
- bootfaehige CD (eltorito, isolinux, syslinux) erstellen und brennen

Waere das moeglich zu integrieren?

LordSavage

Avatar von LordSavage

Anmeldungsdatum:
19. April 2005

Beiträge: 1046

Hmm, hat sich an dem Script seit dem 10.03.2005 noch irgendwas getan?

Stefan_hb

(Themenstarter)
Avatar von Stefan_hb

Anmeldungsdatum:
5. März 2005

Beiträge: 49

LordSavage hat geschrieben:

Hmm, hat sich an dem Script seit dem 10.03.2005 noch irgendwas getan?

Nein, für mich funktioniert es nach wie vor fabelhaft! Benutzt das eigentlich irgend jemand? Würde mich ja sehr freuen.

kubus

Anmeldungsdatum:
7. Dezember 2005

Beiträge: 295

Das Script ist... genial! Sau geil, exakt sowas brauch ich, aber haargenau, auch das Umbennen der Dateien mit Unterstrichen usw. Perfekt!

Herzlichen dank an dich für dieses Script ☺

Stefan_hb

(Themenstarter)
Avatar von Stefan_hb

Anmeldungsdatum:
5. März 2005

Beiträge: 49

@kubus: Danke, hast du es schon ausprobiert?
Denk dran, dass du in Zeile 78 "normalize" in "normalize-audio" ändern musst, da sich in Ubuntu 5.10 dieser Befehl geändert hat.

kubus

Anmeldungsdatum:
7. Dezember 2005

Beiträge: 295

Hi,

habe es gerade ein wenig ausprobiert. Nach zwei winzigen Anpassungen, eben von normalize auf normalize-audio und von hdd auf hdc war ja nicht viel meinerseits zu tun. Die ersten 4 Tools (lame und Co) hatte ich bereits drauf. Ausprobiert habe ich mp3 to wave, ogg to wave, wave cd brennen und iso von cd erstellen, sowie die Umbenennung der Dateien. Es klappen die Kernfunktionen allesammt beanstandungslos! ☺

Dazu sollte ich erwähnen, dass ich es auf Dapper mit Xfce versucht habe. Also Siegel "Dapper fest" kannste ihm schon mal mit geben *lach*

Die CD Cover Funktion kann ich leider atm nicht testen, da die Programme dazu noch (?) nicht in den Dapper Repos sind. Muss mich mal auf die Suche nach den Webseiten der Tools begeben und sie eben selbst einbinden. Werde ich aber heute noch machen.

Sag mal, hast du Lust das noch ein Tick zu erweitern?

1. Klasse fände ich noch die _optionale_ Funktion, generell _alle_ Dateien, ehe man aus dem Ordner ein Iso fürs brennen erzeugt, umzubennen im Stil der Wave konvertierung. Also lediglich vorhandene Leerzeichen mit Unterstrichen zu ersetzen. Fände ich sehr nützlich als optionalen Modus zur Abrundung.

2. Wenn man die Klasse Funktion cd to wave nutzen kann, dann wäre es absolut spitze, wenn du noch die Möglichkeit anbieten würdest, nach dem rippen der CD gleich die waves in ogg zu kodieren. Ist natürlich mit einem weiteren Tool genauso möglich, aber würde es m.E. einfach "noch runder" machen.

Generelles Fazit aber: Klasse Sache dein Script. Ein wirklich nützliches kleines Helferlein. ☺

Stefan_hb

(Themenstarter)
Avatar von Stefan_hb

Anmeldungsdatum:
5. März 2005

Beiträge: 49

Danke für die Resonanz, ich freue mich sehr darüber nachdem ich wirklich eine Menge Arbeit in dieses Script investiert habe, ich hatte vorher noch nie sowas "Komplexes" gescriptet.
Ich würde dir auf jeden Fall empfehlen, die Cover-Erstellung auszuprobieren, du wirst überrascht sein, wie genial die generierten Cover sind. Ein Bekannter von mir, der sonst mit k3b brennt, nutzt dieses Script nur für die Covererstellung, da k3b dieses Feature ja noch nicht anbietet.
Gruß
Stefan

Nobuddy

Avatar von Nobuddy

Anmeldungsdatum:
2. September 2005

Beiträge: 6864

Hallo,
bin gerade über Deinen Thread gestolpert, werde mir das gleich mal holen und ausprobieren.
Melde mich wieder.

Gruß Wolfgang

Nobuddy

Avatar von Nobuddy

Anmeldungsdatum:
2. September 2005

Beiträge: 6864

Muß mich nochmals kurz melden.

Was braucht man, damit es funktioniert?:

cdrecord
lame (natürlich kann auch alles andere benutzt werden, muss dann halt angepasst werden)
ogg123
normalize


Das mit normalize ist klar, aber ogg123 finde ich absolut nicht.
Kann das evtl. oggz-tools sein?
Wenn nein, wo bekomme ich ogg123 her?

Gruß Wolfgang

Antworten |