Audio channel positions. These are the channels defined in SMPTE 2036-2-2008 Table 1 for 22.2 audio systems with the Surround and Wide channels from DTS Coherent Acoustics (v.1.3.1) and 10.2 and 7.1 layouts. In the caps the actual channel layout is expressed with a channel count and a channel mask, which describes the existing channels. The positions in the bit mask correspond to the enum values. For negotiation it is allowed to have more bits set in the channel mask than the number of channels to specify the allowed channel positions but this is not allowed in negotiated caps. It is not allowed in any situation other than the one mentioned below to have less bits set in the channel mask than the number of channels. `AudioChannelPosition::Mono` can only be used with a single mono channel that has no direction information and would be mixed into all directional channels. This is expressed in caps by having a single channel and no channel mask. `AudioChannelPosition::None` can only be used if all channels have this position. This is expressed in caps by having a channel mask with no bits set. As another special case it is allowed to have two channels without a channel mask. This implicitely means that this is a stereo stream with a front left and front right channel. used for position-less channels, e.g. from a sound card that records 1024 channels; mutually exclusive with any other channel position Mono without direction; can only be used with 1 channel invalid position Front left Front right Front center Low-frequency effects 1 (subwoofer) Rear left Rear right Front left of center Front right of center Rear center Low-frequency effects 2 (subwoofer) Side left Side right Top front left Top front right Top front center Top center Top rear left Top rear right Top side right Top rear right Top rear center Bottom front center Bottom front left Bottom front right Wide left (between front left and side left) Wide right (between front right and side right) Surround left (between rear left and side left) Surround right (between rear right and side right) Enum value describing the most common audio formats. unknown or unset audio format encoded audio format 8 bits in 8 bits, signed 8 bits in 8 bits, unsigned 16 bits in 16 bits, signed, little endian 16 bits in 16 bits, signed, big endian 16 bits in 16 bits, unsigned, little endian 16 bits in 16 bits, unsigned, big endian 24 bits in 32 bits, signed, little endian 24 bits in 32 bits, signed, big endian 24 bits in 32 bits, unsigned, little endian 24 bits in 32 bits, unsigned, big endian 32 bits in 32 bits, signed, little endian 32 bits in 32 bits, signed, big endian 32 bits in 32 bits, unsigned, little endian 32 bits in 32 bits, unsigned, big endian 24 bits in 24 bits, signed, little endian 24 bits in 24 bits, signed, big endian 24 bits in 24 bits, unsigned, little endian 24 bits in 24 bits, unsigned, big endian 20 bits in 24 bits, signed, little endian 20 bits in 24 bits, signed, big endian 20 bits in 24 bits, unsigned, little endian 20 bits in 24 bits, unsigned, big endian 18 bits in 24 bits, signed, little endian 18 bits in 24 bits, signed, big endian 18 bits in 24 bits, unsigned, little endian 18 bits in 24 bits, unsigned, big endian 32-bit floating point samples, little endian 32-bit floating point samples, big endian 64-bit floating point samples, little endian 64-bit floating point samples, big endian 16 bits in 16 bits, signed, native endianness 16 bits in 16 bits, unsigned, native endianness 24 bits in 32 bits, signed, native endianness 24 bits in 32 bits, unsigned, native endianness 32 bits in 32 bits, signed, native endianness 32 bits in 32 bits, unsigned, native endianness 24 bits in 24 bits, signed, native endianness 24 bits in 24 bits, unsigned, native endianness 20 bits in 24 bits, signed, native endianness 20 bits in 24 bits, unsigned, native endianness 18 bits in 24 bits, signed, native endianness 18 bits in 24 bits, unsigned, native endianness 32-bit floating point samples, native endianness 64-bit floating point samples, native endianness Information for an audio format. Information describing audio properties. This information can be filled in from GstCaps with `AudioInfo::from_caps`. Use the provided macros to access the info in this structure. Allocate a new `AudioInfo` that is also initialized with `AudioInfo::init`. # Returns a new `AudioInfo`. free with `AudioInfo::free`. Converts among various `gst::Format` types. This function handles GST_FORMAT_BYTES, GST_FORMAT_TIME, and GST_FORMAT_DEFAULT. For raw audio, GST_FORMAT_DEFAULT corresponds to audio frames. This function can be used to handle pad queries of the type GST_QUERY_CONVERT. ## `src_fmt` `gst::Format` of the `src_val` ## `src_val` value to convert ## `dest_fmt` `gst::Format` of the `dest_val` ## `dest_val` pointer to destination value # Returns TRUE if the conversion was successful. Copy a GstAudioInfo structure. # Returns a new `AudioInfo`. free with gst_audio_info_free. Free a GstAudioInfo structure previously allocated with `AudioInfo::new` or `AudioInfo::copy`. Parse `caps` and update `self`. ## `caps` a `gst::Caps` # Returns TRUE if `caps` could be parsed Initialize `self` with default values. Compares two `AudioInfo` and returns whether they are equal or not ## `other` a `AudioInfo` # Returns `true` if `self` and `other` are equal, else `false`. Set the default info for the audio info of `format` and `rate` and `channels`. Note: This initializes `self` first, no values are preserved. ## `format` the format ## `rate` the samplerate ## `channels` the number of channels ## `position` the channel positions Convert the values of `self` into a `gst::Caps`. # Returns the new `gst::Caps` containing the info of `self`. Layout of the audio samples for the different channels. interleaved audio non-interleaved audio