vc1parse: call vc1_init_common().
The parser uses VLC tables initialized in vc1_common_init(), therefore we should call this function on parser init also. Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind CC: libav-stable@libav.org
This commit is contained in:
parent
9d3050d3e9
commit
c742ab4e81
3 changed files with 4 additions and 3 deletions
|
@ -447,5 +447,6 @@ int ff_vc1_decode_entry_point(AVCodecContext *avctx, VC1Context *v, GetBitContex
|
||||||
|
|
||||||
int ff_vc1_parse_frame_header (VC1Context *v, GetBitContext *gb);
|
int ff_vc1_parse_frame_header (VC1Context *v, GetBitContext *gb);
|
||||||
int ff_vc1_parse_frame_header_adv(VC1Context *v, GetBitContext *gb);
|
int ff_vc1_parse_frame_header_adv(VC1Context *v, GetBitContext *gb);
|
||||||
|
int ff_vc1_init_common(VC1Context *v);
|
||||||
|
|
||||||
#endif /* AVCODEC_VC1_H */
|
#endif /* AVCODEC_VC1_H */
|
||||||
|
|
|
@ -188,7 +188,7 @@ static int vc1_parse_init(AVCodecParserContext *s)
|
||||||
{
|
{
|
||||||
VC1ParseContext *vpc = s->priv_data;
|
VC1ParseContext *vpc = s->priv_data;
|
||||||
vpc->v.s.slice_context_count = 1;
|
vpc->v.s.slice_context_count = 1;
|
||||||
return 0;
|
return ff_vc1_init_common(&vpc->v);
|
||||||
}
|
}
|
||||||
|
|
||||||
AVCodecParser ff_vc1_parser = {
|
AVCodecParser ff_vc1_parser = {
|
||||||
|
|
|
@ -67,7 +67,7 @@ static const int offset_table2[9] = { 0, 1, 3, 7, 15, 31, 63, 127, 255 };
|
||||||
* @param v The VC1Context to initialize
|
* @param v The VC1Context to initialize
|
||||||
* @return Status
|
* @return Status
|
||||||
*/
|
*/
|
||||||
static int vc1_init_common(VC1Context *v)
|
int ff_vc1_init_common(VC1Context *v)
|
||||||
{
|
{
|
||||||
static int done = 0;
|
static int done = 0;
|
||||||
int i = 0;
|
int i = 0;
|
||||||
|
@ -5274,7 +5274,7 @@ static av_cold int vc1_decode_init(AVCodecContext *avctx)
|
||||||
avctx->idct_algo = FF_IDCT_WMV2;
|
avctx->idct_algo = FF_IDCT_WMV2;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (vc1_init_common(v) < 0)
|
if (ff_vc1_init_common(v) < 0)
|
||||||
return -1;
|
return -1;
|
||||||
ff_vc1dsp_init(&v->vc1dsp);
|
ff_vc1dsp_init(&v->vc1dsp);
|
||||||
|
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue