lavf/riffenc: Always write unexpected channel_mask.
authorCarl Eugen Hoyos <cehoyos@ag.or.at>
Wed, 12 Oct 2016 10:34:48 +0000 (12:34 +0200)
committerCarl Eugen Hoyos <cehoyos@ag.or.at>
Wed, 12 Oct 2016 10:34:48 +0000 (12:34 +0200)
Allows to write arbitrary channel masks also for 16bit 48kHz pcm.

libavformat/riffenc.c
libavformat/version.h

index 4b25c06..c96329d 100644 (file)
@@ -71,6 +71,8 @@ int ff_put_wav_header(AVFormatContext *s, AVIOContext *pb,
     frame_size = av_get_audio_frame_duration2(par, par->block_align);
 
     waveformatextensible = (par->channels > 2 && par->channel_layout) ||
+                           par->channels == 1 && par->channel_layout && par->channel_layout != AV_CH_LAYOUT_MONO ||
+                           par->channels == 2 && par->channel_layout && par->channel_layout != AV_CH_LAYOUT_STEREO ||
                            par->sample_rate > 48000 ||
                            par->codec_id == AV_CODEC_ID_EAC3 ||
                            av_get_bits_per_sample(par->codec_id) > 16;
index b70e9c3..b642c8b 100644 (file)
@@ -33,7 +33,7 @@
 // Also please add any ticket numbers that you believe might be affected here
 #define LIBAVFORMAT_VERSION_MAJOR  57
 #define LIBAVFORMAT_VERSION_MINOR  51
-#define LIBAVFORMAT_VERSION_MICRO 106
+#define LIBAVFORMAT_VERSION_MICRO 107
 
 #define LIBAVFORMAT_VERSION_INT AV_VERSION_INT(LIBAVFORMAT_VERSION_MAJOR, \
                                                LIBAVFORMAT_VERSION_MINOR, \