[FFmpeg-cvslog] qdm2: check and reset dithering index per channel

Luca Barbato git at videolan.org
Sat Sep 14 11:30:50 CEST 2013


ffmpeg | branch: release/0.10 | Luca Barbato <lu_zero at gentoo.org> | Thu Jun 27 02:50:52 2013 +0200| [7296ee7af1424ad11afb9ea711f18f2b563c735b] | committer: Luca Barbato

qdm2: check and reset dithering index per channel

Checking per subband would have the index exceed the
dithering noise table size.

Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable at libav.org
(cherry picked from commit 744a11c996641888d477a3981d609e79eeb69ea9)

Signed-off-by: Luca Barbato <lu_zero at gentoo.org>

Conflicts:
	libavcodec/qdm2.c

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

 libavcodec/qdm2.c |    3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

diff --git a/libavcodec/qdm2.c b/libavcodec/qdm2.c
index 59bce40..856f9a4 100644
--- a/libavcodec/qdm2.c
+++ b/libavcodec/qdm2.c
@@ -784,8 +784,6 @@ static void synthfilt_build_sb_samples (QDM2Context *q, GetBitContext *gb, int l
     }
 
     for (sb = sb_min; sb < sb_max; sb++) {
-        FIX_NOISE_IDX(q->noise_idx);
-
         channels = q->nb_channels;
 
         if (q->nb_channels <= 1 || sb < 12)
@@ -809,6 +807,7 @@ static void synthfilt_build_sb_samples (QDM2Context *q, GetBitContext *gb, int l
         }
 
         for (ch = 0; ch < channels; ch++) {
+            FIX_NOISE_IDX(q->noise_idx);
             zero_encoding = (BITS_LEFT(length,gb) >= 1) ? get_bits1(gb) : 0;
             type34_predictor = 0.0;
             type34_first = 1;



More information about the ffmpeg-cvslog mailing list