Das Vorgehen beim Rekodieren von DVDs ist bei mir im Wesentlichen immer dasselbe. Deshalb dieses Bash-Script, welches mir nahezu jegliche Arbeit dabei abnimmt und – wenn man das ohne handfeste Beweise sagen kann – sehr gute Qualität liefert (im Sinne, dass ich bisher noch nie nachbearbeiten / korrigieren musste, was es ausspuckt):
Download: proc.sh (14 KB) [macht damit, was ihr wollt]
Vor diesem Script nutzte ich dvd::rip für diesen Zweck, allerdings bot es mir zuwenig Unterstützung zur Zwischenbearbeitung und der Optionen der einzelnen verwendeten Programme. dvd::rip arbeitet dabei im Prinzip sehr ähnlich zu diesem Script, ist aber benutzerfreundlicher, mit einer GUI ausgestattet und vereinfacht eine verteilte Kodierung; weshalb es an dieser Stelle Erwähnung findet.
Features
- Automatische Extraktion aller nötigen Daten aus DVD-Mountpfad / Pfad zu DVD-Image
- Automatische Wahl des längsten Tracks (einstellbar)
- H.264-Video via x264 und einstellbarem Constant Quality Rate Factor
(--crf)
- Zuschnitt (via ffmpeg) über Angabe der Anzahl abzuschneidender Pixelzeilen/-spalten
- Warnung bei Framegrößen, die Probleme bereiten können (ungleich 0 mod 16)
- Automatische Anpassung der Pixelverhältnis- bzw. Seitenverhältnisangaben im resultierenden Videostrom
- Zwischenschaltbare yuv4mpeg-filter (z.B. zur Rauschunterdrückung, siehe auch Patch für yuvdenoise bzw. kommendes mjpegtools-Release)
- Zusätzliche FFmpeg- und x264-Argumente
- Zuschnitt (via ffmpeg) über Angabe der Anzahl abzuschneidender Pixelzeilen/-spalten
- Alle / Selektierte Audio-Tracks als Ogg Vorbis á 144kbps VBR (einstellbar)
- Automatische Erkennung des Formats und Dekodierung
- Automatische Normalisierung basierend auf der maximalen Lautstärke für jeden Strom
- Alle / Selektierte Untertitel kodiert als VobSub mit korrekten Sprachen / Zeitmarken
- Ausgabe des kompletten Befehls, um Matroska-Container inkl. Metadaten wie Titel, Kapitel und x264-encoding-Log zu erstellen
- Wiederholung unabhängiger selektierbarer Einzelschritte leicht möglich
- Überprüfung der und Warnung bei fehlenden Programmen
Benötigte Programme / Pakete
- ffmpeg (cropping und Kodierung MPEG2->y4m, Audionormalisierung)
- lsdvd (Metainformationen zu Titles von DVD)
- dvdxchap (Kapitelinformationsextrahierung)
- transcode (Bearbeitung von VOB- und Audiodaten)
- subtitleripper (Untertitelkonvertierung nach VobSub)
- x264 (Videokodierung)
- bc (einige Rechnungen, wie Seitenverhältnisse)
- vorbis-tools (Audiokodierung)
- mkvtoolnix (Matroskagenerierung)
- libdca (DTS-Audiodekodierung)
- a52dec (AC3-Audiodekodierung)
Optionen
[ ] -t DVD title to encode, default: longest -k DVD chapter of selected title to encode, default: -1 (all) -A "" audio track indices to extract, default: all -S "" subtitle track indices to extract, default: all -C cropping -c CRF-value for x264, smaller: better, default: 23 -b Ogg Vorbis bitrate, default: 144 -q Ogg Vorbis quality, default: 4 -f additional FFmpeg video filter arguments, e.g. '-deinterlace' -x additional arguments for x264-encoding, e.g. '--tune ' with being a combination of: film, animation, grain, stillimage, fastdecode, zerolatency -y yuv4mpeg filter, pipe into command -s 1: chapters 2: extract audio 4: extract subtitles 8: process subtitles 16: encode audio files 32: encode video 64: save output file -P override custom subtitle palette extracted from DVD IFO (16 comma-separated hex values) or empty string for default -v display video during encoding -T human readable title of the movie for Matroska container (needed for unattended output) -o path to filename to save encoded Matroska video (needed for unattended output) -L language the chapter descriptions are provided in (needed for unattended output iff ( & 1) == 0, otherwise 'eng' is assumed)]]>