PipeWire  0.3.40
type-info.h
Go to the documentation of this file.
1 /* Simple Plugin API
2  *
3  * Copyright © 2018 Wim Taymans
4  *
5  * Permission is hereby granted, free of charge, to any person obtaining a
6  * copy of this software and associated documentation files (the "Software"),
7  * to deal in the Software without restriction, including without limitation
8  * the rights to use, copy, modify, merge, publish, distribute, sublicense,
9  * and/or sell copies of the Software, and to permit persons to whom the
10  * Software is furnished to do so, subject to the following conditions:
11  *
12  * The above copyright notice and this permission notice (including the next
13  * paragraph) shall be included in all copies or substantial portions of the
14  * Software.
15  *
16  * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
17  * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
18  * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
19  * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
20  * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
21  * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
22  * DEALINGS IN THE SOFTWARE.
23  */
24 
25 #ifndef SPA_AUDIO_TYPES_H
26 #define SPA_AUDIO_TYPES_H
27 
28 #ifdef __cplusplus
29 extern "C" {
30 #endif
31 
37 #include <spa/param/audio/raw.h>
38 
39 #define SPA_TYPE_INFO_AudioFormat SPA_TYPE_INFO_ENUM_BASE "AudioFormat"
40 #define SPA_TYPE_INFO_AUDIO_FORMAT_BASE SPA_TYPE_INFO_AudioFormat ":"
41 
42 static const struct spa_type_info spa_type_audio_format[] = {
75 
78 
87 
88 #if __BYTE_ORDER == __BIG_ENDIAN
117 #elif __BYTE_ORDER == __LITTLE_ENDIAN
146 #endif
147  { 0, 0, NULL, NULL },
148 };
149 
150 #define SPA_TYPE_INFO_AudioFlags SPA_TYPE_INFO_FLAGS_BASE "AudioFlags"
151 #define SPA_TYPE_INFO_AUDIO_FLAGS_BASE SPA_TYPE_INFO_AudioFlags ":"
152 
153 static const struct spa_type_info spa_type_audio_flags[] = {
156  { 0, 0, NULL, NULL },
157 };
158 
159 #define SPA_TYPE_INFO_AudioChannel SPA_TYPE_INFO_ENUM_BASE "AudioChannel"
160 #define SPA_TYPE_INFO_AUDIO_CHANNEL_BASE SPA_TYPE_INFO_AudioChannel ":"
161 
162 static const struct spa_type_info spa_type_audio_channel[] = {
201 
266  { 0, 0, NULL, NULL },
267 };
268 
269 
270 #include <spa/param/audio/iec958.h>
271 
272 #define SPA_TYPE_INFO_AudioIEC958Codec SPA_TYPE_INFO_ENUM_BASE "AudioIEC958Codec"
273 #define SPA_TYPE_INFO_AUDIO_IEC958_CODEC_BASE SPA_TYPE_INFO_AudioIEC958Codec ":"
274 
275 static const struct spa_type_info spa_type_audio_iec958_codec[] = {
285  { 0, 0, NULL, NULL },
286 };
287 
292 #ifdef __cplusplus
293 } /* extern "C" */
294 #endif
295 
296 #endif /* SPA_AUDIO_RAW_TYPES_H */
spa/param/audio/raw.h
static const struct spa_type_info spa_type_audio_format[]
Definition: type-info.h:49
#define SPA_TYPE_INFO_AUDIO_FORMAT_BASE
Definition: type-info.h:47
#define SPA_AUDIO_FLAG_UNPOSITIONED
Definition: raw.h:296
static const struct spa_type_info spa_type_audio_flags[]
Definition: type-info.h:162
#define SPA_TYPE_INFO_AUDIO_CHANNEL_BASE
Definition: type-info.h:171
static const struct spa_type_info spa_type_audio_channel[]
Definition: type-info.h:173
#define SPA_TYPE_INFO_AUDIO_FLAGS_BASE
Definition: type-info.h:160
#define SPA_AUDIO_FLAG_NONE
Extra audio flags.
Definition: raw.h:294
static const struct spa_type_info spa_type_audio_iec958_codec[]
Definition: type-info.h:288
#define SPA_TYPE_INFO_AUDIO_IEC958_CODEC_BASE
Definition: type-info.h:286
@ SPA_AUDIO_IEC958_CODEC_MPEG2_AAC
MPEG-2 AAC.
Definition: iec958.h:50
@ SPA_AUDIO_IEC958_CODEC_AC3
Definition: iec958.h:48
@ SPA_AUDIO_IEC958_CODEC_UNKNOWN
Definition: iec958.h:44
@ SPA_AUDIO_IEC958_CODEC_MPEG
MPEG-1 or MPEG-2 (Part 3, not AAC)
Definition: iec958.h:49
@ SPA_AUDIO_IEC958_CODEC_DTSHD
DTS-HD Master Audio.
Definition: iec958.h:55
@ SPA_AUDIO_IEC958_CODEC_EAC3
Definition: iec958.h:52
@ SPA_AUDIO_IEC958_CODEC_TRUEHD
Dolby TrueHD.
Definition: iec958.h:54
@ SPA_AUDIO_IEC958_CODEC_PCM
Definition: iec958.h:46
@ SPA_AUDIO_IEC958_CODEC_DTS
Definition: iec958.h:47
@ SPA_AUDIO_CHANNEL_AUX5
Definition: raw.h:227
@ SPA_AUDIO_CHANNEL_BC
bottom center
Definition: raw.h:217
@ SPA_AUDIO_CHANNEL_FC
front center
Definition: raw.h:187
@ SPA_AUDIO_CHANNEL_AUX62
Definition: raw.h:284
@ SPA_AUDIO_CHANNEL_FLW
front left wide
Definition: raw.h:205
@ SPA_AUDIO_CHANNEL_AUX17
Definition: raw.h:239
@ SPA_AUDIO_CHANNEL_AUX31
Definition: raw.h:253
@ SPA_AUDIO_CHANNEL_FLC
front left center
Definition: raw.h:191
@ SPA_AUDIO_CHANNEL_AUX42
Definition: raw.h:264
@ SPA_AUDIO_CHANNEL_TFLC
top front left center
Definition: raw.h:211
@ SPA_AUDIO_CHANNEL_TFRC
top front right center
Definition: raw.h:212
@ SPA_AUDIO_CHANNEL_AUX0
Definition: raw.h:222
@ SPA_AUDIO_CHANNEL_AUX25
Definition: raw.h:247
@ SPA_AUDIO_CHANNEL_AUX27
Definition: raw.h:249
@ SPA_AUDIO_CHANNEL_AUX60
Definition: raw.h:282
@ SPA_AUDIO_CHANNEL_BRC
bottom right center
Definition: raw.h:219
@ SPA_AUDIO_CHANNEL_AUX50
Definition: raw.h:272
@ SPA_AUDIO_CHANNEL_AUX63
Definition: raw.h:285
@ SPA_AUDIO_CHANNEL_AUX53
Definition: raw.h:275
@ SPA_AUDIO_CHANNEL_AUX34
Definition: raw.h:256
@ SPA_AUDIO_CHANNEL_AUX3
Definition: raw.h:225
@ SPA_AUDIO_CHANNEL_FR
front right
Definition: raw.h:186
@ SPA_AUDIO_CHANNEL_AUX43
Definition: raw.h:265
@ SPA_AUDIO_CHANNEL_AUX46
Definition: raw.h:268
@ SPA_AUDIO_CHANNEL_AUX57
Definition: raw.h:279
@ SPA_AUDIO_CHANNEL_RLFE
right LFE
Definition: raw.h:216
@ SPA_AUDIO_CHANNEL_AUX56
Definition: raw.h:278
@ SPA_AUDIO_CHANNEL_AUX52
Definition: raw.h:274
@ SPA_AUDIO_CHANNEL_AUX10
Definition: raw.h:232
@ SPA_AUDIO_CHANNEL_AUX33
Definition: raw.h:255
@ SPA_AUDIO_CHANNEL_AUX12
Definition: raw.h:234
@ SPA_AUDIO_CHANNEL_BLC
bottom left center
Definition: raw.h:218
@ SPA_AUDIO_CHANNEL_AUX6
Definition: raw.h:228
@ SPA_AUDIO_CHANNEL_AUX23
Definition: raw.h:245
@ SPA_AUDIO_CHANNEL_TRC
top rear center
Definition: raw.h:201
@ SPA_AUDIO_CHANNEL_AUX48
Definition: raw.h:270
@ SPA_AUDIO_CHANNEL_AUX13
Definition: raw.h:235
@ SPA_AUDIO_CHANNEL_TFC
top front center
Definition: raw.h:198
@ SPA_AUDIO_CHANNEL_TFR
top front right
Definition: raw.h:199
@ SPA_AUDIO_CHANNEL_AUX61
Definition: raw.h:283
@ SPA_AUDIO_CHANNEL_AUX28
Definition: raw.h:250
@ SPA_AUDIO_CHANNEL_AUX30
Definition: raw.h:252
@ SPA_AUDIO_CHANNEL_RLC
rear left center
Definition: raw.h:203
@ SPA_AUDIO_CHANNEL_LFE2
LFE 2.
Definition: raw.h:207
@ SPA_AUDIO_CHANNEL_AUX35
Definition: raw.h:257
@ SPA_AUDIO_CHANNEL_AUX2
Definition: raw.h:224
@ SPA_AUDIO_CHANNEL_RR
rear right
Definition: raw.h:195
@ SPA_AUDIO_CHANNEL_TRL
top rear left
Definition: raw.h:200
@ SPA_AUDIO_CHANNEL_AUX7
Definition: raw.h:229
@ SPA_AUDIO_CHANNEL_AUX44
Definition: raw.h:266
@ SPA_AUDIO_CHANNEL_LLFE
left LFE
Definition: raw.h:215
@ SPA_AUDIO_CHANNEL_AUX41
Definition: raw.h:263
@ SPA_AUDIO_CHANNEL_AUX8
Definition: raw.h:230
@ SPA_AUDIO_CHANNEL_AUX39
Definition: raw.h:261
@ SPA_AUDIO_CHANNEL_AUX54
Definition: raw.h:276
@ SPA_AUDIO_CHANNEL_AUX19
Definition: raw.h:241
@ SPA_AUDIO_CHANNEL_AUX59
Definition: raw.h:281
@ SPA_AUDIO_CHANNEL_TRR
top rear right
Definition: raw.h:202
@ SPA_AUDIO_CHANNEL_UNKNOWN
unspecified
Definition: raw.h:180
@ SPA_AUDIO_CHANNEL_RL
rear left
Definition: raw.h:194
@ SPA_AUDIO_CHANNEL_AUX37
Definition: raw.h:259
@ SPA_AUDIO_CHANNEL_AUX21
Definition: raw.h:243
@ SPA_AUDIO_CHANNEL_AUX38
Definition: raw.h:260
@ SPA_AUDIO_CHANNEL_AUX58
Definition: raw.h:280
@ SPA_AUDIO_CHANNEL_AUX4
Definition: raw.h:226
@ SPA_AUDIO_CHANNEL_NA
N/A, silent.
Definition: raw.h:181
@ SPA_AUDIO_CHANNEL_TSL
top side left
Definition: raw.h:213
@ SPA_AUDIO_CHANNEL_LFE
LFE.
Definition: raw.h:188
@ SPA_AUDIO_CHANNEL_SR
side right
Definition: raw.h:190
@ SPA_AUDIO_CHANNEL_FCH
front center high
Definition: raw.h:209
@ SPA_AUDIO_CHANNEL_AUX45
Definition: raw.h:267
@ SPA_AUDIO_CHANNEL_TSR
top side right
Definition: raw.h:214
@ SPA_AUDIO_CHANNEL_TFL
top front left
Definition: raw.h:197
@ SPA_AUDIO_CHANNEL_AUX9
Definition: raw.h:231
@ SPA_AUDIO_CHANNEL_AUX55
Definition: raw.h:277
@ SPA_AUDIO_CHANNEL_AUX51
Definition: raw.h:273
@ SPA_AUDIO_CHANNEL_TC
top center
Definition: raw.h:196
@ SPA_AUDIO_CHANNEL_AUX16
Definition: raw.h:238
@ SPA_AUDIO_CHANNEL_FRC
front right center
Definition: raw.h:192
@ SPA_AUDIO_CHANNEL_RC
rear center
Definition: raw.h:193
@ SPA_AUDIO_CHANNEL_AUX36
Definition: raw.h:258
@ SPA_AUDIO_CHANNEL_AUX26
Definition: raw.h:248
@ SPA_AUDIO_CHANNEL_AUX40
Definition: raw.h:262
@ SPA_AUDIO_CHANNEL_FL
front left
Definition: raw.h:185
@ SPA_AUDIO_CHANNEL_MONO
mono stream
Definition: raw.h:183
@ SPA_AUDIO_CHANNEL_AUX49
Definition: raw.h:271
@ SPA_AUDIO_CHANNEL_AUX18
Definition: raw.h:240
@ SPA_AUDIO_CHANNEL_AUX1
Definition: raw.h:223
@ SPA_AUDIO_CHANNEL_AUX47
Definition: raw.h:269
@ SPA_AUDIO_CHANNEL_AUX11
Definition: raw.h:233
@ SPA_AUDIO_CHANNEL_FLH
front left high
Definition: raw.h:208
@ SPA_AUDIO_CHANNEL_AUX14
Definition: raw.h:236
@ SPA_AUDIO_CHANNEL_AUX32
Definition: raw.h:254
@ SPA_AUDIO_CHANNEL_FRW
front right wide
Definition: raw.h:206
@ SPA_AUDIO_CHANNEL_AUX29
Definition: raw.h:251
@ SPA_AUDIO_CHANNEL_RRC
rear right center
Definition: raw.h:204
@ SPA_AUDIO_CHANNEL_SL
side left
Definition: raw.h:189
@ SPA_AUDIO_CHANNEL_AUX15
Definition: raw.h:237
@ SPA_AUDIO_CHANNEL_AUX24
Definition: raw.h:246
@ SPA_AUDIO_CHANNEL_AUX20
Definition: raw.h:242
@ SPA_AUDIO_CHANNEL_AUX22
Definition: raw.h:244
@ SPA_AUDIO_CHANNEL_FRH
front right high
Definition: raw.h:210
@ SPA_AUDIO_FORMAT_S32
Definition: raw.h:118
@ SPA_AUDIO_FORMAT_F64_LE
Definition: raw.h:85
@ SPA_AUDIO_FORMAT_U16_OE
Definition: raw.h:129
@ SPA_AUDIO_FORMAT_F32_OE
Definition: raw.h:140
@ SPA_AUDIO_FORMAT_U16_BE
Definition: raw.h:62
@ SPA_AUDIO_FORMAT_S16P
Definition: raw.h:94
@ SPA_AUDIO_FORMAT_U20_OE
Definition: raw.h:137
@ SPA_AUDIO_FORMAT_U24_32_BE
Definition: raw.h:66
@ SPA_AUDIO_FORMAT_U24_32
Definition: raw.h:117
@ SPA_AUDIO_FORMAT_U24_OE
Definition: raw.h:135
@ SPA_AUDIO_FORMAT_U18_LE
Definition: raw.h:81
@ SPA_AUDIO_FORMAT_S18_LE
Definition: raw.h:79
@ SPA_AUDIO_FORMAT_U32_BE
Definition: raw.h:70
@ SPA_AUDIO_FORMAT_ULAW
Definition: raw.h:88
@ SPA_AUDIO_FORMAT_U32_LE
Definition: raw.h:69
@ SPA_AUDIO_FORMAT_S20
Definition: raw.h:122
@ SPA_AUDIO_FORMAT_S32_BE
Definition: raw.h:68
@ SPA_AUDIO_FORMAT_F32P
Definition: raw.h:98
@ SPA_AUDIO_FORMAT_S24_32_LE
Definition: raw.h:63
@ SPA_AUDIO_FORMAT_S16_LE
Definition: raw.h:59
@ SPA_AUDIO_FORMAT_S18_OE
Definition: raw.h:138
@ SPA_AUDIO_FORMAT_F32_BE
Definition: raw.h:84
@ SPA_AUDIO_FORMAT_F32_LE
Definition: raw.h:83
@ SPA_AUDIO_FORMAT_U18_OE
Definition: raw.h:139
@ SPA_AUDIO_FORMAT_U32
Definition: raw.h:119
@ SPA_AUDIO_FORMAT_S16_OE
Definition: raw.h:128
@ SPA_AUDIO_FORMAT_S32_OE
Definition: raw.h:132
@ SPA_AUDIO_FORMAT_U24_BE
Definition: raw.h:74
@ SPA_AUDIO_FORMAT_U24_LE
Definition: raw.h:73
@ SPA_AUDIO_FORMAT_U18_BE
Definition: raw.h:82
@ SPA_AUDIO_FORMAT_S20_BE
Definition: raw.h:76
@ SPA_AUDIO_FORMAT_U24_32_LE
Definition: raw.h:65
@ SPA_AUDIO_FORMAT_U20_LE
Definition: raw.h:77
@ SPA_AUDIO_FORMAT_S24P
Definition: raw.h:97
@ SPA_AUDIO_FORMAT_S32_LE
Definition: raw.h:67
@ SPA_AUDIO_FORMAT_S24_32P
Definition: raw.h:95
@ SPA_AUDIO_FORMAT_S20_OE
Definition: raw.h:136
@ SPA_AUDIO_FORMAT_S8P
Definition: raw.h:100
@ SPA_AUDIO_FORMAT_U24
Definition: raw.h:121
@ SPA_AUDIO_FORMAT_UNKNOWN
Definition: raw.h:52
@ SPA_AUDIO_FORMAT_F64_BE
Definition: raw.h:86
@ SPA_AUDIO_FORMAT_F64P
Definition: raw.h:99
@ SPA_AUDIO_FORMAT_U20
Definition: raw.h:123
@ SPA_AUDIO_FORMAT_S8
Definition: raw.h:57
@ SPA_AUDIO_FORMAT_U32_OE
Definition: raw.h:133
@ SPA_AUDIO_FORMAT_U8
Definition: raw.h:58
@ SPA_AUDIO_FORMAT_U16_LE
Definition: raw.h:61
@ SPA_AUDIO_FORMAT_S24_LE
Definition: raw.h:71
@ SPA_AUDIO_FORMAT_U18
Definition: raw.h:125
@ SPA_AUDIO_FORMAT_U20_BE
Definition: raw.h:78
@ SPA_AUDIO_FORMAT_S24
Definition: raw.h:120
@ SPA_AUDIO_FORMAT_ENCODED
Definition: raw.h:53
@ SPA_AUDIO_FORMAT_S16_BE
Definition: raw.h:60
@ SPA_AUDIO_FORMAT_S24_BE
Definition: raw.h:72
@ SPA_AUDIO_FORMAT_U8P
Definition: raw.h:93
@ SPA_AUDIO_FORMAT_ALAW
Definition: raw.h:89
@ SPA_AUDIO_FORMAT_S32P
Definition: raw.h:96
@ SPA_AUDIO_FORMAT_S24_32_OE
Definition: raw.h:130
@ SPA_AUDIO_FORMAT_U24_32_OE
Definition: raw.h:131
@ SPA_AUDIO_FORMAT_S24_32_BE
Definition: raw.h:64
@ SPA_AUDIO_FORMAT_S16
Definition: raw.h:114
@ SPA_AUDIO_FORMAT_S24_32
Definition: raw.h:116
@ SPA_AUDIO_FORMAT_F64
Definition: raw.h:127
@ SPA_AUDIO_FORMAT_F32
Definition: raw.h:126
@ SPA_AUDIO_FORMAT_S20_LE
Definition: raw.h:75
@ SPA_AUDIO_FORMAT_S18
Definition: raw.h:124
@ SPA_AUDIO_FORMAT_F64_OE
Definition: raw.h:141
@ SPA_AUDIO_FORMAT_S18_BE
Definition: raw.h:80
@ SPA_AUDIO_FORMAT_S24_OE
Definition: raw.h:134
@ SPA_AUDIO_FORMAT_U16
Definition: raw.h:115
@ SPA_TYPE_Int
Definition: type.h:54
spa/param/audio/iec958.h
Definition: type.h:162