[FFmpeg-trac] #961(avcodec:new): Decoding H.264 to YUV drops one frame
FFmpeg
trac at avcodec.org
Tue Jan 31 15:47:54 CET 2012
#961: Decoding H.264 to YUV drops one frame
--------------------------------------+---------------------------------
Reporter: takis | Owner:
Type: defect | Status: new
Priority: normal | Component: avcodec
Version: git-master | Keywords:
Blocked By: | Blocking:
Reproduced by developer: 0 | Analyzed by developer: 0
--------------------------------------+---------------------------------
For the attached samples encoded with x264, FFmpeg drops one frame when
decoding them to YUV420.
I used the reference decoder (JM 17.2) to verify that the bitstream indeed
did contain one more frame than FFmpeg decoded.
./ldecod.dbg.exe -i output3.h264
Setting Default Parameters...
Parsing Configfile decoder.cfg
...............
----------------------------- JM 17.2 (FRExt)
-----------------------------
--------------------------------------------------------------------------
Input H.264 bitstream : /tmp/output3.h264
Output decoded YUV : test_dec.yuv
Input reference file : test_rec.yuv
--------------------------------------------------------------------------
POC must = frame# or field# for SNRs to be correct
--------------------------------------------------------------------------
Frame POC Pic# QP SnrY SnrU SnrV Y:U:V Time(ms)
--------------------------------------------------------------------------
Input reference file : test_rec.yuv does not exist
SNR values are not available
(fn=0 T: poc=0 B: poc=0 F: poc=0 G: poc=0) ref (3) view_id (0)
00000(IDR) 0 0 28 4:2:0 86
(fn=0 T: poc=0 B: poc=0 F: poc=0 G: poc=0) ref (3) view_id (0)
(fn=1 T: poc=4 B: poc=4 F: poc=4 G: poc=4) ref (3) view_id (0)
00002( P ) 4 1 28 4:2:0 13
(fn=0 T: poc=0 B: poc=0 F: poc=0 G: poc=0) ref (3) view_id (0)
(fn=1 T: poc=4 B: poc=4 F: poc=4 G: poc=4) ref (3) view_id (0)
(fn=2 T: poc=2 B: poc=2 F: poc=2 G: poc=2)
00001( b ) 2 2 28 4:2:0 10
-------------------- Average SNR all frames ------------------------------
SNR Y(dB) : 0.00
SNR U(dB) : 0.00
SNR V(dB) : 0.00
Total decoding time : 0.111 sec (27.027 fps)[3 frm/111 ms]
--------------------------------------------------------------------------
Exit JM 17 (FRExt) decoder, ver 17.2
Output status file : log.dec
pissaris at takis-Latitude-E6520:/usr/local/src/jm-17.2/bin$ ffmpeg -y -i
/tmp/output3.h264 test.yuv
ffmpeg version N-37401-g151ecc2 Copyright (c) 2000-2012 the FFmpeg
developers
built on Jan 31 2012 15:39:01 with clang 3.0 (tags/RELEASE_30/final)
configuration: --cc=/opt/clang/bin/clang
libavutil 51. 36.100 / 51. 36.100
libavcodec 54. 0.102 / 54. 0.102
libavformat 54. 0.100 / 54. 0.100
libavdevice 53. 4.100 / 53. 4.100
libavfilter 2. 60.100 / 2. 60.100
libswscale 2. 1.100 / 2. 1.100
libswresample 0. 6.100 / 0. 6.100
[h264 @ 0x29c83a0] decoding for stream 0 failed
[h264 @ 0x29c83a0] Estimating duration from bitrate, this may be
inaccurate
Input #0, h264, from '/tmp/output3.h264':
Duration: N/A, bitrate: N/A
Stream #0:0: Video: h264 (High), yuv420p, 352x288, 25 fps, 25 tbr,
1200k tbn, 50 tbc
[buffer @ 0x29d08e0] w:352 h:288 pixfmt:yuv420p tb:1/1000000 sar:0/1
sws_param:
Output #0, rawvideo, to 'test.yuv':
Metadata:
encoder : Lavf54.0.100
Stream #0:0: Video: rawvideo (I420 / 0x30323449), yuv420p, 352x288,
q=2-31, 200 kb/s, 90k tbn, 25 tbc
Stream mapping:
Stream #0:0 -> #0:0 (h264 -> rawvideo)
Press [q] to stop, [?] for help
frame= 2 fps= 0 q=0.0 Lsize= 297kB time=00:00:00.08
bitrate=30412.8kbits/s dup=0 drop=1
video:297kB audio:0kB global headers:0kB muxing overhead 0.000000%
--
Ticket URL: <https://ffmpeg.org/trac/ffmpeg/ticket/961>
FFmpeg <http://ffmpeg.org>
FFmpeg issue tracker
More information about the FFmpeg-trac
mailing list