Commit 678b317a authored by Fiona Glaser's avatar Fiona Glaser

Fix bug in VBV lookahead + no MB-tree

I-frames need to have VBV lookahead run on them as well.
parent c83699f1
...@@ -892,7 +892,8 @@ void x264_slicetype_decide( x264_t *h ) ...@@ -892,7 +892,8 @@ void x264_slicetype_decide( x264_t *h )
} }
else if( (h->param.i_bframe && h->param.i_bframe_adaptive) else if( (h->param.i_bframe && h->param.i_bframe_adaptive)
|| h->param.i_scenecut_threshold || h->param.i_scenecut_threshold
|| h->param.rc.b_mb_tree ) || h->param.rc.b_mb_tree
|| (h->param.rc.i_vbv_buffer_size && h->param.rc.i_lookahead) )
x264_slicetype_analyse( h, 0 ); x264_slicetype_analyse( h, 0 );
for( bframes = 0;; bframes++ ) for( bframes = 0;; bframes++ )
...@@ -950,8 +951,8 @@ int x264_rc_analyse_slice( x264_t *h ) ...@@ -950,8 +951,8 @@ int x264_rc_analyse_slice( x264_t *h )
if( IS_X264_TYPE_I(h->fenc->i_type) ) if( IS_X264_TYPE_I(h->fenc->i_type) )
{ {
p1 = b = 0; p1 = b = 0;
/* For MB-tree, we have to perform propagation analysis on I-frames too. */ /* For MB-tree and VBV lookahead, we have to perform propagation analysis on I-frames too. */
if( h->param.rc.b_mb_tree ) if( h->param.rc.b_mb_tree || (h->param.rc.i_vbv_buffer_size && h->param.rc.i_lookahead) )
{ {
h->frames.last_nonb = h->fenc; h->frames.last_nonb = h->fenc;
x264_slicetype_analyse( h, 1 ); x264_slicetype_analyse( h, 1 );
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment