FFmpeg
Data Fields
AVIAMFLayer Struct Reference

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...
 

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 285 of file iamf.h.

Field Documentation

◆ av_class

const AVClass* AVIAMFLayer::av_class

Definition at line 286 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 293 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 301 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 307 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 319 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.

The length of the array is 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.

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

Definition at line 331 of file iamf.h.

Referenced by ambisonics_config(), and av_iamf_audio_element_free().


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