[FFmpeg-cvslog] avcodec/dca: clear X96 channels if nothing was decoded

foo86 git at videolan.org
Sat Mar 26 22:36:05 CET 2016


ffmpeg | branch: release/3.0 | foo86 <foobaz86 at gmail.com> | Wed Mar  2 22:31:10 2016 +0300| [da6ccfe18ebbe7af41ba07edd64b6d1b8650ced2] | committer: Michael Niedermayer

avcodec/dca: clear X96 channels if nothing was decoded

The first X96 channel set can have more channels than core, causing X96
decoding to be skipped. Clear the number of decoded X96 channels to zero
in this rudimentary case.

Signed-off-by: Michael Niedermayer <michael at niedermayer.cc>
(cherry picked from commit db44b599805fdd96940cf2e5a336f872648bbda1)

Signed-off-by: Michael Niedermayer <michael at niedermayer.cc>

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

 libavcodec/dca_core.c |    1 +
 1 file changed, 1 insertion(+)

diff --git a/libavcodec/dca_core.c b/libavcodec/dca_core.c
index 48a8f61..d9f1a4c 100644
--- a/libavcodec/dca_core.c
+++ b/libavcodec/dca_core.c
@@ -1760,6 +1760,7 @@ static int parse_x96_frame_exss(DCACoreDecoder *s)
         return ret;
 
     // Channel set data
+    s->x96_nchannels = 0;
     for (i = 0, x96_base_ch = 0; i < x96_nchsets; i++) {
         header_pos = get_bits_count(&s->gb);
 



More information about the ffmpeg-cvslog mailing list