25 #ifndef SPA_AUDIO_RAW_H
26 #define SPA_AUDIO_RAW_H
43 #define SPA_AUDIO_MAX_CHANNELS 64u
104 #if __BYTE_ORDER == __BIG_ENDIAN
133 #elif __BYTE_ORDER == __LITTLE_ENDIAN
165 #define SPA_AUDIO_FORMAT_IS_INTERLEAVED(fmt) ((fmt) > SPA_AUDIO_FORMAT_START_Interleaved && (fmt) < SPA_AUDIO_FORMAT_START_Planar)
166 #define SPA_AUDIO_FORMAT_IS_PLANAR(fmt) ((fmt) > SPA_AUDIO_FORMAT_START_Planar && (fmt) < SPA_AUDIO_FORMAT_START_Other)
214 #define SPA_AUDIO_FLAG_NONE (0)
215 #define SPA_AUDIO_FLAG_UNPOSITIONED (1 << 0)
226 #define SPA_AUDIO_INFO_RAW_INIT(...) (struct spa_audio_info_raw) { __VA_ARGS__ }
228 #define SPA_KEY_AUDIO_FORMAT "audio.format"
230 #define SPA_KEY_AUDIO_CHANNEL "audio.channel"
232 #define SPA_KEY_AUDIO_CHANNELS "audio.channels"
233 #define SPA_KEY_AUDIO_RATE "audio.rate"
234 #define SPA_KEY_AUDIO_POSITION "audio.position"
241 #define SPA_AUDIO_INFO_DSP_INIT(...) (struct spa_audio_info_dsp) { __VA_ARGS__ }
spa_audio_channel
Definition: audio/raw.h:168
spa_audio_format
Definition: audio/raw.h:45
#define SPA_AUDIO_MAX_CHANNELS
Definition: audio/raw.h:43
@ SPA_AUDIO_CHANNEL_BC
bottom center
Definition: audio/raw.h:206
@ SPA_AUDIO_CHANNEL_FC
front center
Definition: audio/raw.h:176
@ SPA_AUDIO_CHANNEL_FLW
front left wide
Definition: audio/raw.h:194
@ SPA_AUDIO_CHANNEL_FLC
front left center
Definition: audio/raw.h:180
@ SPA_AUDIO_CHANNEL_TFLC
top front left center
Definition: audio/raw.h:200
@ SPA_AUDIO_CHANNEL_TFRC
top front right center
Definition: audio/raw.h:201
@ SPA_AUDIO_CHANNEL_BRC
bottom right center
Definition: audio/raw.h:208
@ SPA_AUDIO_CHANNEL_FR
front right
Definition: audio/raw.h:175
@ SPA_AUDIO_CHANNEL_RLFE
right LFE
Definition: audio/raw.h:205
@ SPA_AUDIO_CHANNEL_CUSTOM_START
Definition: audio/raw.h:210
@ SPA_AUDIO_CHANNEL_BLC
bottom left center
Definition: audio/raw.h:207
@ SPA_AUDIO_CHANNEL_TRC
top rear center
Definition: audio/raw.h:190
@ SPA_AUDIO_CHANNEL_TFC
top front center
Definition: audio/raw.h:187
@ SPA_AUDIO_CHANNEL_TFR
top front right
Definition: audio/raw.h:188
@ SPA_AUDIO_CHANNEL_RLC
rear left center
Definition: audio/raw.h:192
@ SPA_AUDIO_CHANNEL_LFE2
LFE 2.
Definition: audio/raw.h:196
@ SPA_AUDIO_CHANNEL_RR
rear right
Definition: audio/raw.h:184
@ SPA_AUDIO_CHANNEL_TRL
top rear left
Definition: audio/raw.h:189
@ SPA_AUDIO_CHANNEL_LLFE
left LFE
Definition: audio/raw.h:204
@ SPA_AUDIO_CHANNEL_TRR
top rear right
Definition: audio/raw.h:191
@ SPA_AUDIO_CHANNEL_UNKNOWN
unspecified
Definition: audio/raw.h:169
@ SPA_AUDIO_CHANNEL_RL
rear left
Definition: audio/raw.h:183
@ SPA_AUDIO_CHANNEL_NA
N/A, silent.
Definition: audio/raw.h:170
@ SPA_AUDIO_CHANNEL_TSL
top side left
Definition: audio/raw.h:202
@ SPA_AUDIO_CHANNEL_LFE
LFE.
Definition: audio/raw.h:177
@ SPA_AUDIO_CHANNEL_SR
side right
Definition: audio/raw.h:179
@ SPA_AUDIO_CHANNEL_FCH
front center high
Definition: audio/raw.h:198
@ SPA_AUDIO_CHANNEL_TSR
top side right
Definition: audio/raw.h:203
@ SPA_AUDIO_CHANNEL_TFL
top front left
Definition: audio/raw.h:186
@ SPA_AUDIO_CHANNEL_TC
top center
Definition: audio/raw.h:185
@ SPA_AUDIO_CHANNEL_FRC
front right center
Definition: audio/raw.h:181
@ SPA_AUDIO_CHANNEL_RC
rear center
Definition: audio/raw.h:182
@ SPA_AUDIO_CHANNEL_FL
front left
Definition: audio/raw.h:174
@ SPA_AUDIO_CHANNEL_MONO
mono stream
Definition: audio/raw.h:172
@ SPA_AUDIO_CHANNEL_FLH
front left high
Definition: audio/raw.h:197
@ SPA_AUDIO_CHANNEL_FRW
front right wide
Definition: audio/raw.h:195
@ SPA_AUDIO_CHANNEL_RRC
rear right center
Definition: audio/raw.h:193
@ SPA_AUDIO_CHANNEL_SL
side left
Definition: audio/raw.h:178
@ SPA_AUDIO_CHANNEL_FRH
front right high
Definition: audio/raw.h:199
@ SPA_AUDIO_FORMAT_S32
Definition: audio/raw.h:109
@ SPA_AUDIO_FORMAT_F64_LE
Definition: audio/raw.h:79
@ SPA_AUDIO_FORMAT_U16_OE
Definition: audio/raw.h:120
@ SPA_AUDIO_FORMAT_F32_OE
Definition: audio/raw.h:131
@ SPA_AUDIO_FORMAT_U16_BE
Definition: audio/raw.h:56
@ SPA_AUDIO_FORMAT_S16P
Definition: audio/raw.h:85
@ SPA_AUDIO_FORMAT_U20_OE
Definition: audio/raw.h:128
@ SPA_AUDIO_FORMAT_U24_32_BE
Definition: audio/raw.h:60
@ SPA_AUDIO_FORMAT_U24_32
Definition: audio/raw.h:108
@ SPA_AUDIO_FORMAT_U24_OE
Definition: audio/raw.h:126
@ SPA_AUDIO_FORMAT_U18_LE
Definition: audio/raw.h:75
@ SPA_AUDIO_FORMAT_S18_LE
Definition: audio/raw.h:73
@ SPA_AUDIO_FORMAT_U32_BE
Definition: audio/raw.h:64
@ SPA_AUDIO_FORMAT_U32_LE
Definition: audio/raw.h:63
@ SPA_AUDIO_FORMAT_S20
Definition: audio/raw.h:113
@ SPA_AUDIO_FORMAT_S32_BE
Definition: audio/raw.h:62
@ SPA_AUDIO_FORMAT_DSP_F64
Definition: audio/raw.h:101
@ SPA_AUDIO_FORMAT_F32P
Definition: audio/raw.h:89
@ SPA_AUDIO_FORMAT_S24_32_LE
Definition: audio/raw.h:57
@ SPA_AUDIO_FORMAT_S16_LE
Definition: audio/raw.h:53
@ SPA_AUDIO_FORMAT_S18_OE
Definition: audio/raw.h:129
@ SPA_AUDIO_FORMAT_F32_BE
Definition: audio/raw.h:78
@ SPA_AUDIO_FORMAT_F32_LE
Definition: audio/raw.h:77
@ SPA_AUDIO_FORMAT_U18_OE
Definition: audio/raw.h:130
@ SPA_AUDIO_FORMAT_START_Planar
Definition: audio/raw.h:83
@ SPA_AUDIO_FORMAT_START_Interleaved
Definition: audio/raw.h:50
@ SPA_AUDIO_FORMAT_U32
Definition: audio/raw.h:110
@ SPA_AUDIO_FORMAT_S16_OE
Definition: audio/raw.h:119
@ SPA_AUDIO_FORMAT_S32_OE
Definition: audio/raw.h:123
@ SPA_AUDIO_FORMAT_U24_BE
Definition: audio/raw.h:68
@ SPA_AUDIO_FORMAT_U24_LE
Definition: audio/raw.h:67
@ SPA_AUDIO_FORMAT_U18_BE
Definition: audio/raw.h:76
@ SPA_AUDIO_FORMAT_S20_BE
Definition: audio/raw.h:70
@ SPA_AUDIO_FORMAT_U24_32_LE
Definition: audio/raw.h:59
@ SPA_AUDIO_FORMAT_U20_LE
Definition: audio/raw.h:71
@ SPA_AUDIO_FORMAT_S24P
Definition: audio/raw.h:88
@ SPA_AUDIO_FORMAT_S32_LE
Definition: audio/raw.h:61
@ SPA_AUDIO_FORMAT_DSP_F32
Definition: audio/raw.h:100
@ SPA_AUDIO_FORMAT_S24_32P
Definition: audio/raw.h:86
@ SPA_AUDIO_FORMAT_S20_OE
Definition: audio/raw.h:127
@ SPA_AUDIO_FORMAT_S8P
Definition: audio/raw.h:91
@ SPA_AUDIO_FORMAT_U24
Definition: audio/raw.h:112
@ SPA_AUDIO_FORMAT_START_Other
Definition: audio/raw.h:94
@ SPA_AUDIO_FORMAT_UNKNOWN
Definition: audio/raw.h:46
@ SPA_AUDIO_FORMAT_F64_BE
Definition: audio/raw.h:80
@ SPA_AUDIO_FORMAT_F64P
Definition: audio/raw.h:90
@ SPA_AUDIO_FORMAT_U20
Definition: audio/raw.h:114
@ SPA_AUDIO_FORMAT_S8
Definition: audio/raw.h:51
@ SPA_AUDIO_FORMAT_U32_OE
Definition: audio/raw.h:124
@ SPA_AUDIO_FORMAT_U8
Definition: audio/raw.h:52
@ SPA_AUDIO_FORMAT_U16_LE
Definition: audio/raw.h:55
@ SPA_AUDIO_FORMAT_S24_LE
Definition: audio/raw.h:65
@ SPA_AUDIO_FORMAT_DSP_S32
Definition: audio/raw.h:99
@ SPA_AUDIO_FORMAT_U18
Definition: audio/raw.h:116
@ SPA_AUDIO_FORMAT_U20_BE
Definition: audio/raw.h:72
@ SPA_AUDIO_FORMAT_S24
Definition: audio/raw.h:111
@ SPA_AUDIO_FORMAT_ENCODED
Definition: audio/raw.h:47
@ SPA_AUDIO_FORMAT_S16_BE
Definition: audio/raw.h:54
@ SPA_AUDIO_FORMAT_S24_BE
Definition: audio/raw.h:66
@ SPA_AUDIO_FORMAT_U8P
Definition: audio/raw.h:84
@ SPA_AUDIO_FORMAT_S32P
Definition: audio/raw.h:87
@ SPA_AUDIO_FORMAT_S24_32_OE
Definition: audio/raw.h:121
@ SPA_AUDIO_FORMAT_U24_32_OE
Definition: audio/raw.h:122
@ SPA_AUDIO_FORMAT_S24_32_BE
Definition: audio/raw.h:58
@ SPA_AUDIO_FORMAT_S16
Definition: audio/raw.h:105
@ SPA_AUDIO_FORMAT_S24_32
Definition: audio/raw.h:107
@ SPA_AUDIO_FORMAT_F64
Definition: audio/raw.h:118
@ SPA_AUDIO_FORMAT_F32
Definition: audio/raw.h:117
@ SPA_AUDIO_FORMAT_S20_LE
Definition: audio/raw.h:69
@ SPA_AUDIO_FORMAT_S18
Definition: audio/raw.h:115
@ SPA_AUDIO_FORMAT_F64_OE
Definition: audio/raw.h:132
@ SPA_AUDIO_FORMAT_S18_BE
Definition: audio/raw.h:74
@ SPA_AUDIO_FORMAT_S24_OE
Definition: audio/raw.h:125
@ SPA_AUDIO_FORMAT_U16
Definition: audio/raw.h:106
Definition: audio/raw.h:236
enum spa_audio_format format
Definition: audio/raw.h:237
Audio information description.
Definition: audio/raw.h:217
enum spa_audio_format format
Definition: audio/raw.h:218
uint32_t channels
Definition: audio/raw.h:221
uint32_t flags
Definition: audio/raw.h:219
uint32_t position[SPA_AUDIO_MAX_CHANNELS]
Definition: audio/raw.h:222
uint32_t rate
Definition: audio/raw.h:220