[FFmpeg-devel] [PATCH 1/2] avutil/channel_layout: add Binaural channels and layout

James Almer jamrial at gmail.com
Thu Oct 31 21:11:37 EET 2024


On 10/31/2024 3:53 PM, Marton Balint wrote:
> 
> 
> On Sun, 27 Oct 2024, James Almer wrote:
> 
>> Signed-off-by: James Almer <jamrial at gmail.com>
>> ---
>> doc/utils.texi                | 2 ++
>> libavutil/channel_layout.c    | 3 +++
>> libavutil/channel_layout.h    | 7 +++++++
>> tests/ref/fate/channel_layout | 1 +
>> 4 files changed, 13 insertions(+)
>>
>> diff --git a/doc/utils.texi b/doc/utils.texi
>> index 9968725d2a..eb5ccc8355 100644
>> --- a/doc/utils.texi
>> +++ b/doc/utils.texi
>> @@ -733,6 +733,8 @@ FL+FR+FC+LFE+BL+BR+SL+SR+TFL+TFR+TBC+LFE2
>> FL+FR+FC+LFE+BL+BR+FLC+FRC+SL+SR+TFL+TFR+TBL+TBR
>> @item hexadecagonal
>> FL+FR+FC+BL+BR+BC+SL+SR+WL+WR+TBL+TBR+TBC+TFC+TFL+TFR
>> + at item binaural
>> +BIL+BIR
>> @item downmix
>> DL+DR
>> @item 22.2
>> diff --git a/libavutil/channel_layout.c b/libavutil/channel_layout.c
>> index 2d6963b6df..dd97e167c7 100644
>> --- a/libavutil/channel_layout.c
>> +++ b/libavutil/channel_layout.c
>> @@ -79,6 +79,8 @@ static const struct channel_name channel_names[] = {
>>     [AV_CHAN_SIDE_SURROUND_RIGHT  ] = { "SSR",       "side surround 
>> right"   },
>>     [AV_CHAN_TOP_SURROUND_LEFT    ] = { "TTL",       "top surround 
>> left"     },
>>     [AV_CHAN_TOP_SURROUND_RIGHT   ] = { "TTR",       "top surround 
>> right"    },
>> +    [AV_CHAN_BINAURAL_LEFT        ] = { "BIL",       "binaural 
>> left"         },
>> +    [AV_CHAN_BINAURAL_RIGHT       ] = { "BIR",       "binaural 
>> right"        },
>> };
>>
>> void av_channel_name_bprint(AVBPrint *bp, enum AVChannel channel_id)
>> @@ -220,6 +222,7 @@ static const struct channel_layout_name 
>> channel_layout_map[] = {
>>     { "7.2.3",          AV_CHANNEL_LAYOUT_7POINT2POINT3       },
>>     { "9.1.4",          AV_CHANNEL_LAYOUT_9POINT1POINT4_BACK  },
>>     { "hexadecagonal",  AV_CHANNEL_LAYOUT_HEXADECAGONAL       },
>> +    { "binaural",       AV_CHANNEL_LAYOUT_BINAURAL            },
>>     { "downmix",        AV_CHANNEL_LAYOUT_STEREO_DOWNMIX,     },
>>     { "22.2",           AV_CHANNEL_LAYOUT_22POINT2,           },
>> };
>> diff --git a/libavutil/channel_layout.h b/libavutil/channel_layout.h
>> index 3a96c2d9b8..23fbc90606 100644
>> --- a/libavutil/channel_layout.h
>> +++ b/libavutil/channel_layout.h
>> @@ -84,6 +84,9 @@ enum AVChannel {
>>     AV_CHAN_TOP_SURROUND_LEFT,      ///< +110 degrees, Lvs, TpLS
>>     AV_CHAN_TOP_SURROUND_RIGHT,     ///< -110 degrees, Rvs, TpRS
>>
>> +    AV_CHAN_BINAURAL_LEFT = 61,
>> +    AV_CHAN_BINAURAL_RIGHT,
> 
> Why 61 instead of simply continuing the enum?

There are other "standard" speaker location channels not yet added, like 
more bottom height ones, and I'd rather have them next to the rest once 
added.

> 
> Thanks,
> Marton
> _______________________________________________
> ffmpeg-devel mailing list
> ffmpeg-devel at ffmpeg.org
> https://ffmpeg.org/mailman/listinfo/ffmpeg-devel
> 
> To unsubscribe, visit link above, or email
> ffmpeg-devel-request at ffmpeg.org with subject "unsubscribe".

-------------- next part --------------
A non-text attachment was scrubbed...
Name: OpenPGP_signature.asc
Type: application/pgp-signature
Size: 495 bytes
Desc: OpenPGP digital signature
URL: <https://ffmpeg.org/pipermail/ffmpeg-devel/attachments/20241031/e152c0c8/attachment.sig>


More information about the ffmpeg-devel mailing list