Wie trenne ich mehrere Videos aus einer einzigen VOB-Datei?

1382
Amirreza Nasiri

Eine VOB-Datei (Video Object) ist eine DVD-Medienerweiterung, die mehrere Videos aufnehmen kann. Wie kann ich diese Videos von einer einzelnen VOB-Datei in mehrere MP4-Dateien (oder andere Erweiterungen) auf der Windows-Plattform aufteilen? Ich habe eine Art Splitter ausprobiert, aber sie konnten nur das erste Video erkennen.

Ich habe auch FFMPEG mit den Parametern ausprobiert, ffmpeg -1 input.vob output.mp4aber am Ende ist die einzelne VOB-Datei vollständig in MP4 konvertiert, ohne zu teilen oder einen Teil zu verlieren, und die mp4-Datei ist jetzt vollständig. und das unvollständige Ergebnis von ffmpeg -i input.vobist:

ffmpeg version N-66289-db76d613 Copyright (c) 2000-2014 Die FFmpeg-Entwickler erstellten am 15. September 2014 um 22:02:10 Uhr mit gcc 4.8.3 (GCC)
-Konfiguration: --enable-gpl --enable-version3 --disable -w32threads --enable-av
isynth --enable-bzlib --enable-fontconfig --enable-frei0r --enable-gnutls --enab
le-iconv --enable-libass --enable-libbluray --enable-libbs2b - -enable-libcaca -
enable-libfreetype --enable-libgme --enable-libgsm --enable-libilbc --enable-lib
modplug --enable-libmp3lame --enable-libopencore-amrnb --enable-libopencore-amrw
b --enable-libopenjpeg --enable-libopus --enable-librtmp --enable-libschroedinge
r --enable-libsoxr --enable-libspeex --enable-libtheora --enable-libtwolame --en
able-libvidstab --enable-libvo-aacenc --enable-libvo-amrwbenc --enable-libvorbis
--enable-libvpx --enable-libwavpack --enable-libwebp --enable-libx264 --enable-
libx265 --enable -libxavs --enable-libxvid --enable-decklink --enable-zlib
libavutil 54. 7.100 / 54. 7.100
libavcodec 56. 1.100 / 56. 1.100
libavformat 56. 4.101 / 56. 4.101
libavdevice 56. 0.100 / 56. 0.100
libavfilter 5. 1.100 / 5. 1.100
libswscale 3. 0.100 / 3.
0.100 libswresample 1. 1.100 / 1. 1.100
libpostproc 53. 0.100 / 53. 0.100
Eingabe # 0, mpeg, aus 'TheFile.VOB':
Duration: 00:03: 45,79, Start: 0,224478, Bitrate: 6197 kb / s
Stream # 0: 0 [0x1bf]: Daten: dvd_nav_packet
Stream # 0: 1 [0x1e0]: Video: mpeg1video, yuv420p (tv), 352 x 240 [SAR 49:33 DAR 9
8:45], 1150 kb / s, 29,97 fps, 29,97 tbr, 90k tbn, 29,97 tbc
Stream # 0: 2 [0x1c0]: Audio: mp2, 48000 Hz, stereo, s16p, 224 kb / s
Mindestens eine Ausgabedatei muss angegeben werden

0
Hast du die Handbremse ausprobiert? Marcelo vor 9 Jahren 0
@Marcelo Nein, das sollte ich versuchen :) Ich schreibe das Ergebnis. Amirreza Nasiri vor 9 Jahren 0
Wenn Sie einen anderen Codec als den verwendeten Quellcode verwenden, ist eine Konvertierung erforderlich, und die Konvertierung erfordert entweder Qualitätsverlust oder eine erhöhte Dateigröße. Wenn Sie auf denselben Codec aufteilen wie die Quellkonvertierung, kann dies je nach verwendetem Programm erforderlich sein oder nicht. Nur etwas zu beachten. Robin Hood vor 9 Jahren 0
Hm. Ich fürchte, ffmpeg kann die Kapitel im VOB nicht identifizieren. Vielleicht kann 'mplayer'? Ich kann jetzt leider nicht weiter helfen. slhck vor 9 Jahren 0

1 Antwort auf die Frage

1
slhck

Mit ffmpeg können Sie den segmentMuxer verwenden :

ffmpeg -i in.vob -c:v libx264 -c:a aac -strict experimental -b:a 192k \ -map 0:v:0 -map 0:a:0 -f segment -segment_times 1,2,3,5,8,13,21 out%03d.mp4 

Hier gibt die -segment_timesOption die individuelle Dauer der Segmente in Sekunden an. Verwenden Sie -segment_time 5stattdessen ein einzelnes Element, um Segmente gleicher Dauer zu erstellen.

Das -map 0:v:0sagt, nimm den ersten Videostream ( v:0) der ersten Eingabedatei ( 0:). Gleiches gilt für Audio. Sie müssen die Änderungen erhalten der dritte Videostrom, zum Beispiel.v:0v:2

Weitere Informationen zur Qualität finden Sie in der H.264-Kodierungsanleitung .

Das \setzt den Befehl in Linux-Shells fort. YMMV für Windows.

Das Problem ist, dass die gesamte Dauer der VOB-Datei nicht sichtbar ist. Ich habe VLC und KMPlayer verwendet, aber beide zeigen die Zeit des Videos, das läuft. Unsere VOB-Datei enthält beispielsweise 3 Videos mit einer Dauer von 1, 3, 5 Minuten, so dass unsere Datei 9 Minuten beträgt. Während der Wiedergabe des zweiten Videos (das von einem beginnt und bis zur fünften Minute endet), zeigt der Player die Dauer des Videos (von 0 Sekunden bis 1 Minute). Daher ist es mir nicht möglich, die genaue Zeit zu bestimmen, um als Segmente aufzuteilen. Amirreza Nasiri vor 9 Jahren 0