[x264-devel] compile error
zhaoyulong at 360.cn
Tue Mar 31 13:25:01 CEST 2015
down load the x264 source code and found the following issule.
1. in cabac.c defined function:
void x264_macroblock_write_cabac( x264_t *h, x264_cabac_t *cb )
if( CHROMA444 )
x264_macroblock_write_cabac_internal( h, cb, 3, 0 );
x264_macroblock_write_cabac_internal( h, cb, 1, 1 );
while, in rdo.c, an macro defined for it
#define x264_macroblock_write_cabac static x264_macroblock_size_cabac
this make the symbol’s name to be x264_macroblock_size_cabac as a static function
however, there still declaration for x264_macroblock_write_cabac and in the decoder.c, there are calls for it, that makes a link break.
I don’t know whether function above is the desired one, but there is no the other x264_macroblock_write_cabac
2. x264_cabac_mb_skip defined as following
void x264_cabac_mb_skip( x264_t *h, int b_skip )
int ctx = h->mb.cache.i_neighbour_skip + 11;
if( h->sh.i_type != SLICE_TYPE_P )
ctx += 13;
x264_cabac_encode_decision( &h->cabac, ctx, b_skip );
however, the encoder calls x264_cabac_mb_skip directly without any micro checking.
and, the RDO_SKIP_BS is defined as 1
which make x264_cabac_mb_skip disappeared.
So, what is the correct action, should the x264_cabac_mb_skip not been called there or should I change !RDO_SKIP_BS to RDO_SKIP_BS?
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the x264-devel