unchanged from previous version
From 85bf92a516779919399979670a185710d4616f6f Mon Sep 17 00:00:00 2001 From: pkviet <pkv.str...@gmail.com> Date: Sun, 16 Sep 2018 01:46:05 +0200 Subject: [PATCH 2/3] avcodec/aacenc: Add PCE support for 11 to 15 channels
This adds supports to 11 to 15 channels through PCE. Signed-off-by: pkviet <pkv.str...@gmail.com> --- libavcodec/aacenc.h | 40 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 40 insertions(+) diff --git a/libavcodec/aacenc.h b/libavcodec/aacenc.h index d970d0af05..14b711f964 100644 --- a/libavcodec/aacenc.h +++ b/libavcodec/aacenc.h @@ -360,6 +360,46 @@ static const AACPCEInfo aac_pce_configs[] = { .config_map = { 6, TYPE_CPE, TYPE_CPE, TYPE_CPE, TYPE_SCE, TYPE_CPE, TYPE_SCE }, .reorder_map = { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 }, }, + { /* Arbitrary layout selected to provide 11 channels; mask = 0x5F37 */ + .layout = AV_CH_LAYOUT_OCTAGONAL | AV_CH_TOP_CENTER | AV_CH_TOP_FRONT_LEFT | AV_CH_TOP_FRONT_RIGHT, + .num_ele = { 4, 2, 1, 0 }, + .pairing = { { 0, 0, 1, 1 }, { 1, 0 }, { 1 }, }, + .index = { { 0, 1, 0, 1 }, { 2, 2 }, { 3 } }, + .config_map = { 7, TYPE_SCE, TYPE_SCE, TYPE_CPE, TYPE_CPE, TYPE_CPE, TYPE_SCE, TYPE_CPE }, + .reorder_map = { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 }, + }, + { /* Arbitrary layout selected to provide 12 channels; mask = 0x7F37 */ + .layout = AV_CH_LAYOUT_OCTAGONAL | AV_CH_TOP_CENTER | AV_CH_TOP_FRONT_LEFT | AV_CH_TOP_FRONT_RIGHT | AV_CH_TOP_FRONT_CENTER, + .num_ele = { 4, 2, 2, 0 }, + .pairing = { { 0, 0, 1, 1 }, { 1, 0 }, { 1, 0 }, }, + .index = { { 0, 1, 0, 1 }, { 2, 2 }, { 3, 3 } }, + .config_map = { 8, TYPE_SCE, TYPE_SCE, TYPE_CPE, TYPE_CPE, TYPE_CPE, TYPE_SCE, TYPE_CPE, TYPE_SCE }, + .reorder_map = { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11 }, + }, + { /* Arbitrary layout selected to provide 13 channels; mask = 0x17F37 */ + .layout = AV_CH_LAYOUT_OCTAGONAL | AV_CH_TOP_CENTER | AV_CH_TOP_FRONT_LEFT | AV_CH_TOP_FRONT_RIGHT | AV_CH_TOP_FRONT_CENTER | AV_CH_TOP_BACK_CENTER, + .num_ele = { 3, 2, 2, 0 }, + .pairing = { { 0, 1, 1 }, { 1, 1 }, { 1, 1 }, }, + .index = { { 0, 0, 1 }, { 2, 3 }, { 4, 5 } }, + .config_map = { 7, TYPE_SCE, TYPE_CPE, TYPE_CPE, TYPE_CPE, TYPE_CPE, TYPE_CPE, TYPE_CPE }, + .reorder_map = { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12 }, + }, + { /* Arbitrary layout selected to provide 14 channels; mask = 0x2FF37 */ + .layout = AV_CH_LAYOUT_OCTAGONAL | AV_CH_TOP_CENTER | AV_CH_TOP_FRONT_LEFT | AV_CH_TOP_FRONT_RIGHT | AV_CH_TOP_FRONT_CENTER | AV_CH_TOP_BACK_LEFT | AV_CH_TOP_BACK_RIGHT, + .num_ele = { 4, 2, 2, 0 }, + .pairing = { { 0, 0, 1, 1 }, { 1, 1 }, { 1, 1 }, }, + .index = { { 0, 1, 0, 1 }, { 2, 3 }, { 4, 5 } }, + .config_map = { 8, TYPE_SCE, TYPE_SCE, TYPE_CPE, TYPE_CPE, TYPE_CPE, TYPE_CPE, TYPE_CPE, TYPE_CPE }, + .reorder_map = { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13 }, + }, + { /* Arbitrary layout selected to provide 15 channels; mask = 0x3FF37 */ + .layout = AV_CH_LAYOUT_OCTAGONAL | AV_CH_TOP_CENTER | AV_CH_TOP_FRONT_LEFT | AV_CH_TOP_FRONT_RIGHT | AV_CH_TOP_FRONT_CENTER | AV_CH_TOP_BACK_CENTER | AV_CH_TOP_BACK_LEFT | AV_CH_TOP_BACK_RIGHT , + .num_ele = { 4, 2, 3, 0 }, + .pairing = { { 0, 0, 1, 1 }, { 1, 1 }, { 1, 1, 0 }, }, + .index = { { 0, 1, 0, 1 }, { 2, 3 }, { 4, 5, 2 } }, + .config_map = { 9, TYPE_SCE, TYPE_SCE, TYPE_CPE, TYPE_CPE, TYPE_CPE, TYPE_CPE, TYPE_CPE, TYPE_CPE, TYPE_SCE }, + .reorder_map = { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14 }, + }, { .layout = AV_CH_LAYOUT_HEXADECAGONAL, .num_ele = { 4, 2, 4, 0 }, -- 2.16.2.windows.1
_______________________________________________ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-devel