[FFmpeg-user] VOB files convertion failed

Jamenson Ferreira Espindula de Almeida Melo jafesp at gmail.com
Tue May 8 03:13:38 EEST 2018


>From Jaboatão dos Guararapes, Pernambuco, Brazil.

Thank you for your response.

Below is the listing of a DVD movie disc. I want to convert these files
to one file. The files already are on my hard disk.

total 4,2G
-r--r--r-- 1 jamenson jamenson 124K fev  2  2010 video_ts.vob
-r--r--r-- 1 jamenson jamenson 320M fev  2  2010 vts_01_0.vob
-r--r--r-- 1 jamenson jamenson 1,0G fev  2  2010 vts_01_1.vob
-r--r--r-- 1 jamenson jamenson 1,0G fev  2  2010 vts_01_2.vob
-r--r--r-- 1 jamenson jamenson 1,0G fev  2  2010 vts_01_3.vob
-r--r--r-- 1 jamenson jamenson 735M fev  2  2010 vts_01_4.vob
-r--r--r-- 1 jamenson jamenson  11M fev  2  2010 vts_02_0.vob
-r--r--r-- 1 jamenson jamenson 8,0K fev  2  2010 vts_02_1.vob
-r--r--r-- 1 jamenson jamenson 8,0K fev  2  2010 vts_03_1.vob
-r--r--r-- 1 jamenson jamenson 159M fev  2  2010 vts_04_1.vob
-r--r--r-- 1 jamenson jamenson 8,0K fev  2  2010 vts_05_1.vob

So, first of all, I concatenate the eleven files to one file with this
command:


cat *vob > crepusculo.vob


Second I have analyze the contents of that file with this command:


ffprobe -hide_banner -analyzeduration 500M -probesize 500M -i \
crepusculo.vob


The output of that command was:


Input #0, mpeg, from '/tmp/crepusculo.vob':
  Duration: 00:01:43.71, start: 0.280633, bitrate: 347394 kb/s
    Stream #0:0[0x1bf]: Data: dvd_nav_packet
    Stream #0:1[0x1e0]: Video: mpeg2video (Main), yuv420p(tv, top \
    first), 720x480 [SAR 32:27 DAR 16:9], 8000 kb/s, 29.97 fps, 29.97 \
    tbr, 90k tbn, 59.94 tbc

    Stream #0:2[0x80]: Audio: ac3, 48000 Hz, 5.1(side), fltp, 448 kb/s
    Stream #0:3[0x20]: Subtitle: dvd_subtitle
    Stream #0:4[0x21]: Subtitle: dvd_subtitle
    Stream #0:5[0x81]: Audio: ac3, 48000 Hz, 5.1(side), fltp, 448 kb/s
Unsupported codec with id 100357 for input stream 0


ffmpeg -version output:


ffmpeg version 3.3.3 Copyright (c) 2000-2017 the FFmpeg developers
built with gcc 7.2.0 (GCC)
configuration: --prefix=/usr --enable-gpl --enable-version3 \
--enable-nonfree --disable-static --enable-shared --disable-debug \
--enable-libass --enable-libfdk-aac --enable-libfreetype \
--enable-libmp3lame --enable-libopus --enable-libtheora \
--enable-libvorbis --enable-libvpx --enable-libx264 --enable-libx265 \
--enable-openssl --docdir=/usr/share/doc/ffmpeg-3.3.3

libavutil      55. 58.100 / 55. 58.100
libavcodec     57. 89.100 / 57. 89.100
libavformat    57. 71.100 / 57. 71.100
libavdevice    57.  6.100 / 57.  6.100
libavfilter     6. 82.100 /  6. 82.100
libswscale      4.  6.100 /  4.  6.100
libswresample   2.  7.100 /  2.  7.100
libpostproc    54.  5.100 / 54.  5.100


First try: I tried the Matroska container. Below is the command:


ffmpeg -analyzeduration 500M -probesize 500M -i crepusculo.vob \
-map 0:1 -map 0:2 -map 0:3 -map 0:4 -map 0:5 \
-metadata:s:a:0 language=eng -metadata:s:a:0 title="English stereo" \
-metadata:s:a:1 language=por -metadata:s:a:1 title="Português estereo" \
-metadata:s:s:0 language=eng -metadata:s:s:0 title="English" \
-metadata:s:s:1 language=por -metadata:s:s:1 title="Português" \
-codec:v copy -crf 20 -codec:a copy -qscale:a 2 -codec:s copy \
crepusculo.mkv


The command output was:


