From 54ed488b1af583df6c9d2a73b4a44f16b7e4f82c Mon Sep 17 00:00:00 2001 From: Anton Khirnov Date: Sun, 25 May 2014 11:34:32 +0200 Subject: flac muxer: write WAVEFORMATEXTENSIBLE_CHANNEL_MASK tag for multichannel files --- libavformat/flacenc_header.c | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) (limited to 'libavformat/flacenc_header.c') diff --git a/libavformat/flacenc_header.c b/libavformat/flacenc_header.c index c1f7c86554..0d19b3c876 100644 --- a/libavformat/flacenc_header.c +++ b/libavformat/flacenc_header.c @@ -19,6 +19,8 @@ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA */ +#include "libavutil/channel_layout.h" + #include "libavcodec/flac.h" #include "libavcodec/bytestream.h" #include "avformat.h" @@ -45,3 +47,17 @@ int ff_flac_write_header(AVIOContext *pb, AVCodecContext *codec, return 0; } + +int ff_flac_is_native_layout(uint64_t channel_layout) +{ + if (channel_layout == AV_CH_LAYOUT_MONO || + channel_layout == AV_CH_LAYOUT_STEREO || + channel_layout == AV_CH_LAYOUT_SURROUND || + channel_layout == AV_CH_LAYOUT_QUAD || + channel_layout == AV_CH_LAYOUT_5POINT0 || + channel_layout == AV_CH_LAYOUT_5POINT1 || + channel_layout == AV_CH_LAYOUT_6POINT1 || + channel_layout == AV_CH_LAYOUT_7POINT1) + return 1; + return 0; +} -- cgit v1.2.3