This brings the FLAC demuxer in line with all the other demuxers.
Furthermore, if it is not done and the FLAC decoder is disabled,
the FLAC parser will overwrite the channel layout with the standard
channel layout for that number of channels.

Signed-off-by: Andreas Rheinhardt <andreas.rheinha...@outlook.com>
---
 libavformat/flacdec.c | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/libavformat/flacdec.c b/libavformat/flacdec.c
index 2060b48c69..d52434d2f9 100644
--- a/libavformat/flacdec.c
+++ b/libavformat/flacdec.c
@@ -19,6 +19,7 @@
  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
  */
 
+#include "libavutil/channel_layout.h"
 #include "libavcodec/flac.h"
 #include "avformat.h"
 #include "flac_picture.h"
@@ -192,6 +193,7 @@ static int flac_read_header(AVFormatContext *s)
                                "Invalid value of 
WAVEFORMATEXTENSIBLE_CHANNEL_MASK\n");
                     } else {
                         st->codecpar->channel_layout = mask;
+                        st->codecpar->channels       = 
av_get_channel_layout_nb_channels(mask);
                         av_dict_set(&s->metadata, 
"WAVEFORMATEXTENSIBLE_CHANNEL_MASK", NULL, 0);
                     }
                 }
-- 
2.30.2

_______________________________________________
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
https://ffmpeg.org/mailman/listinfo/ffmpeg-devel

To unsubscribe, visit link above, or email
ffmpeg-devel-requ...@ffmpeg.org with subject "unsubscribe".

Reply via email to