[FFmpeg-trac] #1029(undetermined:open): first keyframe is missed in h264 mpegts stream (was: mpegts demuxer problems)
FFmpeg
trac at avcodec.org
Wed Jul 25 13:32:29 CEST 2012
#1029: first keyframe is missed in h264 mpegts stream
-------------------------------------+-------------------------------------
Reporter: DonMoir | Owner:
Type: defect | Status: open
Priority: normal | Component:
Version: git-master | undetermined
Keywords: mpegts h264 | Resolution:
Blocking: | Blocked By:
Analyzed by developer: 0 | Reproduced by developer: 1
-------------------------------------+-------------------------------------
Changes (by cehoyos):
* status: new => open
* reproduced: 0 => 1
* component: avformat => undetermined
* version: unspecified => git-master
* keywords: => mpegts h264
Comment:
The following ffmpeg command line produces a keyframe, compared with the
following mplayer command line, it can be seen that it is the second
keyframe of the stream.
{{{
$ ffmpeg -i mpegts_problem_file.ts -vframes 1 out.png
ffmpeg version N-42870-g1c2beff Copyright (c) 2000-2012 the FFmpeg
developers
built on Jul 25 2012 09:12:59 with gcc 4.3.2 (GCC)
configuration: --cc=/usr/local/gcc-4.3.2/bin/gcc --enable-gpl --enable-
libopenjpeg --enable-libvorbis --enable-libspeex --enable-libmp3lame
--enable-libtheora --extra-ldflags=-lm --enable-libvpx --enable-libxavs
--enable-x11grab --enable-libass --enable-nonfree --enable-libfaac
--enable-libopus
libavutil 51. 65.100 / 51. 65.100
libavcodec 54. 44.100 / 54. 44.100
libavformat 54. 20.100 / 54. 20.100
libavdevice 54. 2.100 / 54. 2.100
libavfilter 3. 3.100 / 3. 3.100
libswscale 2. 1.100 / 2. 1.100
libswresample 0. 15.100 / 0. 15.100
libpostproc 52. 0.100 / 52. 0.100
[h264 @ 0x90cebc0] non-existing PPS referenced
[h264 @ 0x90cebc0] non-existing PPS 0 referenced
[h264 @ 0x90cebc0] decode_slice_header error
[h264 @ 0x90cebc0] no frame!
[...]
[h264 @ 0x90cebc0] non-existing PPS referenced
[h264 @ 0x90cebc0] non-existing PPS 0 referenced
[h264 @ 0x90cebc0] decode_slice_header error
[h264 @ 0x90cebc0] no frame!
[mpegts @ 0x90b6500] max_analyze_duration 5000000 reached at 5016000
[mpegts @ 0x90b6500] PES packet size mismatch
Input #0, mpegts, from 'mpegts_problem_file.ts':
Duration: 00:00:25.36, start: 7140.559933, bitrate: 1875 kb/s
Program 5041
Program 5042
Program 5043
Program 5044
Program 5045
Program 5047
Program 5048
Program 5049
Program 5040
Program 5056
Program 5046
Program 5061
Program 5064
Program 5065
Program 5058
Program 5059
Stream #0:0[0xfb3]: Video: h264 (High) ([27][0][0][0] / 0x001B),
yuv420p, 704x576 [SAR 12:11 DAR 4:3], 28.61 fps, 25 tbr, 90k tbn, 50 tbc
Stream #0:1[0x1053](cze): Audio: mp2 ([3][0][0][0] / 0x0003), 48000
Hz, stereo, s16, 192 kb/s
Program 5057
Output #0, image2, to 'out.png':
Metadata:
encoder : Lavf54.20.100
Stream #0:0: Video: png, rgb24, 704x576 [SAR 12:11 DAR 4:3], q=2-31,
200 kb/s, 90k tbn, 25 tbc
Stream mapping:
Stream #0:0 -> #0:0 (h264 -> png)
Press [q] to stop, [?] for help
[h264 @ 0x90cebc0] reference picture missing during reorder
Last message repeated 1 times
[h264 @ 0x90cebc0] Missing reference picture
[h264 @ 0x90cebc0] decode_slice_header error
[h264 @ 0x90cebc0] concealing 1584 DC, 1584 AC, 1584 MV errors in P frame
[h264 @ 0x90cebc0] reference picture missing during reorder
[h264 @ 0x90cebc0] Missing reference picture
frame= 1 fps=0.0 q=0.0 Lsize= 0kB time=00:00:00.04 bitrate=
0.0kbits/s dup=0 drop=2
video:435kB audio:0kB subtitle:0 global headers:0kB muxing overhead
-100.000000%
}}}
The following command produces 19 frames, frame 00000007.png (-
000000018.png) shows the first keyframe, 00000019.png the second one (that
ffmpeg shows above).
{{{
$ mplayer mpegts_problem_file.ts -demuxer lavf -lavdopts skipframe=nonkey
-vo png -frames 19
}}}
--
Ticket URL: <https://ffmpeg.org/trac/ffmpeg/ticket/1029#comment:2>
FFmpeg <http://ffmpeg.org>
FFmpeg issue tracker
More information about the FFmpeg-trac
mailing list