FFMpeg открыть цепочку DVD VOB? - PullRequest
25 голосов
/ 23 ноября 2011

Я новичок в FFMpeg, так что это может быть глупый вопрос, но я не вижу ответа в документации.

Я хочу декодировать кадры из файлов DVD vob.Открытие первого VOB в группе работает нормально, но как сказать ffmpeg перейти к следующему VOB и прочитать все VOB на DVD?

У меня есть файлы VOB в папке на жестком диске.

Ответы [ 4 ]

23 голосов
/ 02 декабря 2011

Формат VOB - это подмножество mpeg , поэтому вы должны иметь возможность объединять VOB, которые вы хотите прочитать, так же, как вы бы добавляли данные в mpeg: объединяя их вместе.

cat first.VOB second.VOB third.VOB | ffmpeg -i - outfile.mp4

Подъем Комментарий Мэтта Галлахера для увеличения продолжительности жизни / видимости:

Более новые версии ffmpeg поддерживают конкатенацию в качестве оператора входного файла.Так что вы можете использовать ... ffmpeg -i concat:VTS_01_0.VOB\|VTS_01_1.VOB\|VTS_01_2.VOB outfile.mp4

12 голосов
/ 15 июля 2013

На самом деле вы можете использовать встроенную функцию конкатенации ffmpegs, что, я думаю, вы ищете:

ffmpeg -i "concat:$(echo *.VOB|tr \  \|)" -f mpeg -c copy -sn -y combined.mpg

См .: http://ffmpeg.org/trac/ffmpeg/wiki/How%20to%20concatenate%20(join,%20merge)%20media%20files

4 голосов
/ 19 апреля 2015

Кажется, что встроенная функция сцепления основана на * NIX и не работает на Windows для меня.В Windows VobMerge , казалось, работал для объединения соответствующих файлов VOB (которые для основного фильма на DVD, казалось, были набором, начинающимся с размера 1 ГБ).

Приложения

Вы также можете присоединить VOB-файлы в Windows непосредственно из командной строки :

copy /b "vob1.vob" + "vob2.vob" + "vob3.vob" "voboutput.vob"

Вы можете опустить кавычки, еслив именах файлов нет пробелов, но обязательно запомните /b и все знаки +.

0 голосов
/ 26 июля 2017

в Windows я предпочел конкатенацию «рефакторинга», а также не полагаться на предопределенные имена файлов:

copy /b  e:\VIDEO_TS\vts*.vob  temp.vob
ffmpeg -i temp.vob .... newfile.ogg

/ b означает: двоичная копия; в противном случае переводы строк и тому подобное обрабатываются по-разному.

Предостережения:

  • иногда есть файлы VOB, которые не являются частью фильма, и я не мог найти автоматический способ определить, какой именно
  • в системах с медленным вводом-выводом это добавляет огромного времени: для записи и чтения временного файла требуется время.
...