ffmpeg version 3.3.3 Copyright (c) 2000-2017 the FFmpeg developers
  built with gcc 7.2.0 (GCC)
  configuration: --prefix=/usr --enable-gpl --enable-version3 \
  --enable-nonfree --disable-static --enable-shared --disable-debug \
  --enable-libass --enable-libfdk-aac --enable-libfreetype \
  --enable-libmp3lame --enable-libopus --enable-libtheora \
  --enable-libvorbis --enable-libvpx --enable-libx264 --enable-libx265 \
  --enable-openssl --docdir=/usr/share/doc/ffmpeg-3.3.3

  libavutil      55. 58.100 / 55. 58.100
  libavcodec     57. 89.100 / 57. 89.100
  libavformat    57. 71.100 / 57. 71.100
  libavdevice    57.  6.100 / 57.  6.100
  libavfilter     6. 82.100 /  6. 82.100
  libswscale      4.  6.100 /  4.  6.100
  libswresample   2.  7.100 /  2.  7.100
  libpostproc    54.  5.100 / 54.  5.100
Input #0, mpeg, from 'crepusculo.vob':
  Duration: 00:01:43.71, start: 0.280633, bitrate: 347394 kb/s
    Stream #0:0[0x1bf]: Data: dvd_nav_packet
    Stream #0:1[0x1e0]: Video: mpeg2video (Main), yuv420p(tv, top \
    first), 720x480 [SAR 32:27 DAR 16:9], 8000 kb/s, 29.97 fps, 29.97 \
    tbr, 90k tbn, 59.94 tbc

    Stream #0:2[0x80]: Audio: ac3, 48000 Hz, 5.1(side), fltp, 448 kb/s
    Stream #0:3[0x20]: Subtitle: dvd_subtitle
    Stream #0:4[0x21]: Subtitle: dvd_subtitle
    Stream #0:5[0x81]: Audio: ac3, 48000 Hz, 5.1(side), fltp, 448 kb/s
Output #0, matroska, to 'crepusculo.mkv':
  Metadata:
    encoder         : Lavf57.71.100
    Stream #0:0: Video: mpeg2video (Main) (mpg2 / 0x3267706D), \
    yuv420p(tv, top first), 720x480 [SAR 32:27 DAR 16:9], q=2-31, 8000 \
    kb/s, 29.97 fps, 29.97 tbr, 1k tbn, 90k tbc

    Stream #0:1(eng): Audio: ac3 ([0] [0][0] / 0x2000), 48000 Hz, \
    5.1(side), fltp, 448 kb/s

    Metadata:
      title           : English stereo
    Stream #0:2(eng): Subtitle: dvd_subtitle
    Metadata:
      title           : English
    Stream #0:3(por): Subtitle: dvd_subtitle
    Metadata:
      title           : Português
    Stream #0:4(por): Audio: ac3 ([0] [0][0] / 0x2000), 48000 Hz, \
    5.1(side), fltp, 448 kb/s

    Metadata:
      title           : Português estereo
Stream mapping:
  Stream #0:1 -> #0:0 (copy)
  Stream #0:2 -> #0:1 (copy)
  Stream #0:3 -> #0:2 (copy)
  Stream #0:4 -> #0:3 (copy)
  Stream #0:5 -> #0:4 (copy)
Press [q] to stop, [?] for help
[matroska @ 0xd5a240] Non-monotonous DTS in output stream 0:0; \
previous: 16, current: -33; changing to 16. This may result in \
incorrect timestamps in the output file.

[matroska @ 0xd5a240] Non-monotonous DTS in output stream 0:0; \
previous: 16, current: 0; changing to 16. This may result in \
incorrect timestamps in the output file.

[matroska @ 0xd5a240] 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

[matroska @ 0xd5a240] Can't write packet with unknown timestamp
av_interleaved_write_frame(): Invalid argument

[matroska @ 0xd5a240] Can't write packet with unknown timestamp
Error writing trailer of crepusculo.mkv: Invalid argument

frame=  305 fps=0.0 q=-1.0 Lsize=     231kB time=00:00:10.07 \
bitrate= 187.4kbits/s speed= 321x

video:6008kB audio:154kB subtitle:0kB other streams:0kB global \
headers:0kB muxing overhead: unknown
Conversion failed!


Second try: I tried to change the container to mp4. The command line
looks like this:


ffmpeg -analyzeduration 500M -probesize 500M -i crepusculo.vob \
-map 0:1 -map 0:2 -map 0:3 -map 0:4 -map 0:5 \
-metadata:s:a:0 language=eng -metadata:s:a:0 title="English stereo" \
-metadata:s:a:1 language=por -metadata:s:a:1 title="Português estereo" \
-metadata:s:s:0 language=eng -metadata:s:s:0 title="English" \
-metadata:s:s:1 language=por -metadata:s:s:1 title="Português" \
-codec:v copy -crf 20 -codec:a copy -qscale:a 2 -codec:s copy \
crepusculo.mp4


The command output was:


