Loading...
Searching...
No Matches
AVIAMFLayer Struct Reference
libavutil » Audio related » Immersive Audio Model and Formats » Audio Element

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

`#include <libavutil/iamf.h>`

## Data Fields

const AVClass * | av_class
AVChannelLayout | ch_layout
unsigned int | flags
| A bitmask which may contain a combination of AV_IAMF_LAYER_FLAG_* flags.
unsigned int | output_gain_flags
| Output gain channel flags as defined in section 3.6.2 of IAMF.
AVRational | output_gain
| Output gain as defined in section 3.6.2 of IAMF.
enum AVIAMFAmbisonicsMode | ambisonics_mode
| Ambisonics mode as defined in section 3.6.3 of IAMF.
AVRational * | demixing_matrix
| Demixing matrix as defined in section 3.6.3 of IAMF.

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

Definition at line 297 of file iamf.h.

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

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

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

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

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

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

- libavutil/iamf.h