• Reinhard Tartler's avatar
    Fix parser not to clobber has_b_frames when extradata is set. · 790a367d
    Reinhard Tartler authored
    Because in contrast to the decoder, the parser does not setup low_delay.
    The code in parse_nal_units would always end up setting has_b_frames
    to "1", except when stream is explicitly marked as low delay.
    Since the parser itself would create 'extradata', simply reopening
    the parser would cause this.
    
    This happens for instance in estimate_timings_from_pts(), which causes the
    parser to be reopened on the same stream.
    
    This fixes Libav #22 and FFmpeg (trac) #360
    
    CC: libav-stable@libav.org
    
    Based on a patch by Reimar Döffinger <Reimar.Doeffinger@gmx.de>
    (commit 31ac0ac2)
    
    Comments and description adapted by Reinhard Tartler.
    Signed-off-by: 's avatarReinhard Tartler <siretart@tauware.de>
    790a367d
h264_parser.c 11 KB