[FFmpeg-devel] [PATCH 2/5] avcodec/mpeg4audio: add newer channel_coding mappings
Jan Ekström
jeebjp at gmail.com
Wed Jun 17 00:02:50 EEST 2020
Additionally, add comments regarding their definitions. Based on
ARIB STD-B32, which bases on 14496-3:2009 and 14496-3:2009/AMD4.
---
libavcodec/mpeg4audio.c | 17 +++++++++++++++--
libavcodec/mpeg4audio.h | 2 +-
2 files changed, 16 insertions(+), 3 deletions(-)
diff --git a/libavcodec/mpeg4audio.c b/libavcodec/mpeg4audio.c
index 0d83fb8d25..77cf2fb61c 100644
--- a/libavcodec/mpeg4audio.c
+++ b/libavcodec/mpeg4audio.c
@@ -64,8 +64,21 @@ const int avpriv_mpeg4audio_sample_rates[16] = {
24000, 22050, 16000, 12000, 11025, 8000, 7350
};
-const uint8_t ff_mpeg4audio_channels[8] = {
- 0, 1, 2, 3, 4, 5, 6, 8
+const uint8_t ff_mpeg4audio_channels[14] = {
+ 0,
+ 1, // mono (1/0)
+ 2, // stereo (2/0)
+ 3, // 3/0
+ 4, // 3/1
+ 5, // 3/2
+ 6, // 3/2.1
+ 8, // 5/2.1
+ 0,
+ 0,
+ 0,
+ 7, // 3/3.1
+ 8, // 3/2/2.1
+ 24 // 3/3/3 - 5/2/3 - 3/0/0.2
};
static inline int get_object_type(GetBitContext *gb)
diff --git a/libavcodec/mpeg4audio.h b/libavcodec/mpeg4audio.h
index 4b390e0f42..c4cdc1508c 100644
--- a/libavcodec/mpeg4audio.h
+++ b/libavcodec/mpeg4audio.h
@@ -46,7 +46,7 @@ typedef struct MPEG4AudioConfig {
} MPEG4AudioConfig;
extern av_export_avcodec const int avpriv_mpeg4audio_sample_rates[16];
-extern const uint8_t ff_mpeg4audio_channels[8];
+extern const uint8_t ff_mpeg4audio_channels[14];
/**
* Parse MPEG-4 systems extradata from a potentially unaligned GetBitContext to retrieve audio configuration.
--
2.26.2
More information about the ffmpeg-devel
mailing list