From 8a5876d4acb54b74006ee1c741edadc68ed2773a Mon Sep 17 00:00:00 2001 From: Andreas Rheinhardt Date: Tue, 20 May 2025 23:40:48 +0200 Subject: [PATCH 13/19] avcodec/mpegvideo_dec: Document which codecs take which codepath Signed-off-by: Andreas Rheinhardt --- libavcodec/mpegvideo_dec.c | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/libavcodec/mpegvideo_dec.c b/libavcodec/mpegvideo_dec.c index 9cb3eab50d..c85c7db722 100644 --- a/libavcodec/mpegvideo_dec.c +++ b/libavcodec/mpegvideo_dec.c @@ -962,6 +962,9 @@ void mpv_reconstruct_mb_internal(MpegEncContext *s, int16_t block[12][64], /* add dct residue */ if (!(IS_MPEG12_H261(s) || s->msmpeg4_version != MSMP4_UNUSED || (s->codec_id == AV_CODEC_ID_MPEG4 && !s->mpeg_quant))) { + // H.263, H.263+, H.263I, FLV, RV10, RV20 and MPEG-4 with MPEG-2 quantization + // Also RV30, RV40 when performing error resilience, but + // all blocks are skipped in this case. add_dequant_dct(s, block[0], 0, dest_y , dct_linesize, s->qscale); add_dequant_dct(s, block[1], 1, dest_y + block_size, dct_linesize, s->qscale); add_dequant_dct(s, block[2], 2, dest_y + dct_offset , dct_linesize, s->qscale); @@ -973,6 +976,9 @@ void mpv_reconstruct_mb_internal(MpegEncContext *s, int16_t block[12][64], add_dequant_dct(s, block[5], 5, dest_cr, uvlinesize, s->chroma_qscale); } } else if (is_mpeg12 == DEFINITELY_MPEG12_H261 || lowres_flag || (s->codec_id != AV_CODEC_ID_WMV2)) { + // H.261, MPEG-1, MPEG-2, MPEG-4 with H.263 quantization, + // MSMP4V1-3 and WMV1. + // Also the VC-1 family when performing error resilience add_dct(s, block[0], 0, dest_y , dct_linesize); add_dct(s, block[1], 1, dest_y + block_size, dct_linesize); add_dct(s, block[2], 2, dest_y + dct_offset , dct_linesize); -- 2.45.2