#[repr(C)]
pub union AVChannelLayout__bindgen_ty_1 {
pub mask: u64,
pub map: *mut AVChannelCustom,
}
Expand description
Details about which channels are present in this layout. For AV_CHANNEL_ORDER_UNSPEC, this field is undefined and must not be used.
Fields§
§mask: u64
This member must be used for AV_CHANNEL_ORDER_NATIVE, and may be used for AV_CHANNEL_ORDER_AMBISONIC to signal non-diegetic channels. It is a bitmask, where the position of each set bit means that the AVChannel with the corresponding value is present.
I.e. when (mask & (1 << AV_CHAN_FOO)) is non-zero, then AV_CHAN_FOO is present in the layout. Otherwise it is not present.
@note when a channel layout using a bitmask is constructed or modified manually (i.e. not using any of the av_channel_layout_* functions), the code doing it must ensure that the number of set bits is equal to nb_channels.
map: *mut AVChannelCustom
This member must be used when the channel order is AV_CHANNEL_ORDER_CUSTOM. It is a nb_channels-sized array, with each element signalling the presence of the AVChannel with the corresponding value in map[i].id.
I.e. when map[i].id is equal to AV_CHAN_FOO, then AV_CH_FOO is the i-th channel in the audio data.
When map[i].id is in the range between AV_CHAN_AMBISONIC_BASE and AV_CHAN_AMBISONIC_END (inclusive), the channel contains an ambisonic component with ACN index (as defined above) n = map[i].id - AV_CHAN_AMBISONIC_BASE.
map[i].name may be filled with a 0-terminated string, in which case it will be used for the purpose of identifying the channel with the convenience functions below. Otherise it must be zeroed.
Trait Implementations§
Source§impl Clone for AVChannelLayout__bindgen_ty_1
impl Clone for AVChannelLayout__bindgen_ty_1
Source§fn clone(&self) -> AVChannelLayout__bindgen_ty_1
fn clone(&self) -> AVChannelLayout__bindgen_ty_1
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read more