Ich versuche, eine von einer DVD kopierte VOB-Datei in Ubuntu 13.10 in ein AVI zu konvertieren. Ich habe es versucht dvdrip
, was aufgrund eines Frame-Count-Fehlers oder so etwas fehlgeschlagen ist. Ich habe auch Acidrip ausprobiert, aber es wurde immer eine Audiospur ausgewählt, die ich nicht verwenden wollte. Ich würde es vorziehen, eine Befehlszeilenlösung zu haben, um ein AVI mit den folgenden Funktionen zu erstellen:
- verwendbar mit mplayer (dh mit den step-funktionen)
- mit dem erforderlichen Untertitel (oder überhaupt niemandem)
- mit der richtigen Audiospur
- mit synchronem Video und Audio
Ich habe versucht , einige ffmpeg
und avconv
Befehle und verwaltet ein avi zu schaffen, aber die Video- und Audio waren komplett aus dem Takt. Welche Optionen sollte ich verwenden, um die VOB-Datei in eine AVI-Datei zu konvertieren?
Ich würde mich über einige Erklärungen zu den vorgeschlagenen Optionen freuen!
Zusätzliche Information:
Der
ffmpeg
Befehl gibt die folgende Ausgabe für die Eingabedatei ausInput #0, mpeg, from 'Videos/Test/VIDEO_TS/VTS_01_1.VOB': Duration: 00:04:53.32, start: 0.045500, bitrate: 29284 kb/s Stream #0.0[0x1e0]: Video: mpeg2video (Main), yuv420p, 720x480 [PAR 8:9 DAR 4:3], 7500 kb/s, 27.68 fps, 59.94 tbr, 90k tbn, 59.94 tbc Stream #0.1[0x82]: Audio: ac3, 48000 Hz, 5.1, s16, 384 kb/s Stream #0.2[0x80]: Audio: ac3, 48000 Hz, 5.1, s16, 448 kb/s Stream #0.3[0x81]: Audio: ac3, 0 channels [buffer @ 0x15ca6e0] w:720 h:480 pixfmt:yuv420p
Der folgende Befehl
ffmpeg -i Videos/Test/VIDEO_TS/VTS_01_1.VOB -ss 589 -t 274 -sameq -acodec copy -ab 320k output.avi
führte zum Beispiel zu einem Absturz meiner Ubuntu-Sitzung.
Der folgende Befehl
avconv -i Videos/Test/VIDEO_TS/VTS_01_1.VOB -acodec copy -vcodec copy output.avi
führte beispielsweise zu folgendem Fehler:
Application provided invalid, non monotonically increasing dts to muxer in stream 1: 374 >= 374 av_interleaved_write_frame(): Invalid argument
Der folgende Befehl
avconv -i Videos/Test/VIDEO_TS/VTS_01_1.VOB -f avi -c:v mpeg4 -b:v 800k -g 300 -bf 2 -c:a libmp3lame -b:a 128k output.avi
führte beispielsweise zu folgendem Fehler:
Error while opening encoder for output stream #0:1 - maybe incorrect parameters such as bit_rate, rate, width or height
Der folgende Befehl
avconv -i Videos/Test/VIDEO_TS/VTS_01_1.VOB -f avi -c:v mpeg4 -b:v 800k -g 300 -bf 2 -c:a ac3 -b:a 128k output.avi
zum Beispiel schien für einige Frames zu funktionieren. Aber sehr bald stieß ich auf viele Fehler des Formulars
[ac3 @ 0x120d480] frame sync error Error while decoding stream #0:1 frame CRC mismatch
Der folgende Befehl
mencoder Videos/Test/VIDEO_TS/VTS_01_1.VOB -oac copy -ovc x264 -x264encopts bitrate=2500 -o output.avi
hat einige Konvertierungen durchgeführt, verwendet aber (i) Untertitel, obwohl ich sie nicht verwenden wollte (ii) habe das Audio falsch verstanden (Audio und Video sind furchtbar verlegt) und (iii) scheint langsamer zu sein, als der Film tatsächlich läuft (möglicherweise dauert) 2 Stunden für einen 90-minütigen Film).
Ich habe versucht, Befehl gegeben hier (dritter Beitrag von Xeratul), aber knapp mit dem Fehler
FATAL: Cannot initialize video driver.
Ich habe den folgenden Vorschlag ausprobiert, um auf die Mencoder-Seite zu schauen . Diese Seite schlägt vor, zwei Durchgänge zu verwenden:
Der erste liest Informationen über den Film, der zweite verwendet diese Informationen zum Codieren.
Es wird jedoch weder erklärt, welche Informationen extrahiert werden sollen, noch wie sie im zweiten Durchgang verwendet werden sollen. Also habe ich den folgenden Befehl verwendet:
mencoder Videos/Test/VIDEO_TS/VTS_01_1.VOB -nosound -ovc x264 \ -x264encopts direct=auto:pass=2:bitrate=900:frameref=5:bframes=1:\ me=umh:partitions=all:trellis=1:qp_step=4:qcomp=0.7:direct_pred=auto:keyint=300 \ -vf scale=-1:-10,harddup -o video.avi
das hat das Video konvertiert, aber mit einem unerwünschten Untertitel. Es ist überhaupt nicht klar, wie ich die Verwendung eines Untertitels vermeiden kann.
avconv
dann, um VOB-Dateien in avi zu konvertieren. Der Befehl avconv -i Videos/Test/VIDEO_TS/VTS_01_1.VOB -acodec copy -vcodec copy test.avi
gab einen Fehler Application provided invalid, non monotonically increasing dts to muxer in stream 1: 374 >= 374 av_interleaved_write_frame(): Invalid argument
...
avconv -i snatch_1.vob -f avi -c:v mpeg4 -b:v 800k -g 300 -bf 2 -c:a libmp3lame -b:a 128k snatch.avi
versuchen Sie dies
Error while opening encoder for output stream #0:1 - maybe incorrect parameters such as bit_rate, rate, width or height
mencoder yourvob -oac copy -ovc x264 -x264encopts pass=1:preset=veryslow:fast_pskip=0:tune=film:frameref=15:bitrate=3000:threads=auto -nosub -o /dev/null
dann mencoder yourvob -oac copy -ovc x264 -x264encopts pass=2:preset=veryslow:fast_pskip=0:tune=film:frameref=15:bitrate=3000:threads=auto -nosub -o video.avi
- teilweise aus dem Arch doc @ dg99 verlinkt.
ffmpeg
ist seit langem veraltet, soll man seinen eigenen nachfolger verwenden :avconv
.