FFmpeg
Data Fields

A layer defining a Channel Layout in the Audio Element. More...

#include <iamf.h>

Data Fields

const AVClassav_class
 
AVChannelLayout ch_layout
 
unsigned int flags
 A bitmask which may contain a combination of AV_IAMF_LAYER_FLAG_* flags. More...
 
unsigned int output_gain_flags
 Output gain channel flags as defined in section 3.6.2 of IAMF. More...
 
AVRational output_gain
 Output gain as defined in section 3.6.2 of IAMF. More...
 
enum AVIAMFAmbisonicsMode ambisonics_mode
 Ambisonics mode as defined in section 3.6.3 of IAMF. More...
 
AVRationaldemixing_matrix
 Demixing matrix as defined in section 3.6.3 of IAMF. More...
 
unsigned int nb_demixing_matrix
 The length of the Demixing matrix array. More...
 

Detailed Description

A layer defining a Channel Layout in the Audio Element.

When the parent's Audio Element type is AV_IAMF_AUDIO_ELEMENT_TYPE_CHANNEL, this corresponds to an Scalable Channel Layout layer as defined in section 3.6.2 of IAMF. For AV_IAMF_AUDIO_ELEMENT_TYPE_SCENE, it is an Ambisonics channel layout as defined in section 3.6.3 of IAMF.

Note
The struct should be allocated with av_iamf_audio_element_add_layer() and its size is not a part of the public ABI.

Definition at line 294 of file iamf.h.

Field Documentation

◆ av_class

const AVClass* AVIAMFLayer::av_class

Definition at line 295 of file iamf.h.

◆ ch_layout

AVChannelLayout AVIAMFLayer::ch_layout

◆ flags

unsigned int AVIAMFLayer::flags

A bitmask which may contain a combination of AV_IAMF_LAYER_FLAG_* flags.

Definition at line 302 of file iamf.h.

Referenced by parameter_block_obu(), scalable_channel_layout_config(), and write_parameter_block().

◆ output_gain_flags

unsigned int AVIAMFLayer::output_gain_flags

Output gain channel flags as defined in section 3.6.2 of IAMF.

This field is defined only if the parent's Audio Element type is AV_IAMF_AUDIO_ELEMENT_TYPE_CHANNEL, must be 0 otherwise.

Definition at line 310 of file iamf.h.

Referenced by print_iamf_audio_element_params(), and scalable_channel_layout_config().

◆ output_gain

AVRational AVIAMFLayer::output_gain

Output gain as defined in section 3.6.2 of IAMF.

Must be 0 if output_gain_flags is 0.

Definition at line 316 of file iamf.h.

Referenced by print_iamf_audio_element_params(), and scalable_channel_layout_config().

◆ ambisonics_mode

enum AVIAMFAmbisonicsMode AVIAMFLayer::ambisonics_mode

Ambisonics mode as defined in section 3.6.3 of IAMF.

This field is defined only if the parent's Audio Element type is AV_IAMF_AUDIO_ELEMENT_TYPE_SCENE.

If AV_IAMF_AMBISONICS_MODE_MONO, channel_mapping is defined implicitly (Ambisonic Order) or explicitly (Custom Order with ambi channels) in ch_layout. If AV_IAMF_AMBISONICS_MODE_PROJECTION, demixing_matrix must be set.

Definition at line 328 of file iamf.h.

Referenced by ambisonics_config(), ff_iamf_add_audio_element(), and print_iamf_audio_element_params().

◆ demixing_matrix

AVRational* AVIAMFLayer::demixing_matrix

Demixing matrix as defined in section 3.6.3 of IAMF.

May be set only if ambisonics_mode == AV_IAMF_AMBISONICS_MODE_PROJECTION, must be NULL otherwise.

Definition at line 336 of file iamf.h.

Referenced by ambisonics_config(), av_iamf_audio_element_free(), and print_iamf_audio_element_params().

◆ nb_demixing_matrix

unsigned int AVIAMFLayer::nb_demixing_matrix

The length of the Demixing matrix array.

Must be ch_layout.nb_channels multiplied by the sum of the amount of streams in the group plus the amount of streams in the group that are stereo.

Definition at line 343 of file iamf.h.

Referenced by ambisonics_config(), and print_iamf_audio_element_params().


The documentation for this struct was generated from the following file: