From: Fiona Glaser Date: Thu, 24 Sep 2009 15:40:45 +0000 (-0700) Subject: Fix 10l in API change X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=e324d60ab2d9fd9cb5c837039a8c48e2052d1947;p=libx264 Fix 10l in API change frame_num was set to 1, not 0, for the first frame. This broke spec compliance. Didn't actually seem to cause any problems though except for breaking decoding on Quicktime. --- diff --git a/encoder/encoder.c b/encoder/encoder.c index 78d64b3a..919db08f 100644 --- a/encoder/encoder.c +++ b/encoder/encoder.c @@ -1787,9 +1787,6 @@ int x264_encoder_encode( x264_t *h, if( h->sh.i_type == SLICE_TYPE_B ) x264_macroblock_bipred_init( h ); - if( i_nal_ref_idc != NAL_PRIORITY_DISPOSABLE ) - h->i_frame_num++; - /* ---------------------- Write the bitstream -------------------------- */ /* Init bitstream context */ h->out.i_nal = 0; @@ -1859,6 +1856,9 @@ int x264_encoder_encode( x264_t *h, /* ------------------------ Create slice header ----------------------- */ x264_slice_init( h, i_nal_type, i_global_qp ); + if( i_nal_ref_idc != NAL_PRIORITY_DISPOSABLE ) + h->i_frame_num++; + /* Write frame */ if( h->param.i_threads > 1 ) {