[FFmpeg-cvslog] avcodec/mpegvideo_dec: Document which codecs take which codepath

Andreas Rheinhardt git at videolan.org
Mon May 26 06:25:14 EEST 2025


ffmpeg | branch: master | Andreas Rheinhardt <andreas.rheinhardt at outlook.com> | Tue May 20 23:40:48 2025 +0200| [f2c04fd5870aaf8cb19144eb42538311c3de6266] | committer: Andreas Rheinhardt

avcodec/mpegvideo_dec: Document which codecs take which codepath

Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt at outlook.com>

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=f2c04fd5870aaf8cb19144eb42538311c3de6266
---

 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);



More information about the ffmpeg-cvslog mailing list