1
0
mirror of https://github.com/FFmpeg/FFmpeg.git synced 2025-06-30 22:24:04 +02:00

avcodec/libfdk-aacenc: add support for 7.1(top) channel layout

Signed-off-by: James Almer <jamrial@gmail.com>
This commit is contained in:
James Almer
2022-11-27 19:08:49 -03:00
parent 9d8d7bdffb
commit bb45f41a6b

View File

@ -195,6 +195,8 @@ static av_cold int aac_encode_init(AVCodecContext *avctx)
cpe = 3; cpe = 3;
if (!av_channel_layout_compare(&avctx->ch_layout, &(AVChannelLayout)AV_CHANNEL_LAYOUT_7POINT1)) { if (!av_channel_layout_compare(&avctx->ch_layout, &(AVChannelLayout)AV_CHANNEL_LAYOUT_7POINT1)) {
mode = MODE_7_1_REAR_SURROUND; mode = MODE_7_1_REAR_SURROUND;
} else if (!av_channel_layout_compare(&avctx->ch_layout, &(AVChannelLayout)AV_CHANNEL_LAYOUT_7POINT1_TOP_BACK)) {
mode = MODE_7_1_TOP_FRONT;
} else { } else {
// MODE_1_2_2_2_1 and MODE_7_1_FRONT_CENTER use the same channel layout // MODE_1_2_2_2_1 and MODE_7_1_FRONT_CENTER use the same channel layout
mode = MODE_7_1_FRONT_CENTER; mode = MODE_7_1_FRONT_CENTER;
@ -451,6 +453,7 @@ static const uint64_t aac_channel_layout[] = {
#if FDKENC_VER_AT_LEAST(3, 4) // 3.4.12 #if FDKENC_VER_AT_LEAST(3, 4) // 3.4.12
AV_CH_LAYOUT_7POINT1_WIDE_BACK, AV_CH_LAYOUT_7POINT1_WIDE_BACK,
AV_CH_LAYOUT_7POINT1, AV_CH_LAYOUT_7POINT1,
AV_CH_LAYOUT_7POINT1_TOP_BACK,
#endif #endif
0, 0,
}; };
@ -466,6 +469,7 @@ static const AVChannelLayout aac_ch_layouts[16] = {
#ifdef AACENCODER_LIB_VL0 #ifdef AACENCODER_LIB_VL0
AV_CHANNEL_LAYOUT_7POINT1_WIDE_BACK, AV_CHANNEL_LAYOUT_7POINT1_WIDE_BACK,
AV_CHANNEL_LAYOUT_7POINT1, AV_CHANNEL_LAYOUT_7POINT1,
AV_CHANNEL_LAYOUT_7POINT1_TOP_BACK,
#endif #endif
{ 0 }, { 0 },
}; };