When I play a libav encoded mpeg2 movie on my DVR, FFWD doesn't work as
expected. It tends to jump too far. I've seen this with multiple movies
and I'd really like to know how to fix it.
Playing the movie at normal speed, the timer says 00:20:00 (for ex) and
the scene currently displayed (at normal speed) is correct for that time
in the movie. I then press FFWD and the movie plays forward at high speed
(as it should). When the timer reaches 00:50:00, what I SEE displayed is
the scene corresponding to 00:40:00 mins. If I press PLAY at that point
it goes back to normal speed, but has jumped ahead to the scene
corresponding to the 00:50:00 min point, not to the 00:40:00 point that
was visible when I went from FFWD -> PLAY.
NOTE. There's nothing special about the 20, 40 or 50 minute points in the
movie, those are just examples. I can do this pretty much at any point in
the movie and it behaves similar. Sometimes it jumps ahead more,
sometimes less and sometimes it works as expected.
If I play the source video on the DVR, it plays just fine and FFWD works
as expected everywhere.
The source is also mpeg2, pulled from a DVD via mpv stream-dump.
Any idea why this happens and what I might need to do to fix it?
Here's the command I used to encode the movie:
$ avconv -fflags +genpts -i movie.vob -codec:v mpeg2video -b:v 4500k -bufsize
2000k -maxrate 9800k -qscale:v 1 -qmin 1 -mbd 2 -codec:a copy -f vob
movie-avconv.mpg
avconv version 11.3, Copyright (c) 2000-2014 the Libav developers
built on Mar 21 2015 09:44:38 with gcc 4.5.1 (GCC) 20100924 (Red Hat
4.5.1-4)
[mpeg @ 0x993a1c0] max_analyze_duration 5000000 reached
Input #0, mpeg, from 'movie.vob':
Duration: 02:14:39.00, start: 0.280633, bitrate: 6226 kb/s
Stream #0.0[0x1e0]: Video: mpeg2video (Main), yuv420p, 720x480 [PAR 32:27
DAR 16:9], 9800 kb/s, 24 fps, 90k tbn, 59.94 tbc
Stream #0.1[0x80]: Audio: ac3, 48000 Hz, 5.1, fltp, 448 kb/s
Stream #0.2[0x81]: Audio: ac3, 48000 Hz, 5.1, fltp, 384 kb/s
Stream #0.3[0x82]: Audio: ac3, 48000 Hz, 5.1, fltp, 384 kb/s
Stream #0.4[0x83]: Audio: ac3, 48000 Hz, 5.1, fltp, 384 kb/s
Output #0, vob, to 'movie-avconv.mpg':
Metadata:
encoder : Lavf56.1.0
Stream #0.0: Video: mpeg2video (hq), yuv420p, 720x480 [PAR 32:27 DAR
16:9], q=1-31, 4500 kb/s, 24 fps, 90k tbn, 24 tbc
Metadata:
encoder : Lavc56.1.0 mpeg2video
Stream #0.1: Audio: ac3, 48000 Hz, 5.1, 448 kb/s
Stream mapping:
Stream #0:0 -> #0:0 (mpeg2video (native) -> mpeg2video (native))
Stream #0:1 -> #0:1 (copy)
Press ctrl-c to stop encoding
frame=193898 fps= 37 q=1.0 Lsize= 6473058kB time=8079.00 bitrate=6563.6kbits/s
video:5950105kB audio:441822kB other streams:0kB global headers:0kB muxing
overhead: 1.269262%
And the resulting file:
$ avconv -i movie-avconv.mpg
avconv version 11.3, Copyright (c) 2000-2014 the Libav developers
built on Mar 21 2015 09:44:38 with gcc 4.5.1 (GCC) 20100924 (Red Hat
4.5.1-4)
[mpeg @ 0x93155a0] max_analyze_duration 5000000 reached
Input #0, mpeg, from 'movie-avconv.mpg':
Duration: 02:14:39.00, start: 1.041667, bitrate: 6563 kb/s
Stream #0.0[0x1e0]: Video: mpeg2video (Main), yuv420p, 720x480 [PAR 32:27
DAR 16:9], 9800 kb/s, 24 fps, 90k tbn, 48 tbc
Stream #0.1[0x80]: Audio: ac3, 48000 Hz, 5.1, fltp, 448 kb/s
At least one output file must be specified
_______________________________________________
libav-tools mailing list
[email protected]
https://lists.libav.org/mailman/listinfo/libav-tools