[FFmpeg-devel] [PATCH 001/279] Add a new channel layout API

Marton Balint cus at passwd.hu
Wed Dec 8 12:06:05 EET 2021



On Wed, 8 Dec 2021, Lynne wrote:

> 8 Dec 2021, 10:22 by h.leppkes at gmail.com:
>
>> On Wed, Dec 8, 2021 at 10:14 AM Lynne <dev at lynne.ee> wrote:
>>
>>>
>>> 8 Dec 2021, 02:06 by jamrial at gmail.com:
>>>
>>>>
>>>> +enum AVChannel {
>>>> +    ///< Invalid channel index
>>>> +    AV_CHAN_NONE = -1,
>>>> +    AV_CHAN_FRONT_LEFT,
>>>>
>>>
>>> No, not the pixfmt mistake again. Set AV_CHAN_NONE to 0,
>>> the rest can follow. Or keep AV_CHAN_NONE to -1
>>> and add a new AV_CHAN_UNSPECIFIED as 0.
>>>
>>
>> Care to elaborate on the reasons of this opinion? Using -1 as invalid
>> and 0...x as valid entries seems quite reasonable to me.
>>
>
> Zero-initialization. I've had issues in the past telling
> YUV420P from <uninitialized>.

It is convenient to be able to set the channel 
layout mask by a simple byte shift of the ID-s.

AV_CH_FRONT_LEFT = 1 << AV_CHAN_FRONT_LEFT.

So I'd say that is the reason that it is designed that way, because this 
way existing channel layout masks can be kept without breaking ABI.

Regards,
Marton


More information about the ffmpeg-devel mailing list