mirror of
https://github.com/FFmpeg/FFmpeg.git
synced 2024-12-23 12:43:46 +02:00
Merge commit '20429ba96e55db17ac57f6c0e330914287f1f614'
* commit '20429ba96e55db17ac57f6c0e330914287f1f614': h261: Move encoder/decoder shared table init to common code Merged-by: Michael Niedermayer <michaelni@gmx.at>
This commit is contained in:
commit
5ec016ad0b
@ -79,3 +79,14 @@ void ff_h261_loop_filter(MpegEncContext *s)
|
|||||||
h261_loop_filter(dest_cb, uvlinesize);
|
h261_loop_filter(dest_cb, uvlinesize);
|
||||||
h261_loop_filter(dest_cr, uvlinesize);
|
h261_loop_filter(dest_cr, uvlinesize);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
av_cold void ff_h261_common_init(void)
|
||||||
|
{
|
||||||
|
static int done = 0;
|
||||||
|
|
||||||
|
if (done)
|
||||||
|
return;
|
||||||
|
|
||||||
|
ff_init_rl(&ff_h261_rl_tcoeff, ff_h261_rl_table_store);
|
||||||
|
done = 1;
|
||||||
|
}
|
||||||
|
@ -61,6 +61,7 @@ extern const uint8_t ff_h261_cbp_tab[63][2];
|
|||||||
extern RLTable ff_h261_rl_tcoeff;
|
extern RLTable ff_h261_rl_tcoeff;
|
||||||
|
|
||||||
void ff_h261_loop_filter(MpegEncContext *s);
|
void ff_h261_loop_filter(MpegEncContext *s);
|
||||||
|
void ff_h261_common_init(void);
|
||||||
|
|
||||||
int ff_h261_get_picture_format(int width, int height);
|
int ff_h261_get_picture_format(int width, int height);
|
||||||
void ff_h261_reorder_mb_index(MpegEncContext *s);
|
void ff_h261_reorder_mb_index(MpegEncContext *s);
|
||||||
|
@ -62,7 +62,6 @@ static av_cold void h261_decode_init_vlc(H261Context *h)
|
|||||||
INIT_VLC_STATIC(&h261_cbp_vlc, H261_CBP_VLC_BITS, 63,
|
INIT_VLC_STATIC(&h261_cbp_vlc, H261_CBP_VLC_BITS, 63,
|
||||||
&ff_h261_cbp_tab[0][1], 2, 1,
|
&ff_h261_cbp_tab[0][1], 2, 1,
|
||||||
&ff_h261_cbp_tab[0][0], 2, 1, 512);
|
&ff_h261_cbp_tab[0][0], 2, 1, 512);
|
||||||
ff_init_rl(&ff_h261_rl_tcoeff, ff_h261_rl_table_store);
|
|
||||||
INIT_VLC_RL(ff_h261_rl_tcoeff, 552);
|
INIT_VLC_RL(ff_h261_rl_tcoeff, 552);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -83,6 +82,7 @@ static av_cold int h261_decode_init(AVCodecContext *avctx)
|
|||||||
avctx->pix_fmt = AV_PIX_FMT_YUV420P;
|
avctx->pix_fmt = AV_PIX_FMT_YUV420P;
|
||||||
s->codec_id = avctx->codec->id;
|
s->codec_id = avctx->codec->id;
|
||||||
|
|
||||||
|
ff_h261_common_init();
|
||||||
h261_decode_init_vlc(h);
|
h261_decode_init_vlc(h);
|
||||||
|
|
||||||
h->gob_start_code_skipped = 0;
|
h->gob_start_code_skipped = 0;
|
||||||
|
@ -314,12 +314,7 @@ void ff_h261_encode_mb(MpegEncContext *s, int16_t block[6][64],
|
|||||||
|
|
||||||
void ff_h261_encode_init(MpegEncContext *s)
|
void ff_h261_encode_init(MpegEncContext *s)
|
||||||
{
|
{
|
||||||
static int done = 0;
|
ff_h261_common_init();
|
||||||
|
|
||||||
if (!done) {
|
|
||||||
done = 1;
|
|
||||||
ff_init_rl(&ff_h261_rl_tcoeff, ff_h261_rl_table_store);
|
|
||||||
}
|
|
||||||
|
|
||||||
s->min_qcoeff = -127;
|
s->min_qcoeff = -127;
|
||||||
s->max_qcoeff = 127;
|
s->max_qcoeff = 127;
|
||||||
|
Loading…
Reference in New Issue
Block a user