[FFmpeg-devel] [PATCH] avformat/mpegts: fix Opus stream count

Rafaël Carré funman at videolan.org
Fri Dec 5 14:33:58 CET 2014


That number represents the number of streams, not the number of channels
---
 libavformat/mpegts.c | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

diff --git a/libavformat/mpegts.c b/libavformat/mpegts.c
index 97da0a3..f4250c8 100644
--- a/libavformat/mpegts.c
+++ b/libavformat/mpegts.c
@@ -1758,10 +1758,9 @@ int ff_parse_mpeg2_descriptor(AVFormatContext *fc, AVStream *st, int stream_type
                 if (channel_config_code <= 0x8) {
                     st->codec->extradata[9]  = channels = channel_config_code ? channel_config_code : 2;
                     st->codec->extradata[18] = channels > 2;
-                    st->codec->extradata[19] = channel_config_code;
+                    st->codec->extradata[19] = channels - opus_coupled_stream_cnt[channel_config_code];
                     if (channel_config_code == 0) { /* Dual Mono */
                         st->codec->extradata[18] = 255; /* Mapping */
-                        st->codec->extradata[19] = 2;   /* Stream Count */
                     }
                     st->codec->extradata[20] = opus_coupled_stream_cnt[channel_config_code];
                     memcpy(&st->codec->extradata[21], opus_channel_map[channels - 1], channels);
-- 
2.1.3



More information about the ffmpeg-devel mailing list