avcodec/mpegvideo: Don't duplicate identical code

Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
This commit is contained in:
Andreas Rheinhardt 2021-12-23 03:19:20 +01:00
parent ec5c188b21
commit 5d856ef476
1 changed files with 18 additions and 19 deletions

View File

@ -1963,25 +1963,6 @@ void mpv_reconstruct_mb_internal(MpegEncContext *s, int16_t block[12][64],
{
const int mb_xy = s->mb_y * s->mb_stride + s->mb_x;
if (CONFIG_XVMC &&
s->avctx->hwaccel && s->avctx->hwaccel->decode_mb) {
s->avctx->hwaccel->decode_mb(s);//xvmc uses pblocks
return;
}
if(s->avctx->debug&FF_DEBUG_DCT_COEFF) {
/* print DCT coefficients */
int i,j;
av_log(s->avctx, AV_LOG_DEBUG, "DCT coeffs of MB at %dx%d:\n", s->mb_x, s->mb_y);
for(i=0; i<6; i++){
for(j=0; j<64; j++){
av_log(s->avctx, AV_LOG_DEBUG, "%5d",
block[i][s->idsp.idct_permutation[j]]);
}
av_log(s->avctx, AV_LOG_DEBUG, "\n");
}
}
s->current_picture.qscale_table[mb_xy] = s->qscale;
/* update DC predictors for P macroblocks */
@ -2263,6 +2244,24 @@ skip_idct:
void ff_mpv_reconstruct_mb(MpegEncContext *s, int16_t block[12][64])
{
if (CONFIG_XVMC &&
s->avctx->hwaccel && s->avctx->hwaccel->decode_mb) {
s->avctx->hwaccel->decode_mb(s); //xvmc uses pblocks
return;
}
if (s->avctx->debug & FF_DEBUG_DCT_COEFF) {
/* print DCT coefficients */
av_log(s->avctx, AV_LOG_DEBUG, "DCT coeffs of MB at %dx%d:\n", s->mb_x, s->mb_y);
for (int i = 0; i < 6; i++) {
for (int j = 0; j < 64; j++) {
av_log(s->avctx, AV_LOG_DEBUG, "%5d",
block[i][s->idsp.idct_permutation[j]]);
}
av_log(s->avctx, AV_LOG_DEBUG, "\n");
}
}
#if !CONFIG_SMALL
if(s->out_format == FMT_MPEG1) {
if(s->avctx->lowres) mpv_reconstruct_mb_internal(s, block, 1, 1);