0

I am trying to convert dvd .VOB files (unencrypted) to .mp4, but first want to concat them

... I made a text file:

file './VTS_01_1.VOB'
file './VTS_01_2.VOB'
file './VTS_01_3.VOB'
file './VTS_01_4.VOB'

And then ran: ffmpeg -f concat -safe 0 -i vobs.txt -c copy output.vob

I got a bunch of mentions about invalid frame dimensions-- here is the actual output:

ffmpeg version 5.1.2 Copyright (c) 2000-2022 the FFmpeg developers
  built with Apple clang version 14.0.0 (clang-1400.0.29.102)
  configuration: --prefix=/opt/homebrew/Cellar/ffmpeg/5.1.2 --enable-shared --enable-pthreads --enable-version3 --cc=clang --host-cflags= --host-ldflags= --enable-ffplay --enable-gnutls --enable-gpl --enable-libaom --enable-libbluray --enable-libdav1d --enable-libmp3lame --enable-libopus --enable-librav1e --enable-librist --enable-librubberband --enable-libsnappy --enable-libsrt --enable-libtesseract --enable-libtheora --enable-libvidstab --enable-libvmaf --enable-libvorbis --enable-libvpx --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxml2 --enable-libxvid --enable-lzma --enable-libfontconfig --enable-libfreetype --enable-frei0r --enable-libass --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenjpeg --enable-libspeex --enable-libsoxr --enable-libzmq --enable-libzimg --disable-libjack --disable-indev=jack --enable-videotoolbox --enable-neon
  libavutil      57. 28.100 / 57. 28.100
  libavcodec     59. 37.100 / 59. 37.100
  libavformat    59. 27.100 / 59. 27.100
  libavdevice    59.  7.100 / 59.  7.100
  libavfilter     8. 44.100 /  8. 44.100
  libswscale      6.  7.100 /  6.  7.100
  libswresample   4.  7.100 /  4.  7.100
  libpostproc    56.  6.100 / 56.  6.100
Input #0, concat, from 'vobs.txt':
  Duration: N/A, start: 0.000000, bitrate: N/A
  Stream #0:0: Data: dvd_nav_packet
  Stream #0:1: Video: mpeg2video (Main), yuv420p(tv, top first), 720x480 [SAR 32:27 DAR 16:9], 29.75 fps, 59.94 tbr, 90k tbn
    Side data:
      cpb: bitrate max/min/avg: 8300000/0/0 buffer size: 1835008 vbv_delay: N/A
  Stream #0:2: Audio: ac3, 48000 Hz, stereo, fltp, 192 kb/s
Output #0, svcd, to 'output.vob':
  Metadata:
    encoder         : Lavf59.27.100
  Stream #0:0: Video: mpeg2video (Main), yuv420p(tv, top first), 720x480 [SAR 32:27 DAR 16:9], q=2-31, 29.75 fps, 59.94 tbr, 90k tbn
    Side data:
      cpb: bitrate max/min/avg: 8300000/0/0 buffer size: 1835008 vbv_delay: N/A
  Stream #0:1: Audio: ac3, 48000 Hz, stereo, fltp, 192 kb/s
Stream mapping:
  Stream #0:1 -> #0:0 (copy)
  Stream #0:2 -> #0:1 (copy)
Press [q] to stop, [?] for help
frame=    0 fps=0.0 q=-1.0 size=       0kB time=00:00:00.00 bitrate=N/A speed=N/[svcd @ 0x15c023e40] Timestamps are unset in a packet for stream 0. This is deprecated and will stop working in the future. Fix your code to set the timestamps properly
frame=17685 fps=0.0 q=-1.0 size=  499968kB time=00:12:16.90 bitrate=5558.0kbits/frame=37385 fps=37385 q=-1.0 size= 1000448kB time=00:25:58.47 bitrate=5258.8kbit[mpeg2video @ 0x15c005d10] Invalid frame dimensions 0x0.
    Last message repeated 9 times
[svcd @ 0x15c023e40] Non-monotonous DTS in output stream 0:0; previous: 144980089, current: 144980089; changing to 144980090. This may result in incorrect timestamps in the output file.
frame=68424 fps=45616 q=-1.0 size= 1065984kB time=00:42:44.01 bitrate=3405.8kbit[mpeg2video @ 0x15c005be0] Invalid frame dimensions 0x0.
    Last message repeated 10 times
[svcd @ 0x15c023e40] Non-monotonous DTS in output stream 0:0; previous: 289151513, current: 289151513; changing to 289151514. This may result in incorrect timestamps in the output file.
frame=98383 fps=49191 q=-1.0 size= 1092608kB time=00:58:42.71 bitrate=2540.8kbitframe=131893 fps=52756 q=-1.0 size= 1122304kB time=01:16:35.18 bitrate=2000.8kbi[mpeg2video @ 0x15c005880] Invalid frame dimensions 0x0.
    Last message repeated 3 times
[svcd @ 0x15c023e40] Non-monotonous DTS in output stream 0:0; previous: 439137237, current: 439137237; changing to 439137238. This may result in incorrect timestamps in the output file.
frame=164495 fps=54830 q=-1.0 size= 1151232kB time=01:33:58.44 bitrate=1672.6kbiframe=182556 fps=55587 q=-1.0 Lsize= 1167534kB time=01:43:36.26 bitrate=1538.6kbits/s speed=1.89e+03x
video:1097216kB audio:55703kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: 1.267720%

The output.vob file is only 1.2gb, where I am expecting it to be close to 4gb, and when I play it, it appears to be missing all the content from VTS_01_2, VTS_01_3, and VTS_01_4.

The source material seems to be fine, if I drag the VIDEO_TS folder containing these files to VLC, or DVD player, it plays fine all the way through.......

What am I doing wrong?

2 Answers 2

0

I ended up converting each vob to mp4 and then combined them the same way and it seemed to have solved the problem.

0

Try to precise output format :
ffmpeg -f concat -safe 0 -i vobs.txt -c copy -f dvd output.vob

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

Not the answer you're looking for? Browse other questions tagged or ask your own question.