ffmpeg version 3.3.3 Copyright (c) 2000-2017 the FFmpeg developers
  built with gcc 7.2.0 (GCC)
  configuration: --prefix=/usr --enable-gpl --enable-version3 \
  --enable-nonfree --disable-static --enable-shared --disable-debug \
  --enable-libass --enable-libfdk-aac --enable-libfreetype \
  --enable-libmp3lame --enable-libopus --enable-libtheora \
  --enable-libvorbis --enable-libvpx --enable-libx264 --enable-libx265 \
  --enable-openssl --docdir=/usr/share/doc/ffmpeg-3.3.3

  libavutil      55. 58.100 / 55. 58.100
  libavcodec     57. 89.100 / 57. 89.100
  libavformat    57. 71.100 / 57. 71.100
  libavdevice    57.  6.100 / 57.  6.100
  libavfilter     6. 82.100 /  6. 82.100
  libswscale      4.  6.100 /  4.  6.100
  libswresample   2.  7.100 /  2.  7.100
  libpostproc    54.  5.100 / 54.  5.100
Input #0, mpeg, from 'crepusculo.vob':
  Duration: 00:01:43.71, start: 0.280633, bitrate: 347394 kb/s
    Stream #0:0[0x1bf]: Data: dvd_nav_packet
    Stream #0:1[0x1e0]: Video: mpeg2video (Main), yuv420p(tv, top \
    first), 720x480 [SAR 32:27 DAR 16:9], 8000 kb/s, 29.97 fps, 29.97 \
    tbr, 90k tbn, 59.94 tbc

    Stream #0:2[0x80]: Audio: ac3, 48000 Hz, 5.1(side), fltp, 448 kb/s
    Stream #0:3[0x20]: Subtitle: dvd_subtitle
    Stream #0:4[0x21]: Subtitle: dvd_subtitle
    Stream #0:5[0x81]: Audio: ac3, 48000 Hz, 5.1(side), fltp, 448 kb/s
[mp4 @ 0x1079240] track 1: codec frame size is not set
[mp4 @ 0x1079240] track 4: codec frame size is not set
Output #0, mp4, to 'crepusculo.mp4':
  Metadata:
    encoder         : Lavf57.71.100
    Stream #0:0: Video: mpeg2video (Main) (a[0][0][0] / 0x0061), \
    yuv420p(tv, top first), 720x480 [SAR 32:27 DAR 16:9], q=2-31, 8000 \
    kb/s, 29.97 fps, 29.97 tbr, 90k tbn, 90k tbc

    Stream #0:1(eng): Audio: ac3 ([165][0][0][0] / 0x00A5), 48000 Hz, \
    5.1(side), fltp, 448 kb/s

    Metadata:
      title           : English stereo
    Stream #0:2(eng): Subtitle: dvd_subtitle ([224][0][0][0] / 0x00E0)
    Metadata:
      title           : English
    Stream #0:3(por): Subtitle: dvd_subtitle ([224][0][0][0] / 0x00E0)
    Metadata:
      title           : Português
    Stream #0:4(por): Audio: ac3 ([165][0][0][0] / 0x00A5), 48000 Hz, \
    5.1(side), fltp, 448 kb/s

    Metadata:
      title           : Português estereo
Stream mapping:
  Stream #0:1 -> #0:0 (copy)
  Stream #0:2 -> #0:1 (copy)
  Stream #0:3 -> #0:2 (copy)
  Stream #0:4 -> #0:3 (copy)
  Stream #0:5 -> #0:4 (copy)
Press [q] to stop, [?] for help
[mp4 @ 0x1079240] Non-monotonous DTS in output stream 0:0; previous: \
1447, current: -3003; changing to 1448. This may result in incorrect \
timestamps in the output file.

[mp4 @ 0x1079240] Non-monotonous DTS in output stream 0:0; previous: \
1448, current: 0; changing to 1449. This may result in incorrect \
timestamps in the output file.

[mp4 @ 0x1079240] 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

[mp4 @ 0x1079240] pts has no value
    Last message repeated 648 times
frame= 2722 fps=0.0 q=-1.0 size=   61241kB time=00:01:30.72 \
bitrate=5529.9kbits/s speed= 181x
[mp4 @ 0x1079240] pts has no \
value

    Last message repeated 655 times
frame= 5180 fps=5179 q=-1.0 size=  123840kB time=00:02:52.73 \
bitrate=5873.0kbits/s speed= 173x
[mp4 @ 0x1079240] pts has no \
value

    Last message repeated 503 times
[mp4 @ 0x1079240] Application provided invalid, non monotonically \
increasing dts to muxer in stream 2: 17129112 >= 16543527

av_interleaved_write_frame(): Invalid argument
[mp4 @ 0x1079240] pts has no value
    Last message repeated 79 times
frame= 7070 fps=5123 q=-1.0 Lsize=  179654kB time=00:03:55.81 \
bitrate=6241.0kbits/s speed= 171x

video:174140kB audio:5395kB subtitle:22kB other streams:0kB global \
headers:0kB muxing overhead: 0.054197%
Conversion failed!


What I should do to solve that?

Thank you.

Jamenson Ferreira Espindula de Almeida Melo
GNU/Linux user # 166197
https://linuxcounter.net/cert/166197.png

Key fingerprint:
234D 1914 4224 7C53 BD13  6855 2AE0 25C0 08A8 6180


More information about the ffmpeg-user mailing list