PipeWire  0.3.65
param/audio/format.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_PARAM_AUDIO_FORMAT_H
26 #define SPA_PARAM_AUDIO_FORMAT_H
27 
28 #ifdef __cplusplus
29 extern "C" {
30 #endif
31 
37 #include <spa/param/format.h>
38 #include <spa/param/audio/raw.h>
39 #include <spa/param/audio/dsp.h>
40 #include <spa/param/audio/iec958.h>
41 #include <spa/param/audio/dsd.h>
42 #include <spa/param/audio/mp3.h>
43 #include <spa/param/audio/aac.h>
44 #include <spa/param/audio/vorbis.h>
45 #include <spa/param/audio/wma.h>
46 #include <spa/param/audio/ra.h>
47 #include <spa/param/audio/amr.h>
48 #include <spa/param/audio/alac.h>
49 #include <spa/param/audio/flac.h>
50 #include <spa/param/audio/ape.h>
51 
52 struct spa_audio_info {
53  uint32_t media_type;
54  uint32_t media_subtype;
55  union {
56  struct spa_audio_info_raw raw;
60  struct spa_audio_info_mp3 mp3;
61  struct spa_audio_info_aac aac;
63  struct spa_audio_info_wma wma;
64  struct spa_audio_info_ra ra;
65  struct spa_audio_info_amr amr;
68  struct spa_audio_info_ape ape;
69  } info;
70 };
71 
76 #ifdef __cplusplus
77 } /* extern "C" */
78 #endif
79 
80 #endif /* SPA_PARAM_AUDIO_FORMAT_H */
spa/param/audio/raw.h
spa/param/audio/dsd.h
spa/param/audio/iec958.h
spa/param/format.h
Definition: aac.h:58
Definition: alac.h:38
Definition: amr.h:44
Definition: ape.h:38
Definition: dsd.h:68
Definition: audio/dsp.h:38
Definition: flac.h:38
Definition: iec958.h:58
Definition: mp3.h:46
Definition: ra.h:38
Audio information description.
Definition: audio/raw.h:298
Definition: vorbis.h:38
Definition: wma.h:52
Definition: param/audio/format.h:57
struct spa_audio_info_dsd dsd
Definition: param/audio/format.h:64
struct spa_audio_info_vorbis vorbis
Definition: param/audio/format.h:67
struct spa_audio_info_dsp dsp
Definition: param/audio/format.h:62
union spa_audio_info::@7 info
struct spa_audio_info_amr amr
Definition: param/audio/format.h:70
uint32_t media_subtype
Definition: param/audio/format.h:59
struct spa_audio_info_mp3 mp3
Definition: param/audio/format.h:65
struct spa_audio_info_ra ra
Definition: param/audio/format.h:69
struct spa_audio_info_raw raw
Definition: param/audio/format.h:61
struct spa_audio_info_ape ape
Definition: param/audio/format.h:73
struct spa_audio_info_aac aac
Definition: param/audio/format.h:66
uint32_t media_type
Definition: param/audio/format.h:58
struct spa_audio_info_iec958 iec958
Definition: param/audio/format.h:63
struct spa_audio_info_wma wma
Definition: param/audio/format.h:68
struct spa_audio_info_alac alac
Definition: param/audio/format.h:71
struct spa_audio_info_flac flac
Definition: param/audio/format.h:72