提交 519c2b6d 编写于 作者: F Fabrice Bellard

moved matrix init away from MPV_common_init()


Originally committed as revision 77 to svn://svn.ffmpeg.org/ffmpeg/trunk
上级 25ed7f92
......@@ -28,7 +28,8 @@
static int h263_decode_init(AVCodecContext *avctx)
{
MpegEncContext *s = avctx->priv_data;
int i;
s->out_format = FMT_H263;
s->width = avctx->width;
......@@ -57,6 +58,11 @@ static int h263_decode_init(AVCodecContext *avctx)
if (MPV_common_init(s) < 0)
return -1;
/* XXX: suppress this matrix init, only needed because using mpeg1
dequantize in mmx case */
for(i=0;i<64;i++)
s->non_intra_matrix[i] = default_non_intra_matrix[i];
if (s->h263_msmpeg4)
msmpeg4_decode_init_vlc(s);
else
......
......@@ -183,13 +183,6 @@ int MPV_common_init(MpegEncContext *s)
/* default structure is frame */
s->picture_structure = PICT_FRAME;
/* init default q matrix (only for mpeg and mjpeg) */
for(i=0;i<64;i++) {
s->intra_matrix[i] = default_intra_matrix[i];
s->chroma_intra_matrix[i] = default_intra_matrix[i];
s->non_intra_matrix[i] = default_non_intra_matrix[i];
s->chroma_non_intra_matrix[i] = default_non_intra_matrix[i];
}
/* init macroblock skip table */
if (!s->encoding) {
s->mbskip_table = av_mallocz(s->mb_width * s->mb_height);
......@@ -248,6 +241,7 @@ void MPV_common_end(MpegEncContext *s)
int MPV_encode_init(AVCodecContext *avctx)
{
MpegEncContext *s = avctx->priv_data;
int i;
s->bit_rate = avctx->bit_rate;
s->frame_rate = avctx->frame_rate;
......@@ -312,6 +306,12 @@ int MPV_encode_init(AVCodecContext *avctx)
if (MPV_common_init(s) < 0)
return -1;
/* init default q matrix */
for(i=0;i<64;i++) {
s->intra_matrix[i] = default_intra_matrix[i];
s->non_intra_matrix[i] = default_non_intra_matrix[i];
}
/* rate control init */
rate_control_init(s);
......
......@@ -337,6 +337,7 @@ static int rv10_decode_picture_header(MpegEncContext *s)
static int rv10_decode_init(AVCodecContext *avctx)
{
MpegEncContext *s = avctx->priv_data;
int i;
static int done;
s->out_format = FMT_H263;
......@@ -350,6 +351,11 @@ static int rv10_decode_init(AVCodecContext *avctx)
if (MPV_common_init(s) < 0)
return -1;
/* XXX: suppress this matrix init, only needed because using mpeg1
dequantize in mmx case */
for(i=0;i<64;i++)
s->non_intra_matrix[i] = default_non_intra_matrix[i];
h263_decode_init_vlc(s);
/* init rv vlc */
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册