[FFmpeg-cvslog] avcodec/mpeg4videodec: Don't initialize unused inter_scantable

Andreas Rheinhardt git at videolan.org
Thu Jun 20 20:01:06 EEST 2024


ffmpeg | branch: master | Andreas Rheinhardt <andreas.rheinhardt at outlook.com> | Tue Jun 11 22:45:40 2024 +0200| [c41818dc5dc14eb944761204e7b0ac179a6dcd1a] | committer: Andreas Rheinhardt

avcodec/mpeg4videodec: Don't initialize unused inter_scantable

inter_scantable is only used by the dct_unquantize_h263_inter
functions, yet this is not used by the MPEG-4 decoder at all
(in case H.263 quantization is used, the unquantization already
happens in mpeg4_decode_block()).

Also move the common initialization of ff_permute_scantable()
out of the if.

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

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

 libavcodec/mpeg4videodec.c | 9 ++-------
 1 file changed, 2 insertions(+), 7 deletions(-)

diff --git a/libavcodec/mpeg4videodec.c b/libavcodec/mpeg4videodec.c
index 130cde7a9d..77bd3e9947 100644
--- a/libavcodec/mpeg4videodec.c
+++ b/libavcodec/mpeg4videodec.c
@@ -3251,22 +3251,17 @@ static int decode_vop_header(Mpeg4DecContext *ctx, GetBitContext *gb,
         } else
             s->alternate_scan = 0;
     }
-
     if (s->alternate_scan) {
-        ff_init_scantable(s->idsp.idct_permutation, &s->inter_scantable,   ff_alternate_vertical_scan);
         ff_init_scantable(s->idsp.idct_permutation, &s->intra_scantable,   ff_alternate_vertical_scan);
         ff_permute_scantable(s->permutated_intra_h_scantable, ff_alternate_vertical_scan,
                              s->idsp.idct_permutation);
-        ff_permute_scantable(s->permutated_intra_v_scantable, ff_alternate_vertical_scan,
-                             s->idsp.idct_permutation);
     } else {
-        ff_init_scantable(s->idsp.idct_permutation, &s->inter_scantable,   ff_zigzag_direct);
         ff_init_scantable(s->idsp.idct_permutation, &s->intra_scantable,   ff_zigzag_direct);
         ff_permute_scantable(s->permutated_intra_h_scantable, ff_alternate_horizontal_scan,
                              s->idsp.idct_permutation);
-        ff_permute_scantable(s->permutated_intra_v_scantable, ff_alternate_vertical_scan,
-                             s->idsp.idct_permutation);
     }
+    ff_permute_scantable(s->permutated_intra_v_scantable, ff_alternate_vertical_scan,
+                         s->idsp.idct_permutation);
 
     /* Skip at this point when only parsing since the remaining
      * data is not useful for a parser and requires the



More information about the ffmpeg-cvslog mailing list