You've already forked FFmpeg
mirror of
https://github.com/FFmpeg/FFmpeg.git
synced 2025-08-15 14:13:16 +02:00
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:
@@ -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);
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user