From 23d0fdcf6f30843fc3f14084d80581f1ca10f1f3 Mon Sep 17 00:00:00 2001 From: Maxim Poliakovski Date: Sat, 28 Sep 2013 00:18:18 +0200 Subject: Add support for multichannel ATRAC3+ streams. Signed-off-by: Anton Khirnov --- libavformat/oma.c | 15 +++++++++++++++ 1 file changed, 15 insertions(+) (limited to 'libavformat/oma.c') diff --git a/libavformat/oma.c b/libavformat/oma.c index aaaf0b29a0..27b598857c 100644 --- a/libavformat/oma.c +++ b/libavformat/oma.c @@ -21,6 +21,7 @@ #include "internal.h" #include "oma.h" #include "libavcodec/avcodec.h" +#include "libavutil/channel_layout.h" const uint16_t ff_oma_srate_tab[8] = { 320, 441, 480, 882, 960, 0 }; @@ -31,3 +32,17 @@ const AVCodecTag ff_oma_codec_tags[] = { { AV_CODEC_ID_PCM_S16BE, OMA_CODECID_LPCM }, { 0 }, }; + +/** map ATRAC-X channel id to internal channel layout */ +const uint64_t ff_oma_chid_to_native_layout[7] = { + AV_CH_LAYOUT_MONO, + AV_CH_LAYOUT_STEREO, + AV_CH_LAYOUT_SURROUND, + AV_CH_LAYOUT_4POINT0, + AV_CH_LAYOUT_5POINT1_BACK, + AV_CH_LAYOUT_6POINT1_BACK, + AV_CH_LAYOUT_7POINT1 +}; + +/** map ATRAC-X channel id to total number of channels */ +const int ff_oma_chid_to_num_channels[7] = {1, 2, 3, 4, 6, 7, 8}; -- cgit v1.2.3