PipeWire  0.3.53
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_FORMAT_H
26 #define SPA_PARAM_FORMAT_H
27 
28 #ifdef __cplusplus
29 extern "C" {
30 #endif
31 
37 #include <spa/param/param.h>
38 
40 enum spa_media_type {
48 };
49 
57 
71 
86 
89 
91 
94 
98 };
99 
101 enum spa_format {
103 
107  /* Audio format keys */
108  SPA_FORMAT_START_Audio = 0x10000,
120  /* Video Format keys */
121  SPA_FORMAT_START_Video = 0x20000,
143  /* Image Format keys */
145  /* Binary Format keys */
147  /* Stream Format keys */
148  SPA_FORMAT_START_Stream = 0x50000,
149  /* Application Format keys */
151 };
152 
153 #define SPA_KEY_FORMAT_DSP "format.dsp"
160 #ifdef __cplusplus
161 } /* extern "C" */
162 #endif
163 
164 #endif /* SPA_PARAM_FORMAT_H */
spa_media_type
media type for SPA_TYPE_OBJECT_Format
Definition: format.h:45
spa_format
properties for audio SPA_TYPE_OBJECT_Format
Definition: format.h:106
spa_media_subtype
media subtype for SPA_TYPE_OBJECT_Format
Definition: format.h:56
@ SPA_MEDIA_TYPE_unknown
Definition: format.h:46
@ SPA_MEDIA_TYPE_application
Definition: format.h:52
@ SPA_MEDIA_TYPE_audio
Definition: format.h:47
@ SPA_MEDIA_TYPE_video
Definition: format.h:48
@ SPA_MEDIA_TYPE_binary
Definition: format.h:50
@ SPA_MEDIA_TYPE_image
Definition: format.h:49
@ SPA_MEDIA_TYPE_stream
Definition: format.h:51
@ SPA_FORMAT_VIDEO_framerate
frame rate (Fraction)
Definition: format.h:131
@ SPA_FORMAT_AUDIO_iec958Codec
codec used (IEC958) (Id enum spa_audio_iec958_codec)
Definition: format.h:120
@ SPA_FORMAT_VIDEO_H264_streamFormat
(Id enum spa_h264_stream_format)
Definition: format.h:145
@ SPA_FORMAT_AUDIO_interleave
Interleave bytes (Int)
Definition: format.h:123
@ SPA_FORMAT_START_Audio
Definition: format.h:113
@ SPA_FORMAT_AUDIO_bitorder
bit order (Id enum spa_param_bitorder)
Definition: format.h:122
@ SPA_FORMAT_VIDEO_level
(Int)
Definition: format.h:144
@ SPA_FORMAT_mediaType
media type (Id enum spa_media_type)
Definition: format.h:109
@ SPA_FORMAT_VIDEO_size
size (Rectangle)
Definition: format.h:130
@ SPA_FORMAT_AUDIO_position
channel positions (Id enum spa_audio_position)
Definition: format.h:118
@ SPA_FORMAT_VIDEO_profile
(Int)
Definition: format.h:143
@ SPA_FORMAT_VIDEO_modifier
format modifier (Long) use only with DMA-BUF and omit for other buffer types
Definition: format.h:128
@ SPA_FORMAT_AUDIO_rate
sample rate (Int)
Definition: format.h:116
@ SPA_FORMAT_VIDEO_multiviewMode
(Id enum spa_video_multiview_mode)
Definition: format.h:136
@ SPA_FORMAT_START_Stream
Definition: format.h:153
@ SPA_FORMAT_VIDEO_interlaceMode
(Id enum spa_video_interlace_mode)
Definition: format.h:134
@ SPA_FORMAT_VIDEO_maxFramerate
maximum frame rate (Fraction)
Definition: format.h:132
@ SPA_FORMAT_START_Image
Definition: format.h:149
@ SPA_FORMAT_AUDIO_flags
optional flags (Int)
Definition: format.h:115
@ SPA_FORMAT_START_Application
Definition: format.h:155
@ SPA_FORMAT_VIDEO_pixelAspectRatio
(Rectangle)
Definition: format.h:135
@ SPA_FORMAT_VIDEO_colorMatrix
/Id enum spa_video_color_matrix)
Definition: format.h:140
@ SPA_FORMAT_VIDEO_format
video format (Id enum spa_video_format)
Definition: format.h:127
@ SPA_FORMAT_START_Binary
Definition: format.h:151
@ SPA_FORMAT_mediaSubtype
media subtype (Id enum spa_media_subtype)
Definition: format.h:110
@ SPA_FORMAT_AUDIO_format
audio format, (Id enum spa_audio_format)
Definition: format.h:114
@ SPA_FORMAT_VIDEO_chromaSite
/Id enum spa_video_chroma_site)
Definition: format.h:138
@ SPA_FORMAT_VIDEO_views
number of views (Int)
Definition: format.h:133
@ SPA_FORMAT_VIDEO_colorPrimaries
/Id enum spa_video_color_primaries)
Definition: format.h:142
@ SPA_FORMAT_VIDEO_transferFunction
/Id enum spa_video_transfer_function)
Definition: format.h:141
@ SPA_FORMAT_VIDEO_H264_alignment
(Id enum spa_h264_alignment)
Definition: format.h:146
@ SPA_FORMAT_START_Video
Definition: format.h:126
@ SPA_FORMAT_VIDEO_colorRange
/Id enum spa_video_color_range)
Definition: format.h:139
@ SPA_FORMAT_AUDIO_channels
number of audio channels (Int)
Definition: format.h:117
@ SPA_FORMAT_VIDEO_multiviewFlags
(Id enum spa_video_multiview_flags)
Definition: format.h:137
@ SPA_FORMAT_START
Definition: format.h:107
@ SPA_MEDIA_SUBTYPE_midi
Definition: format.h:98
@ SPA_MEDIA_SUBTYPE_h264
Definition: format.h:78
@ SPA_MEDIA_SUBTYPE_ra
Definition: format.h:68
@ SPA_MEDIA_SUBTYPE_mpeg4
Definition: format.h:85
@ SPA_MEDIA_SUBTYPE_START_Binary
Definition: format.h:95
@ SPA_MEDIA_SUBTYPE_mp3
Definition: format.h:64
@ SPA_MEDIA_SUBTYPE_aac
Definition: format.h:65
@ SPA_MEDIA_SUBTYPE_iec958
Definition: format.h:60
@ SPA_MEDIA_SUBTYPE_START_Video
Definition: format.h:77
@ SPA_MEDIA_SUBTYPE_mpeg2
Definition: format.h:84
@ SPA_MEDIA_SUBTYPE_sbc
Definition: format.h:69
@ SPA_MEDIA_SUBTYPE_wma
Definition: format.h:67
@ SPA_MEDIA_SUBTYPE_h263
Definition: format.h:82
@ SPA_MEDIA_SUBTYPE_g726
Definition: format.h:72
@ SPA_MEDIA_SUBTYPE_amr
Definition: format.h:74
@ SPA_MEDIA_SUBTYPE_unknown
Definition: format.h:57
@ SPA_MEDIA_SUBTYPE_mjpg
Definition: format.h:79
@ SPA_MEDIA_SUBTYPE_vp8
Definition: format.h:88
@ SPA_MEDIA_SUBTYPE_START_Image
Definition: format.h:92
@ SPA_MEDIA_SUBTYPE_dsp
Definition: format.h:59
@ SPA_MEDIA_SUBTYPE_START_Audio
Definition: format.h:63
@ SPA_MEDIA_SUBTYPE_vorbis
Definition: format.h:66
@ SPA_MEDIA_SUBTYPE_dv
Definition: format.h:80
@ SPA_MEDIA_SUBTYPE_raw
Definition: format.h:58
@ SPA_MEDIA_SUBTYPE_mpegts
Definition: format.h:81
@ SPA_MEDIA_SUBTYPE_mpeg1
Definition: format.h:83
@ SPA_MEDIA_SUBTYPE_vc1
Definition: format.h:87
@ SPA_MEDIA_SUBTYPE_START_Stream
Definition: format.h:97
@ SPA_MEDIA_SUBTYPE_jpeg
Definition: format.h:93
@ SPA_MEDIA_SUBTYPE_xvid
Definition: format.h:86
@ SPA_MEDIA_SUBTYPE_dsd
S/PDIF.
Definition: format.h:61
@ SPA_MEDIA_SUBTYPE_adpcm
Definition: format.h:70
@ SPA_MEDIA_SUBTYPE_bayer
Definition: format.h:90
@ SPA_MEDIA_SUBTYPE_g723
Definition: format.h:71
@ SPA_MEDIA_SUBTYPE_control
control stream, data contains spa_pod_sequence with control info.
Definition: format.h:101
@ SPA_MEDIA_SUBTYPE_gsm
Definition: format.h:75
@ SPA_MEDIA_SUBTYPE_START_Application
Definition: format.h:100
@ SPA_MEDIA_SUBTYPE_g729
Definition: format.h:73
@ SPA_MEDIA_SUBTYPE_vp9
Definition: format.h:89
spa/param/param.h