reorganize some struct members to remove holes

This commit is contained in:
Wim Taymans 2019-02-08 12:01:50 +01:00
parent 658c1da52f
commit f45e0b8966
27 changed files with 533 additions and 539 deletions

View file

@ -37,12 +37,12 @@ struct spa_buffer_alloc_info {
#define SPA_BUFFER_ALLOC_FLAG_INLINE_ALL 0b111
#define SPA_BUFFER_ALLOC_FLAG_NO_DATA (1<<3) /**< don't set data pointers */
uint32_t flags;
uint32_t max_align; /**< max of all alignments */
uint32_t n_metas;
struct spa_meta *metas;
uint32_t n_datas;
struct spa_meta *metas;
struct spa_data *datas;
uint32_t *data_aligns;
uint32_t max_align; /**< max of all alignments */
size_t skel_size; /**< size of the struct spa_buffer and inlined meta/chunk/data */
size_t meta_size; /**< size of the meta if not inlined */
size_t chunk_size; /**< size of the chunk if not inlined */

View file

@ -45,11 +45,11 @@ extern "C" {
#define SPA_TYPE_INFO_DATA_FD_BASE SPA_TYPE_INFO_DATA_Fd ":"
static const struct spa_type_info spa_type_data_type[] = {
{ SPA_DATA_Invalid, SPA_TYPE_INFO_DATA_BASE "Invalid", SPA_TYPE_Int, NULL },
{ SPA_DATA_MemPtr, SPA_TYPE_INFO_DATA_BASE "MemPtr", SPA_TYPE_Int, NULL },
{ SPA_DATA_MemFd, SPA_TYPE_INFO_DATA_FD_BASE "MemFd", SPA_TYPE_Int, NULL },
{ SPA_DATA_DmaBuf, SPA_TYPE_INFO_DATA_FD_BASE "DmaBuf", SPA_TYPE_Int, NULL },
{ 0, NULL, 0, NULL },
{ SPA_DATA_Invalid, SPA_TYPE_Int, SPA_TYPE_INFO_DATA_BASE "Invalid", NULL },
{ SPA_DATA_MemPtr, SPA_TYPE_Int, SPA_TYPE_INFO_DATA_BASE "MemPtr", NULL },
{ SPA_DATA_MemFd, SPA_TYPE_Int, SPA_TYPE_INFO_DATA_FD_BASE "MemFd", NULL },
{ SPA_DATA_DmaBuf, SPA_TYPE_Int, SPA_TYPE_INFO_DATA_FD_BASE "DmaBuf", NULL },
{ 0, 0, NULL, NULL },
};
#define SPA_TYPE_INFO_Meta SPA_TYPE_INFO_POINTER_BASE "Meta"
@ -62,13 +62,13 @@ static const struct spa_type_info spa_type_data_type[] = {
#define SPA_TYPE_INFO_META_REGION_ARRAY_BASE SPA_TYPE_INFO_META_RegionArray ":"
static const struct spa_type_info spa_type_meta_type[] = {
{ SPA_META_Invalid, SPA_TYPE_INFO_META_BASE "Invalid", SPA_TYPE_Pointer, NULL },
{ SPA_META_Header, SPA_TYPE_INFO_META_BASE "Header", SPA_TYPE_Pointer, NULL },
{ SPA_META_VideoCrop, SPA_TYPE_INFO_META_REGION_BASE "VideoCrop", SPA_TYPE_Pointer, NULL },
{ SPA_META_VideoDamage, SPA_TYPE_INFO_META_REGION_ARRAY_BASE "VideoDamage", SPA_TYPE_Pointer, NULL },
{ SPA_META_Bitmap, SPA_TYPE_INFO_META_BASE "Bitmap", SPA_TYPE_Pointer, NULL },
{ SPA_META_Cursor, SPA_TYPE_INFO_META_BASE "Cursor", SPA_TYPE_Pointer, NULL },
{ 0, NULL, 0, NULL },
{ SPA_META_Invalid, SPA_TYPE_Pointer, SPA_TYPE_INFO_META_BASE "Invalid", NULL },
{ SPA_META_Header, SPA_TYPE_Pointer, SPA_TYPE_INFO_META_BASE "Header", NULL },
{ SPA_META_VideoCrop, SPA_TYPE_Pointer, SPA_TYPE_INFO_META_REGION_BASE "VideoCrop", NULL },
{ SPA_META_VideoDamage, SPA_TYPE_Pointer, SPA_TYPE_INFO_META_REGION_ARRAY_BASE "VideoDamage", NULL },
{ SPA_META_Bitmap, SPA_TYPE_Pointer, SPA_TYPE_INFO_META_BASE "Bitmap", NULL },
{ SPA_META_Cursor, SPA_TYPE_Pointer, SPA_TYPE_INFO_META_BASE "Cursor", NULL },
{ 0, 0, NULL, NULL },
};
#ifdef __cplusplus

View file

@ -38,10 +38,10 @@ extern "C" {
#define SPA_TYPE_INFO_CONTROL_BASE SPA_TYPE_INFO_Control ":"
static const struct spa_type_info spa_type_control[] = {
{ SPA_CONTROL_Invalid, SPA_TYPE_INFO_CONTROL_BASE "Invalid", SPA_TYPE_Int, NULL },
{ SPA_CONTROL_Properties, SPA_TYPE_INFO_CONTROL_BASE "Properties", SPA_TYPE_Int, NULL },
{ SPA_CONTROL_Midi, SPA_TYPE_INFO_CONTROL_BASE "Midi", SPA_TYPE_Int, NULL },
{ 0, NULL, 0, NULL },
{ SPA_CONTROL_Invalid, SPA_TYPE_Int, SPA_TYPE_INFO_CONTROL_BASE "Invalid", NULL },
{ SPA_CONTROL_Properties, SPA_TYPE_Int, SPA_TYPE_INFO_CONTROL_BASE "Properties", NULL },
{ SPA_CONTROL_Midi, SPA_TYPE_Int, SPA_TYPE_INFO_CONTROL_BASE "Midi", NULL },
{ 0, 0, NULL, NULL },
};
#ifdef __cplusplus

View file

@ -36,51 +36,51 @@ extern "C" {
#define SPA_TYPE_INFO_MONITOR_EVENT_BASE SPA_TYPE_INFO_MonitorEvent ":"
static const struct spa_type_info spa_type_monitor_event_id[] = {
{ SPA_MONITOR_EVENT_Added, SPA_TYPE_INFO_MONITOR_EVENT_BASE "Added", SPA_TYPE_Int, NULL },
{ SPA_MONITOR_EVENT_Removed, SPA_TYPE_INFO_MONITOR_EVENT_BASE "Removed", SPA_TYPE_Int, NULL },
{ SPA_MONITOR_EVENT_Changed, SPA_TYPE_INFO_MONITOR_EVENT_BASE "Changed", SPA_TYPE_Int, NULL },
{ 0, NULL, 0, NULL },
{ SPA_MONITOR_EVENT_Added, SPA_TYPE_Int, SPA_TYPE_INFO_MONITOR_EVENT_BASE "Added", NULL },
{ SPA_MONITOR_EVENT_Removed, SPA_TYPE_Int, SPA_TYPE_INFO_MONITOR_EVENT_BASE "Removed", NULL },
{ SPA_MONITOR_EVENT_Changed, SPA_TYPE_Int, SPA_TYPE_INFO_MONITOR_EVENT_BASE "Changed", NULL },
{ 0, 0, NULL, NULL },
};
static const struct spa_type_info spa_type_monitor_event[] = {
{ 0, SPA_TYPE_INFO_MONITOR_EVENT_BASE, SPA_TYPE_Id, spa_type_monitor_event_id },
{ 0, NULL, 0, NULL },
{ 0, SPA_TYPE_Id, SPA_TYPE_INFO_MONITOR_EVENT_BASE, spa_type_monitor_event_id },
{ 0, 0, NULL, NULL },
};
#define SPA_TYPE_INFO_MonitorItemFlags SPA_TYPE_INFO_FLAGS_BASE "MonitorItemFlags"
#define SPA_TYPE_INFO_MONITOR_ITEM_FLAGS_BASE SPA_TYPE_INFO_MonitorItemFlags ":"
static const struct spa_type_info spa_type_monitor_item_flags[] = {
{ SPA_MONITOR_ITEM_FLAG_NONE, SPA_TYPE_INFO_MONITOR_ITEM_FLAGS_BASE "none", SPA_TYPE_Int, NULL },
{ 0, NULL, 0, NULL },
{ SPA_MONITOR_ITEM_FLAG_NONE, SPA_TYPE_Int, SPA_TYPE_INFO_MONITOR_ITEM_FLAGS_BASE "none", NULL },
{ 0, 0, NULL, NULL },
};
#define SPA_TYPE_INFO_MonitorItemState SPA_TYPE_INFO_ENUM_BASE "MonitorItemState"
#define SPA_TYPE_INFO_MONITOR_ITEM_STATE_BASE SPA_TYPE_INFO_MonitorItemState ":"
static const struct spa_type_info spa_type_monitor_item_state[] = {
{ SPA_MONITOR_ITEM_STATE_Available, SPA_TYPE_INFO_MONITOR_ITEM_STATE_BASE "Available", SPA_TYPE_Int, NULL },
{ SPA_MONITOR_ITEM_STATE_Disabled, SPA_TYPE_INFO_MONITOR_ITEM_STATE_BASE "Disabled", SPA_TYPE_Int, NULL },
{ SPA_MONITOR_ITEM_STATE_Unavailable, SPA_TYPE_INFO_MONITOR_ITEM_STATE_BASE "Unavailable", SPA_TYPE_Int, NULL },
{ 0, NULL, 0, NULL },
{ SPA_MONITOR_ITEM_STATE_Available, SPA_TYPE_Int, SPA_TYPE_INFO_MONITOR_ITEM_STATE_BASE "Available", NULL },
{ SPA_MONITOR_ITEM_STATE_Disabled, SPA_TYPE_Int, SPA_TYPE_INFO_MONITOR_ITEM_STATE_BASE "Disabled", NULL },
{ SPA_MONITOR_ITEM_STATE_Unavailable, SPA_TYPE_Int, SPA_TYPE_INFO_MONITOR_ITEM_STATE_BASE "Unavailable", NULL },
{ 0, 0, NULL, NULL },
};
#define SPA_TYPE_INFO_MonitorItem SPA_TYPE_INFO_OBJECT_BASE "MonitorItem"
#define SPA_TYPE_INFO_MONITOR_ITEM_BASE SPA_TYPE_INFO_MonitorItem ":"
static const struct spa_type_info spa_type_monitor_item[] = {
{ SPA_MONITOR_ITEM_START, SPA_TYPE_INFO_MONITOR_ITEM_BASE, SPA_TYPE_Int, NULL },
{ SPA_MONITOR_ITEM_id, SPA_TYPE_INFO_MONITOR_ITEM_BASE "id", SPA_TYPE_String, NULL },
{ SPA_MONITOR_ITEM_flags, SPA_TYPE_INFO_MONITOR_ITEM_BASE "flags", SPA_TYPE_Id,
{ SPA_MONITOR_ITEM_START, SPA_TYPE_Int, SPA_TYPE_INFO_MONITOR_ITEM_BASE, NULL },
{ SPA_MONITOR_ITEM_id, SPA_TYPE_String, SPA_TYPE_INFO_MONITOR_ITEM_BASE "id", NULL },
{ SPA_MONITOR_ITEM_flags, SPA_TYPE_Id, SPA_TYPE_INFO_MONITOR_ITEM_BASE "flags",
spa_type_monitor_item_flags },
{ SPA_MONITOR_ITEM_state, SPA_TYPE_INFO_MONITOR_ITEM_BASE "state", SPA_TYPE_Id,
{ SPA_MONITOR_ITEM_state, SPA_TYPE_Id, SPA_TYPE_INFO_MONITOR_ITEM_BASE "state",
spa_type_monitor_item_state },
{ SPA_MONITOR_ITEM_name, SPA_TYPE_INFO_MONITOR_ITEM_BASE "name", SPA_TYPE_String, NULL },
{ SPA_MONITOR_ITEM_class, SPA_TYPE_INFO_MONITOR_ITEM_BASE "class", SPA_TYPE_String, NULL },
{ SPA_MONITOR_ITEM_info, SPA_TYPE_INFO_MONITOR_ITEM_BASE "info", SPA_TYPE_Pod, NULL },
{ SPA_MONITOR_ITEM_factory, SPA_TYPE_INFO_MONITOR_ITEM_BASE "factory", SPA_TYPE_Pointer, NULL },
{ SPA_MONITOR_ITEM_type, SPA_TYPE_INFO_MONITOR_ITEM_BASE "type", SPA_TYPE_Id, NULL },
{ 0, NULL, 0, NULL },
{ SPA_MONITOR_ITEM_name, SPA_TYPE_String, SPA_TYPE_INFO_MONITOR_ITEM_BASE "name", NULL },
{ SPA_MONITOR_ITEM_class, SPA_TYPE_String, SPA_TYPE_INFO_MONITOR_ITEM_BASE "class", NULL },
{ SPA_MONITOR_ITEM_info, SPA_TYPE_Pod, SPA_TYPE_INFO_MONITOR_ITEM_BASE "info", NULL },
{ SPA_MONITOR_ITEM_factory, SPA_TYPE_Pointer, SPA_TYPE_INFO_MONITOR_ITEM_BASE "factory", NULL },
{ SPA_MONITOR_ITEM_type, SPA_TYPE_Id, SPA_TYPE_INFO_MONITOR_ITEM_BASE "type", NULL },
{ 0, 0, NULL, NULL },
};
#ifdef __cplusplus

View file

@ -39,51 +39,51 @@ extern "C" {
#define SPA_TYPE_INFO_IO_BASE SPA_TYPE_INFO_IO ":"
static const struct spa_type_info spa_type_io[] = {
{ SPA_IO_Invalid, SPA_TYPE_INFO_IO_BASE "Invalid", SPA_TYPE_Int, NULL },
{ SPA_IO_Buffers, SPA_TYPE_INFO_IO_BASE "Buffers", SPA_TYPE_Int, NULL },
{ SPA_IO_Range, SPA_TYPE_INFO_IO_BASE "Range", SPA_TYPE_Int, NULL },
{ SPA_IO_Clock, SPA_TYPE_INFO_IO_BASE "Clock", SPA_TYPE_Int, NULL },
{ SPA_IO_Latency, SPA_TYPE_INFO_IO_BASE "Latency", SPA_TYPE_Int, NULL },
{ SPA_IO_Control, SPA_TYPE_INFO_IO_BASE "Control", SPA_TYPE_Int, NULL },
{ SPA_IO_Notify, SPA_TYPE_INFO_IO_BASE "Notify", SPA_TYPE_Int, NULL },
{ SPA_IO_Position, SPA_TYPE_INFO_IO_BASE "Position", SPA_TYPE_Int, NULL },
{ 0, NULL, 0, NULL },
{ SPA_IO_Invalid, SPA_TYPE_Int, SPA_TYPE_INFO_IO_BASE "Invalid", NULL },
{ SPA_IO_Buffers, SPA_TYPE_Int, SPA_TYPE_INFO_IO_BASE "Buffers", NULL },
{ SPA_IO_Range, SPA_TYPE_Int, SPA_TYPE_INFO_IO_BASE "Range", NULL },
{ SPA_IO_Clock, SPA_TYPE_Int, SPA_TYPE_INFO_IO_BASE "Clock", NULL },
{ SPA_IO_Latency, SPA_TYPE_Int, SPA_TYPE_INFO_IO_BASE "Latency", NULL },
{ SPA_IO_Control, SPA_TYPE_Int, SPA_TYPE_INFO_IO_BASE "Control", NULL },
{ SPA_IO_Notify, SPA_TYPE_Int, SPA_TYPE_INFO_IO_BASE "Notify", NULL },
{ SPA_IO_Position, SPA_TYPE_Int, SPA_TYPE_INFO_IO_BASE "Position", NULL },
{ 0, 0, NULL, NULL },
};
#define SPA_TYPE_INFO_NodeEvent SPA_TYPE_INFO_EVENT_BASE "Node"
#define SPA_TYPE_INFO_NODE_EVENT_BASE SPA_TYPE_INFO_NodeEvent ":"
static const struct spa_type_info spa_type_node_event_id[] = {
{ SPA_NODE_EVENT_Error, SPA_TYPE_INFO_NODE_EVENT_BASE "Error", SPA_TYPE_Int, NULL },
{ SPA_NODE_EVENT_Buffering, SPA_TYPE_INFO_NODE_EVENT_BASE "Buffering", SPA_TYPE_Int, NULL },
{ SPA_NODE_EVENT_RequestRefresh, SPA_TYPE_INFO_NODE_EVENT_BASE "RequestRefresh", SPA_TYPE_Int, NULL },
{ SPA_NODE_EVENT_PortsChanged, SPA_TYPE_INFO_NODE_EVENT_BASE "PortsChanged", SPA_TYPE_Int, NULL },
{ 0, NULL, 0, NULL },
{ SPA_NODE_EVENT_Error, SPA_TYPE_Int, SPA_TYPE_INFO_NODE_EVENT_BASE "Error", NULL },
{ SPA_NODE_EVENT_Buffering, SPA_TYPE_Int, SPA_TYPE_INFO_NODE_EVENT_BASE "Buffering", NULL },
{ SPA_NODE_EVENT_RequestRefresh, SPA_TYPE_Int, SPA_TYPE_INFO_NODE_EVENT_BASE "RequestRefresh", NULL },
{ SPA_NODE_EVENT_PortsChanged, SPA_TYPE_Int, SPA_TYPE_INFO_NODE_EVENT_BASE "PortsChanged", NULL },
{ 0, 0, NULL, NULL },
};
static const struct spa_type_info spa_type_node_event[] = {
{ 0, SPA_TYPE_INFO_NODE_EVENT_BASE, SPA_TYPE_Id, spa_type_node_event_id },
{ 0, NULL, 0, NULL },
{ 0, SPA_TYPE_Id, SPA_TYPE_INFO_NODE_EVENT_BASE, spa_type_node_event_id },
{ 0, 0, NULL, NULL },
};
#define SPA_TYPE_INFO_NodeCommand SPA_TYPE_INFO_COMMAND_BASE "Node"
#define SPA_TYPE_INFO_NODE_COMMAND_BASE SPA_TYPE_INFO_NodeCommand ":"
static const struct spa_type_info spa_type_node_command_id[] = {
{ SPA_NODE_COMMAND_Suspend, SPA_TYPE_INFO_NODE_COMMAND_BASE "Suspend", SPA_TYPE_Int, NULL },
{ SPA_NODE_COMMAND_Pause, SPA_TYPE_INFO_NODE_COMMAND_BASE "Pause", SPA_TYPE_Int, NULL },
{ SPA_NODE_COMMAND_Start, SPA_TYPE_INFO_NODE_COMMAND_BASE "Start", SPA_TYPE_Int, NULL },
{ SPA_NODE_COMMAND_Enable, SPA_TYPE_INFO_NODE_COMMAND_BASE "Enable", SPA_TYPE_Int, NULL },
{ SPA_NODE_COMMAND_Disable, SPA_TYPE_INFO_NODE_COMMAND_BASE "Disable", SPA_TYPE_Int, NULL },
{ SPA_NODE_COMMAND_Flush, SPA_TYPE_INFO_NODE_COMMAND_BASE "Flush", SPA_TYPE_Int, NULL },
{ SPA_NODE_COMMAND_Drain, SPA_TYPE_INFO_NODE_COMMAND_BASE "Drain", SPA_TYPE_Int, NULL },
{ SPA_NODE_COMMAND_Marker, SPA_TYPE_INFO_NODE_COMMAND_BASE "Marker", SPA_TYPE_Int, NULL },
{ 0, NULL, 0, NULL },
{ SPA_NODE_COMMAND_Suspend, SPA_TYPE_Int, SPA_TYPE_INFO_NODE_COMMAND_BASE "Suspend", NULL },
{ SPA_NODE_COMMAND_Pause, SPA_TYPE_Int, SPA_TYPE_INFO_NODE_COMMAND_BASE "Pause", NULL },
{ SPA_NODE_COMMAND_Start, SPA_TYPE_Int, SPA_TYPE_INFO_NODE_COMMAND_BASE "Start", NULL },
{ SPA_NODE_COMMAND_Enable, SPA_TYPE_Int, SPA_TYPE_INFO_NODE_COMMAND_BASE "Enable", NULL },
{ SPA_NODE_COMMAND_Disable, SPA_TYPE_Int, SPA_TYPE_INFO_NODE_COMMAND_BASE "Disable", NULL },
{ SPA_NODE_COMMAND_Flush, SPA_TYPE_Int, SPA_TYPE_INFO_NODE_COMMAND_BASE "Flush", NULL },
{ SPA_NODE_COMMAND_Drain, SPA_TYPE_Int, SPA_TYPE_INFO_NODE_COMMAND_BASE "Drain", NULL },
{ SPA_NODE_COMMAND_Marker, SPA_TYPE_Int, SPA_TYPE_INFO_NODE_COMMAND_BASE "Marker", NULL },
{ 0, 0, NULL, NULL },
};
static const struct spa_type_info spa_type_node_command[] = {
{ 0, SPA_TYPE_INFO_NODE_COMMAND_BASE, SPA_TYPE_Id, spa_type_node_command_id },
{ 0, NULL, 0, NULL },
{ 0, SPA_TYPE_Id, SPA_TYPE_INFO_NODE_COMMAND_BASE, spa_type_node_command_id },
{ 0, 0, NULL, NULL },
};
#ifdef __cplusplus

View file

@ -35,102 +35,102 @@ extern "C" {
#define SPA_TYPE_INFO_AUDIO_FORMAT_BASE SPA_TYPE_INFO_AudioFormat ":"
static const struct spa_type_info spa_type_audio_format[] = {
{ SPA_AUDIO_FORMAT_UNKNOWN, SPA_TYPE_INFO_AUDIO_FORMAT_BASE "UNKNOWN", SPA_TYPE_Int, NULL },
{ SPA_AUDIO_FORMAT_ENCODED, SPA_TYPE_INFO_AUDIO_FORMAT_BASE "ENCODED", SPA_TYPE_Int, NULL },
{ SPA_AUDIO_FORMAT_S8, SPA_TYPE_INFO_AUDIO_FORMAT_BASE "S8", SPA_TYPE_Int, NULL },
{ SPA_AUDIO_FORMAT_U8, SPA_TYPE_INFO_AUDIO_FORMAT_BASE "U8", SPA_TYPE_Int, NULL },
{ SPA_AUDIO_FORMAT_S16_LE, SPA_TYPE_INFO_AUDIO_FORMAT_BASE "S16LE", SPA_TYPE_Int, NULL },
{ SPA_AUDIO_FORMAT_S16_BE, SPA_TYPE_INFO_AUDIO_FORMAT_BASE "S16BE", SPA_TYPE_Int, NULL },
{ SPA_AUDIO_FORMAT_U16_LE, SPA_TYPE_INFO_AUDIO_FORMAT_BASE "U16LE", SPA_TYPE_Int, NULL },
{ SPA_AUDIO_FORMAT_U16_BE, SPA_TYPE_INFO_AUDIO_FORMAT_BASE "U16BE", SPA_TYPE_Int, NULL },
{ SPA_AUDIO_FORMAT_S24_32_LE, SPA_TYPE_INFO_AUDIO_FORMAT_BASE "S24_32LE", SPA_TYPE_Int, NULL },
{ SPA_AUDIO_FORMAT_S24_32_BE, SPA_TYPE_INFO_AUDIO_FORMAT_BASE "S24_32BE", SPA_TYPE_Int, NULL },
{ SPA_AUDIO_FORMAT_U24_32_LE, SPA_TYPE_INFO_AUDIO_FORMAT_BASE "U24_32LE", SPA_TYPE_Int, NULL },
{ SPA_AUDIO_FORMAT_U24_32_BE, SPA_TYPE_INFO_AUDIO_FORMAT_BASE "U24_32BE", SPA_TYPE_Int, NULL },
{ SPA_AUDIO_FORMAT_S32_LE, SPA_TYPE_INFO_AUDIO_FORMAT_BASE "S32LE", SPA_TYPE_Int, NULL },
{ SPA_AUDIO_FORMAT_S32_BE, SPA_TYPE_INFO_AUDIO_FORMAT_BASE "S32BE", SPA_TYPE_Int, NULL },
{ SPA_AUDIO_FORMAT_U32_LE, SPA_TYPE_INFO_AUDIO_FORMAT_BASE "U32LE", SPA_TYPE_Int, NULL },
{ SPA_AUDIO_FORMAT_U32_BE, SPA_TYPE_INFO_AUDIO_FORMAT_BASE "U32BE", SPA_TYPE_Int, NULL },
{ SPA_AUDIO_FORMAT_S24_LE, SPA_TYPE_INFO_AUDIO_FORMAT_BASE "S24LE", SPA_TYPE_Int, NULL },
{ SPA_AUDIO_FORMAT_S24_BE, SPA_TYPE_INFO_AUDIO_FORMAT_BASE "S24BE", SPA_TYPE_Int, NULL },
{ SPA_AUDIO_FORMAT_U24_LE, SPA_TYPE_INFO_AUDIO_FORMAT_BASE "U24LE", SPA_TYPE_Int, NULL },
{ SPA_AUDIO_FORMAT_U24_BE, SPA_TYPE_INFO_AUDIO_FORMAT_BASE "U24BE", SPA_TYPE_Int, NULL },
{ SPA_AUDIO_FORMAT_S20_LE, SPA_TYPE_INFO_AUDIO_FORMAT_BASE "S20LE", SPA_TYPE_Int, NULL },
{ SPA_AUDIO_FORMAT_S20_BE, SPA_TYPE_INFO_AUDIO_FORMAT_BASE "S20BE", SPA_TYPE_Int, NULL },
{ SPA_AUDIO_FORMAT_U20_LE, SPA_TYPE_INFO_AUDIO_FORMAT_BASE "U20LE", SPA_TYPE_Int, NULL },
{ SPA_AUDIO_FORMAT_U20_BE, SPA_TYPE_INFO_AUDIO_FORMAT_BASE "U20BE", SPA_TYPE_Int, NULL },
{ SPA_AUDIO_FORMAT_S18_LE, SPA_TYPE_INFO_AUDIO_FORMAT_BASE "S18LE", SPA_TYPE_Int, NULL },
{ SPA_AUDIO_FORMAT_S18_BE, SPA_TYPE_INFO_AUDIO_FORMAT_BASE "S18BE", SPA_TYPE_Int, NULL },
{ SPA_AUDIO_FORMAT_U18_LE, SPA_TYPE_INFO_AUDIO_FORMAT_BASE "U18LE", SPA_TYPE_Int, NULL },
{ SPA_AUDIO_FORMAT_U18_BE, SPA_TYPE_INFO_AUDIO_FORMAT_BASE "U18BE", SPA_TYPE_Int, NULL },
{ SPA_AUDIO_FORMAT_F32_LE, SPA_TYPE_INFO_AUDIO_FORMAT_BASE "F32LE", SPA_TYPE_Int, NULL },
{ SPA_AUDIO_FORMAT_F32_BE, SPA_TYPE_INFO_AUDIO_FORMAT_BASE "F32BE", SPA_TYPE_Int, NULL },
{ SPA_AUDIO_FORMAT_F64_LE, SPA_TYPE_INFO_AUDIO_FORMAT_BASE "F64LE", SPA_TYPE_Int, NULL },
{ SPA_AUDIO_FORMAT_F64_BE, SPA_TYPE_INFO_AUDIO_FORMAT_BASE "F64BE", SPA_TYPE_Int, NULL },
{ SPA_AUDIO_FORMAT_UNKNOWN, SPA_TYPE_Int, SPA_TYPE_INFO_AUDIO_FORMAT_BASE "UNKNOWN", NULL },
{ SPA_AUDIO_FORMAT_ENCODED, SPA_TYPE_Int, SPA_TYPE_INFO_AUDIO_FORMAT_BASE "ENCODED", NULL },
{ SPA_AUDIO_FORMAT_S8, SPA_TYPE_Int, SPA_TYPE_INFO_AUDIO_FORMAT_BASE "S8", NULL },
{ SPA_AUDIO_FORMAT_U8, SPA_TYPE_Int, SPA_TYPE_INFO_AUDIO_FORMAT_BASE "U8", NULL },
{ SPA_AUDIO_FORMAT_S16_LE, SPA_TYPE_Int, SPA_TYPE_INFO_AUDIO_FORMAT_BASE "S16LE", NULL },
{ SPA_AUDIO_FORMAT_S16_BE, SPA_TYPE_Int, SPA_TYPE_INFO_AUDIO_FORMAT_BASE "S16BE", NULL },
{ SPA_AUDIO_FORMAT_U16_LE, SPA_TYPE_Int, SPA_TYPE_INFO_AUDIO_FORMAT_BASE "U16LE", NULL },
{ SPA_AUDIO_FORMAT_U16_BE, SPA_TYPE_Int, SPA_TYPE_INFO_AUDIO_FORMAT_BASE "U16BE", NULL },
{ SPA_AUDIO_FORMAT_S24_32_LE, SPA_TYPE_Int, SPA_TYPE_INFO_AUDIO_FORMAT_BASE "S24_32LE", NULL },
{ SPA_AUDIO_FORMAT_S24_32_BE, SPA_TYPE_Int, SPA_TYPE_INFO_AUDIO_FORMAT_BASE "S24_32BE", NULL },
{ SPA_AUDIO_FORMAT_U24_32_LE, SPA_TYPE_Int, SPA_TYPE_INFO_AUDIO_FORMAT_BASE "U24_32LE", NULL },
{ SPA_AUDIO_FORMAT_U24_32_BE, SPA_TYPE_Int, SPA_TYPE_INFO_AUDIO_FORMAT_BASE "U24_32BE", NULL },
{ SPA_AUDIO_FORMAT_S32_LE, SPA_TYPE_Int, SPA_TYPE_INFO_AUDIO_FORMAT_BASE "S32LE", NULL },
{ SPA_AUDIO_FORMAT_S32_BE, SPA_TYPE_Int, SPA_TYPE_INFO_AUDIO_FORMAT_BASE "S32BE", NULL },
{ SPA_AUDIO_FORMAT_U32_LE, SPA_TYPE_Int, SPA_TYPE_INFO_AUDIO_FORMAT_BASE "U32LE", NULL },
{ SPA_AUDIO_FORMAT_U32_BE, SPA_TYPE_Int, SPA_TYPE_INFO_AUDIO_FORMAT_BASE "U32BE", NULL },
{ SPA_AUDIO_FORMAT_S24_LE, SPA_TYPE_Int, SPA_TYPE_INFO_AUDIO_FORMAT_BASE "S24LE", NULL },
{ SPA_AUDIO_FORMAT_S24_BE, SPA_TYPE_Int, SPA_TYPE_INFO_AUDIO_FORMAT_BASE "S24BE", NULL },
{ SPA_AUDIO_FORMAT_U24_LE, SPA_TYPE_Int, SPA_TYPE_INFO_AUDIO_FORMAT_BASE "U24LE", NULL },
{ SPA_AUDIO_FORMAT_U24_BE, SPA_TYPE_Int, SPA_TYPE_INFO_AUDIO_FORMAT_BASE "U24BE", NULL },
{ SPA_AUDIO_FORMAT_S20_LE, SPA_TYPE_Int, SPA_TYPE_INFO_AUDIO_FORMAT_BASE "S20LE", NULL },
{ SPA_AUDIO_FORMAT_S20_BE, SPA_TYPE_Int, SPA_TYPE_INFO_AUDIO_FORMAT_BASE "S20BE", NULL },
{ SPA_AUDIO_FORMAT_U20_LE, SPA_TYPE_Int, SPA_TYPE_INFO_AUDIO_FORMAT_BASE "U20LE", NULL },
{ SPA_AUDIO_FORMAT_U20_BE, SPA_TYPE_Int, SPA_TYPE_INFO_AUDIO_FORMAT_BASE "U20BE", NULL },
{ SPA_AUDIO_FORMAT_S18_LE, SPA_TYPE_Int, SPA_TYPE_INFO_AUDIO_FORMAT_BASE "S18LE", NULL },
{ SPA_AUDIO_FORMAT_S18_BE, SPA_TYPE_Int, SPA_TYPE_INFO_AUDIO_FORMAT_BASE "S18BE", NULL },
{ SPA_AUDIO_FORMAT_U18_LE, SPA_TYPE_Int, SPA_TYPE_INFO_AUDIO_FORMAT_BASE "U18LE", NULL },
{ SPA_AUDIO_FORMAT_U18_BE, SPA_TYPE_Int, SPA_TYPE_INFO_AUDIO_FORMAT_BASE "U18BE", NULL },
{ SPA_AUDIO_FORMAT_F32_LE, SPA_TYPE_Int, SPA_TYPE_INFO_AUDIO_FORMAT_BASE "F32LE", NULL },
{ SPA_AUDIO_FORMAT_F32_BE, SPA_TYPE_Int, SPA_TYPE_INFO_AUDIO_FORMAT_BASE "F32BE", NULL },
{ SPA_AUDIO_FORMAT_F64_LE, SPA_TYPE_Int, SPA_TYPE_INFO_AUDIO_FORMAT_BASE "F64LE", NULL },
{ SPA_AUDIO_FORMAT_F64_BE, SPA_TYPE_Int, SPA_TYPE_INFO_AUDIO_FORMAT_BASE "F64BE", NULL },
{ SPA_AUDIO_FORMAT_U8P, SPA_TYPE_INFO_AUDIO_FORMAT_BASE "U8P", SPA_TYPE_Int, NULL },
{ SPA_AUDIO_FORMAT_S16P, SPA_TYPE_INFO_AUDIO_FORMAT_BASE "S16P", SPA_TYPE_Int, NULL },
{ SPA_AUDIO_FORMAT_S24_32P, SPA_TYPE_INFO_AUDIO_FORMAT_BASE "S24_32P", SPA_TYPE_Int, NULL },
{ SPA_AUDIO_FORMAT_S32P, SPA_TYPE_INFO_AUDIO_FORMAT_BASE "S32P", SPA_TYPE_Int, NULL },
{ SPA_AUDIO_FORMAT_S24P, SPA_TYPE_INFO_AUDIO_FORMAT_BASE "S24P", SPA_TYPE_Int, NULL },
{ SPA_AUDIO_FORMAT_F32P, SPA_TYPE_INFO_AUDIO_FORMAT_BASE "F32P", SPA_TYPE_Int, NULL },
{ SPA_AUDIO_FORMAT_F64P, SPA_TYPE_INFO_AUDIO_FORMAT_BASE "F64P", SPA_TYPE_Int, NULL },
{ SPA_AUDIO_FORMAT_U8P, SPA_TYPE_Int, SPA_TYPE_INFO_AUDIO_FORMAT_BASE "U8P", NULL },
{ SPA_AUDIO_FORMAT_S16P, SPA_TYPE_Int, SPA_TYPE_INFO_AUDIO_FORMAT_BASE "S16P", NULL },
{ SPA_AUDIO_FORMAT_S24_32P, SPA_TYPE_Int, SPA_TYPE_INFO_AUDIO_FORMAT_BASE "S24_32P", NULL },
{ SPA_AUDIO_FORMAT_S32P, SPA_TYPE_Int, SPA_TYPE_INFO_AUDIO_FORMAT_BASE "S32P", NULL },
{ SPA_AUDIO_FORMAT_S24P, SPA_TYPE_Int, SPA_TYPE_INFO_AUDIO_FORMAT_BASE "S24P", NULL },
{ SPA_AUDIO_FORMAT_F32P, SPA_TYPE_Int, SPA_TYPE_INFO_AUDIO_FORMAT_BASE "F32P", NULL },
{ SPA_AUDIO_FORMAT_F64P, SPA_TYPE_Int, SPA_TYPE_INFO_AUDIO_FORMAT_BASE "F64P", NULL },
{ 0, NULL, 0, NULL },
{ 0, 0, NULL, NULL },
};
#define SPA_TYPE_INFO_AudioFlags SPA_TYPE_INFO_FLAGS_BASE "AudioFlags"
#define SPA_TYPE_INFO_AUDIO_FLAGS_BASE SPA_TYPE_INFO_AudioFlags ":"
static const struct spa_type_info spa_type_audio_flags[] = {
{ SPA_AUDIO_FLAG_NONE, SPA_TYPE_INFO_AUDIO_FLAGS_BASE "none", SPA_TYPE_Int, NULL },
{ SPA_AUDIO_FLAG_UNPOSITIONED, SPA_TYPE_INFO_AUDIO_FLAGS_BASE "unpositioned", SPA_TYPE_Int, NULL },
{ 0, NULL, 0, NULL },
{ SPA_AUDIO_FLAG_NONE, SPA_TYPE_Int, SPA_TYPE_INFO_AUDIO_FLAGS_BASE "none", NULL },
{ SPA_AUDIO_FLAG_UNPOSITIONED, SPA_TYPE_Int, SPA_TYPE_INFO_AUDIO_FLAGS_BASE "unpositioned", NULL },
{ 0, 0, NULL, NULL },
};
#define SPA_TYPE_INFO_AudioChannel SPA_TYPE_INFO_ENUM_BASE "AudioChannel"
#define SPA_TYPE_INFO_AUDIO_CHANNEL_BASE SPA_TYPE_INFO_AudioChannel ":"
static const struct spa_type_info spa_type_audio_channel[] = {
{ SPA_AUDIO_CHANNEL_UNKNOWN, SPA_TYPE_INFO_AUDIO_CHANNEL_BASE "UNK", SPA_TYPE_Int, NULL },
{ SPA_AUDIO_CHANNEL_NA, SPA_TYPE_INFO_AUDIO_CHANNEL_BASE "NA", SPA_TYPE_Int, NULL },
{ SPA_AUDIO_CHANNEL_MONO, SPA_TYPE_INFO_AUDIO_CHANNEL_BASE "MONO", SPA_TYPE_Int, NULL },
{ SPA_AUDIO_CHANNEL_FL, SPA_TYPE_INFO_AUDIO_CHANNEL_BASE "FL", SPA_TYPE_Int, NULL },
{ SPA_AUDIO_CHANNEL_FR, SPA_TYPE_INFO_AUDIO_CHANNEL_BASE "FR", SPA_TYPE_Int, NULL },
{ SPA_AUDIO_CHANNEL_FC, SPA_TYPE_INFO_AUDIO_CHANNEL_BASE "FC", SPA_TYPE_Int, NULL },
{ SPA_AUDIO_CHANNEL_LFE, SPA_TYPE_INFO_AUDIO_CHANNEL_BASE "LFE", SPA_TYPE_Int, NULL },
{ SPA_AUDIO_CHANNEL_SL, SPA_TYPE_INFO_AUDIO_CHANNEL_BASE "SL", SPA_TYPE_Int, NULL },
{ SPA_AUDIO_CHANNEL_SR, SPA_TYPE_INFO_AUDIO_CHANNEL_BASE "SR", SPA_TYPE_Int, NULL },
{ SPA_AUDIO_CHANNEL_FLC, SPA_TYPE_INFO_AUDIO_CHANNEL_BASE "FLC", SPA_TYPE_Int, NULL },
{ SPA_AUDIO_CHANNEL_FRC, SPA_TYPE_INFO_AUDIO_CHANNEL_BASE "FRC", SPA_TYPE_Int, NULL },
{ SPA_AUDIO_CHANNEL_RC, SPA_TYPE_INFO_AUDIO_CHANNEL_BASE "RC", SPA_TYPE_Int, NULL },
{ SPA_AUDIO_CHANNEL_RL, SPA_TYPE_INFO_AUDIO_CHANNEL_BASE "RL", SPA_TYPE_Int, NULL },
{ SPA_AUDIO_CHANNEL_RR, SPA_TYPE_INFO_AUDIO_CHANNEL_BASE "RR", SPA_TYPE_Int, NULL },
{ SPA_AUDIO_CHANNEL_TC, SPA_TYPE_INFO_AUDIO_CHANNEL_BASE "TC", SPA_TYPE_Int, NULL },
{ SPA_AUDIO_CHANNEL_TFL, SPA_TYPE_INFO_AUDIO_CHANNEL_BASE "TFL", SPA_TYPE_Int, NULL },
{ SPA_AUDIO_CHANNEL_TFC, SPA_TYPE_INFO_AUDIO_CHANNEL_BASE "TFC", SPA_TYPE_Int, NULL },
{ SPA_AUDIO_CHANNEL_TFR, SPA_TYPE_INFO_AUDIO_CHANNEL_BASE "TFR", SPA_TYPE_Int, NULL },
{ SPA_AUDIO_CHANNEL_TRL, SPA_TYPE_INFO_AUDIO_CHANNEL_BASE "TRL", SPA_TYPE_Int, NULL },
{ SPA_AUDIO_CHANNEL_TRC, SPA_TYPE_INFO_AUDIO_CHANNEL_BASE "TRC", SPA_TYPE_Int, NULL },
{ SPA_AUDIO_CHANNEL_TRR, SPA_TYPE_INFO_AUDIO_CHANNEL_BASE "TRR", SPA_TYPE_Int, NULL },
{ SPA_AUDIO_CHANNEL_RLC, SPA_TYPE_INFO_AUDIO_CHANNEL_BASE "RLC", SPA_TYPE_Int, NULL },
{ SPA_AUDIO_CHANNEL_RRC, SPA_TYPE_INFO_AUDIO_CHANNEL_BASE "RRC", SPA_TYPE_Int, NULL },
{ SPA_AUDIO_CHANNEL_FLW, SPA_TYPE_INFO_AUDIO_CHANNEL_BASE "FLW", SPA_TYPE_Int, NULL },
{ SPA_AUDIO_CHANNEL_FRW, SPA_TYPE_INFO_AUDIO_CHANNEL_BASE "FRW", SPA_TYPE_Int, NULL },
{ SPA_AUDIO_CHANNEL_LFE2, SPA_TYPE_INFO_AUDIO_CHANNEL_BASE "LFE2", SPA_TYPE_Int, NULL },
{ SPA_AUDIO_CHANNEL_FLH, SPA_TYPE_INFO_AUDIO_CHANNEL_BASE "FLH", SPA_TYPE_Int, NULL },
{ SPA_AUDIO_CHANNEL_FCH, SPA_TYPE_INFO_AUDIO_CHANNEL_BASE "FCH", SPA_TYPE_Int, NULL },
{ SPA_AUDIO_CHANNEL_FRH, SPA_TYPE_INFO_AUDIO_CHANNEL_BASE "FRH", SPA_TYPE_Int, NULL },
{ SPA_AUDIO_CHANNEL_TFLC, SPA_TYPE_INFO_AUDIO_CHANNEL_BASE "TFLC", SPA_TYPE_Int, NULL },
{ SPA_AUDIO_CHANNEL_TFRC, SPA_TYPE_INFO_AUDIO_CHANNEL_BASE "TFRC", SPA_TYPE_Int, NULL },
{ SPA_AUDIO_CHANNEL_TSL, SPA_TYPE_INFO_AUDIO_CHANNEL_BASE "TSL", SPA_TYPE_Int, NULL },
{ SPA_AUDIO_CHANNEL_TSR, SPA_TYPE_INFO_AUDIO_CHANNEL_BASE "TSR", SPA_TYPE_Int, NULL },
{ SPA_AUDIO_CHANNEL_LLFE, SPA_TYPE_INFO_AUDIO_CHANNEL_BASE "LLFR", SPA_TYPE_Int, NULL },
{ SPA_AUDIO_CHANNEL_RLFE, SPA_TYPE_INFO_AUDIO_CHANNEL_BASE "RLFE", SPA_TYPE_Int, NULL },
{ SPA_AUDIO_CHANNEL_BC, SPA_TYPE_INFO_AUDIO_CHANNEL_BASE "BC", SPA_TYPE_Int, NULL },
{ SPA_AUDIO_CHANNEL_BLC, SPA_TYPE_INFO_AUDIO_CHANNEL_BASE "BLC", SPA_TYPE_Int, NULL },
{ SPA_AUDIO_CHANNEL_BRC, SPA_TYPE_INFO_AUDIO_CHANNEL_BASE "BRC", SPA_TYPE_Int, NULL },
{ 0, NULL, 0, NULL },
{ SPA_AUDIO_CHANNEL_UNKNOWN, SPA_TYPE_Int, SPA_TYPE_INFO_AUDIO_CHANNEL_BASE "UNK", NULL },
{ SPA_AUDIO_CHANNEL_NA, SPA_TYPE_Int, SPA_TYPE_INFO_AUDIO_CHANNEL_BASE "NA", NULL },
{ SPA_AUDIO_CHANNEL_MONO, SPA_TYPE_Int, SPA_TYPE_INFO_AUDIO_CHANNEL_BASE "MONO", NULL },
{ SPA_AUDIO_CHANNEL_FL, SPA_TYPE_Int, SPA_TYPE_INFO_AUDIO_CHANNEL_BASE "FL", NULL },
{ SPA_AUDIO_CHANNEL_FR, SPA_TYPE_Int, SPA_TYPE_INFO_AUDIO_CHANNEL_BASE "FR", NULL },
{ SPA_AUDIO_CHANNEL_FC, SPA_TYPE_Int, SPA_TYPE_INFO_AUDIO_CHANNEL_BASE "FC", NULL },
{ SPA_AUDIO_CHANNEL_LFE, SPA_TYPE_Int, SPA_TYPE_INFO_AUDIO_CHANNEL_BASE "LFE", NULL },
{ SPA_AUDIO_CHANNEL_SL, SPA_TYPE_Int, SPA_TYPE_INFO_AUDIO_CHANNEL_BASE "SL", NULL },
{ SPA_AUDIO_CHANNEL_SR, SPA_TYPE_Int, SPA_TYPE_INFO_AUDIO_CHANNEL_BASE "SR", NULL },
{ SPA_AUDIO_CHANNEL_FLC, SPA_TYPE_Int, SPA_TYPE_INFO_AUDIO_CHANNEL_BASE "FLC", NULL },
{ SPA_AUDIO_CHANNEL_FRC, SPA_TYPE_Int, SPA_TYPE_INFO_AUDIO_CHANNEL_BASE "FRC", NULL },
{ SPA_AUDIO_CHANNEL_RC, SPA_TYPE_Int, SPA_TYPE_INFO_AUDIO_CHANNEL_BASE "RC", NULL },
{ SPA_AUDIO_CHANNEL_RL, SPA_TYPE_Int, SPA_TYPE_INFO_AUDIO_CHANNEL_BASE "RL", NULL },
{ SPA_AUDIO_CHANNEL_RR, SPA_TYPE_Int, SPA_TYPE_INFO_AUDIO_CHANNEL_BASE "RR", NULL },
{ SPA_AUDIO_CHANNEL_TC, SPA_TYPE_Int, SPA_TYPE_INFO_AUDIO_CHANNEL_BASE "TC", NULL },
{ SPA_AUDIO_CHANNEL_TFL, SPA_TYPE_Int, SPA_TYPE_INFO_AUDIO_CHANNEL_BASE "TFL", NULL },
{ SPA_AUDIO_CHANNEL_TFC, SPA_TYPE_Int, SPA_TYPE_INFO_AUDIO_CHANNEL_BASE "TFC", NULL },
{ SPA_AUDIO_CHANNEL_TFR, SPA_TYPE_Int, SPA_TYPE_INFO_AUDIO_CHANNEL_BASE "TFR", NULL },
{ SPA_AUDIO_CHANNEL_TRL, SPA_TYPE_Int, SPA_TYPE_INFO_AUDIO_CHANNEL_BASE "TRL", NULL },
{ SPA_AUDIO_CHANNEL_TRC, SPA_TYPE_Int, SPA_TYPE_INFO_AUDIO_CHANNEL_BASE "TRC", NULL },
{ SPA_AUDIO_CHANNEL_TRR, SPA_TYPE_Int, SPA_TYPE_INFO_AUDIO_CHANNEL_BASE "TRR", NULL },
{ SPA_AUDIO_CHANNEL_RLC, SPA_TYPE_Int, SPA_TYPE_INFO_AUDIO_CHANNEL_BASE "RLC", NULL },
{ SPA_AUDIO_CHANNEL_RRC, SPA_TYPE_Int, SPA_TYPE_INFO_AUDIO_CHANNEL_BASE "RRC", NULL },
{ SPA_AUDIO_CHANNEL_FLW, SPA_TYPE_Int, SPA_TYPE_INFO_AUDIO_CHANNEL_BASE "FLW", NULL },
{ SPA_AUDIO_CHANNEL_FRW, SPA_TYPE_Int, SPA_TYPE_INFO_AUDIO_CHANNEL_BASE "FRW", NULL },
{ SPA_AUDIO_CHANNEL_LFE2, SPA_TYPE_Int, SPA_TYPE_INFO_AUDIO_CHANNEL_BASE "LFE2", NULL },
{ SPA_AUDIO_CHANNEL_FLH, SPA_TYPE_Int, SPA_TYPE_INFO_AUDIO_CHANNEL_BASE "FLH", NULL },
{ SPA_AUDIO_CHANNEL_FCH, SPA_TYPE_Int, SPA_TYPE_INFO_AUDIO_CHANNEL_BASE "FCH", NULL },
{ SPA_AUDIO_CHANNEL_FRH, SPA_TYPE_Int, SPA_TYPE_INFO_AUDIO_CHANNEL_BASE "FRH", NULL },
{ SPA_AUDIO_CHANNEL_TFLC, SPA_TYPE_Int, SPA_TYPE_INFO_AUDIO_CHANNEL_BASE "TFLC", NULL },
{ SPA_AUDIO_CHANNEL_TFRC, SPA_TYPE_Int, SPA_TYPE_INFO_AUDIO_CHANNEL_BASE "TFRC", NULL },
{ SPA_AUDIO_CHANNEL_TSL, SPA_TYPE_Int, SPA_TYPE_INFO_AUDIO_CHANNEL_BASE "TSL", NULL },
{ SPA_AUDIO_CHANNEL_TSR, SPA_TYPE_Int, SPA_TYPE_INFO_AUDIO_CHANNEL_BASE "TSR", NULL },
{ SPA_AUDIO_CHANNEL_LLFE, SPA_TYPE_Int, SPA_TYPE_INFO_AUDIO_CHANNEL_BASE "LLFR", NULL },
{ SPA_AUDIO_CHANNEL_RLFE, SPA_TYPE_Int, SPA_TYPE_INFO_AUDIO_CHANNEL_BASE "RLFE", NULL },
{ SPA_AUDIO_CHANNEL_BC, SPA_TYPE_Int, SPA_TYPE_INFO_AUDIO_CHANNEL_BASE "BC", NULL },
{ SPA_AUDIO_CHANNEL_BLC, SPA_TYPE_Int, SPA_TYPE_INFO_AUDIO_CHANNEL_BASE "BLC", NULL },
{ SPA_AUDIO_CHANNEL_BRC, SPA_TYPE_Int, SPA_TYPE_INFO_AUDIO_CHANNEL_BASE "BRC", NULL },
{ 0, 0, NULL, NULL },
};
#ifdef __cplusplus

View file

@ -40,17 +40,17 @@ extern "C" {
#define SPA_TYPE_INFO_PARAM_ID_BASE SPA_TYPE_INFO_ParamId ":"
static const struct spa_type_info spa_type_param[] = {
{ SPA_PARAM_Invalid, SPA_TYPE_INFO_PARAM_ID_BASE "Invalid", SPA_TYPE_Int, NULL },
{ SPA_PARAM_List, SPA_TYPE_INFO_PARAM_ID_BASE "List", SPA_TYPE_Int, NULL },
{ SPA_PARAM_PropInfo, SPA_TYPE_INFO_PARAM_ID_BASE "PropInfo", SPA_TYPE_Int, NULL },
{ SPA_PARAM_Props, SPA_TYPE_INFO_PARAM_ID_BASE "Props", SPA_TYPE_Int, NULL },
{ SPA_PARAM_EnumFormat, SPA_TYPE_INFO_PARAM_ID_BASE "EnumFormat", SPA_TYPE_Int, NULL },
{ SPA_PARAM_Format, SPA_TYPE_INFO_PARAM_ID_BASE "Format", SPA_TYPE_Int, NULL },
{ SPA_PARAM_Buffers, SPA_TYPE_INFO_PARAM_ID_BASE "Buffers", SPA_TYPE_Int, NULL },
{ SPA_PARAM_Meta, SPA_TYPE_INFO_PARAM_ID_BASE "Meta", SPA_TYPE_Int, NULL },
{ SPA_PARAM_IO, SPA_TYPE_INFO_PARAM_ID_BASE "IO", SPA_TYPE_Int, NULL },
{ SPA_PARAM_Profile, SPA_TYPE_INFO_PARAM_ID_BASE "Profile", SPA_TYPE_Int, NULL },
{ 0, NULL, 0, NULL },
{ SPA_PARAM_Invalid, SPA_TYPE_Int, SPA_TYPE_INFO_PARAM_ID_BASE "Invalid", NULL },
{ SPA_PARAM_List, SPA_TYPE_Int, SPA_TYPE_INFO_PARAM_ID_BASE "List", NULL },
{ SPA_PARAM_PropInfo, SPA_TYPE_Int, SPA_TYPE_INFO_PARAM_ID_BASE "PropInfo", NULL },
{ SPA_PARAM_Props, SPA_TYPE_Int, SPA_TYPE_INFO_PARAM_ID_BASE "Props", NULL },
{ SPA_PARAM_EnumFormat, SPA_TYPE_Int, SPA_TYPE_INFO_PARAM_ID_BASE "EnumFormat", NULL },
{ SPA_PARAM_Format, SPA_TYPE_Int, SPA_TYPE_INFO_PARAM_ID_BASE "Format", NULL },
{ SPA_PARAM_Buffers, SPA_TYPE_Int, SPA_TYPE_INFO_PARAM_ID_BASE "Buffers", NULL },
{ SPA_PARAM_Meta, SPA_TYPE_Int, SPA_TYPE_INFO_PARAM_ID_BASE "Meta", NULL },
{ SPA_PARAM_IO, SPA_TYPE_Int, SPA_TYPE_INFO_PARAM_ID_BASE "IO", NULL },
{ SPA_PARAM_Profile, SPA_TYPE_Int, SPA_TYPE_INFO_PARAM_ID_BASE "Profile", NULL },
{ 0, 0, NULL, NULL },
};
/* base for parameter objects */
@ -62,47 +62,47 @@ static const struct spa_type_info spa_type_param[] = {
#define SPA_TYPE_INFO_PARAM_LIST_BASE SPA_TYPE_INFO_PARAM_List ":"
static const struct spa_type_info spa_type_param_list[] = {
{ SPA_PARAM_LIST_START, SPA_TYPE_INFO_PARAM_LIST_BASE, SPA_TYPE_Id, spa_type_param },
{ SPA_PARAM_LIST_id, SPA_TYPE_INFO_PARAM_LIST_BASE "id", SPA_TYPE_Id, spa_type_param },
{ 0, NULL, 0, NULL },
{ SPA_PARAM_LIST_START, SPA_TYPE_Id, SPA_TYPE_INFO_PARAM_LIST_BASE, spa_type_param },
{ SPA_PARAM_LIST_id, SPA_TYPE_Id, SPA_TYPE_INFO_PARAM_LIST_BASE "id", spa_type_param },
{ 0, 0, NULL, NULL },
};
#define SPA_TYPE_INFO_Props SPA_TYPE_INFO_PARAM_BASE "Props"
#define SPA_TYPE_INFO_PROPS_BASE SPA_TYPE_INFO_Props ":"
static const struct spa_type_info spa_type_props[] = {
{ SPA_PROP_START, SPA_TYPE_INFO_PROPS_BASE, SPA_TYPE_Id, spa_type_param, },
{ SPA_PROP_unknown, SPA_TYPE_INFO_PROPS_BASE "unknown", SPA_TYPE_None, NULL },
{ SPA_PROP_device, SPA_TYPE_INFO_PROPS_BASE "device", SPA_TYPE_String, NULL },
{ SPA_PROP_deviceName, SPA_TYPE_INFO_PROPS_BASE "deviceName", SPA_TYPE_String, NULL },
{ SPA_PROP_deviceFd, SPA_TYPE_INFO_PROPS_BASE "deviceFd", SPA_TYPE_Fd, NULL },
{ SPA_PROP_card, SPA_TYPE_INFO_PROPS_BASE "card", SPA_TYPE_String, NULL },
{ SPA_PROP_cardName, SPA_TYPE_INFO_PROPS_BASE "cardName", SPA_TYPE_String, NULL },
{ SPA_PROP_minLatency, SPA_TYPE_INFO_PROPS_BASE "minLatency", SPA_TYPE_Int, NULL },
{ SPA_PROP_maxLatency, SPA_TYPE_INFO_PROPS_BASE "maxLatency", SPA_TYPE_Int, NULL },
{ SPA_PROP_periods, SPA_TYPE_INFO_PROPS_BASE "periods", SPA_TYPE_Int, NULL },
{ SPA_PROP_periodSize, SPA_TYPE_INFO_PROPS_BASE "periodSize", SPA_TYPE_Int, NULL },
{ SPA_PROP_periodEvent, SPA_TYPE_INFO_PROPS_BASE "periodEvent", SPA_TYPE_Bool, NULL },
{ SPA_PROP_live, SPA_TYPE_INFO_PROPS_BASE "live", SPA_TYPE_Bool, NULL },
{ SPA_PROP_rate, SPA_TYPE_INFO_PROPS_BASE "rate", SPA_TYPE_Double, NULL },
{ SPA_PROP_START, SPA_TYPE_Id, SPA_TYPE_INFO_PROPS_BASE, spa_type_param, },
{ SPA_PROP_unknown, SPA_TYPE_None, SPA_TYPE_INFO_PROPS_BASE "unknown", NULL },
{ SPA_PROP_device, SPA_TYPE_String, SPA_TYPE_INFO_PROPS_BASE "device", NULL },
{ SPA_PROP_deviceName, SPA_TYPE_String, SPA_TYPE_INFO_PROPS_BASE "deviceName", NULL },
{ SPA_PROP_deviceFd, SPA_TYPE_Fd, SPA_TYPE_INFO_PROPS_BASE "deviceFd", NULL },
{ SPA_PROP_card, SPA_TYPE_String, SPA_TYPE_INFO_PROPS_BASE "card", NULL },
{ SPA_PROP_cardName, SPA_TYPE_String, SPA_TYPE_INFO_PROPS_BASE "cardName", NULL },
{ SPA_PROP_minLatency, SPA_TYPE_Int, SPA_TYPE_INFO_PROPS_BASE "minLatency", NULL },
{ SPA_PROP_maxLatency, SPA_TYPE_Int, SPA_TYPE_INFO_PROPS_BASE "maxLatency", NULL },
{ SPA_PROP_periods, SPA_TYPE_Int, SPA_TYPE_INFO_PROPS_BASE "periods", NULL },
{ SPA_PROP_periodSize, SPA_TYPE_Int, SPA_TYPE_INFO_PROPS_BASE "periodSize", NULL },
{ SPA_PROP_periodEvent, SPA_TYPE_Bool, SPA_TYPE_INFO_PROPS_BASE "periodEvent", NULL },
{ SPA_PROP_live, SPA_TYPE_Bool, SPA_TYPE_INFO_PROPS_BASE "live", NULL },
{ SPA_PROP_rate, SPA_TYPE_Double, SPA_TYPE_INFO_PROPS_BASE "rate", NULL },
{ SPA_PROP_waveType, SPA_TYPE_INFO_PROPS_BASE "waveType", SPA_TYPE_Id, NULL },
{ SPA_PROP_frequency, SPA_TYPE_INFO_PROPS_BASE "frequency", SPA_TYPE_Int, NULL },
{ SPA_PROP_volume, SPA_TYPE_INFO_PROPS_BASE "volume", SPA_TYPE_Float, NULL },
{ SPA_PROP_mute, SPA_TYPE_INFO_PROPS_BASE "mute", SPA_TYPE_Bool, NULL },
{ SPA_PROP_patternType, SPA_TYPE_INFO_PROPS_BASE "patternType", SPA_TYPE_Id, NULL },
{ SPA_PROP_ditherType, SPA_TYPE_INFO_PROPS_BASE "ditherType", SPA_TYPE_Id, NULL },
{ SPA_PROP_truncate, SPA_TYPE_INFO_PROPS_BASE "truncate", SPA_TYPE_Bool, NULL },
{ SPA_PROP_waveType, SPA_TYPE_Id, SPA_TYPE_INFO_PROPS_BASE "waveType", NULL },
{ SPA_PROP_frequency, SPA_TYPE_Int, SPA_TYPE_INFO_PROPS_BASE "frequency", NULL },
{ SPA_PROP_volume, SPA_TYPE_Float, SPA_TYPE_INFO_PROPS_BASE "volume", NULL },
{ SPA_PROP_mute, SPA_TYPE_Bool, SPA_TYPE_INFO_PROPS_BASE "mute", NULL },
{ SPA_PROP_patternType, SPA_TYPE_Id, SPA_TYPE_INFO_PROPS_BASE "patternType", NULL },
{ SPA_PROP_ditherType, SPA_TYPE_Id, SPA_TYPE_INFO_PROPS_BASE "ditherType", NULL },
{ SPA_PROP_truncate, SPA_TYPE_Bool, SPA_TYPE_INFO_PROPS_BASE "truncate", NULL },
{ SPA_PROP_brightness, SPA_TYPE_INFO_PROPS_BASE "brightness", SPA_TYPE_Int, NULL },
{ SPA_PROP_contrast, SPA_TYPE_INFO_PROPS_BASE "contrast", SPA_TYPE_Int, NULL },
{ SPA_PROP_saturation, SPA_TYPE_INFO_PROPS_BASE "saturation", SPA_TYPE_Int, NULL },
{ SPA_PROP_hue, SPA_TYPE_INFO_PROPS_BASE "hue", SPA_TYPE_Int, NULL },
{ SPA_PROP_gamma, SPA_TYPE_INFO_PROPS_BASE "gamma", SPA_TYPE_Int, NULL },
{ SPA_PROP_exposure, SPA_TYPE_INFO_PROPS_BASE "exposure", SPA_TYPE_Int, NULL },
{ SPA_PROP_gain, SPA_TYPE_INFO_PROPS_BASE "gain", SPA_TYPE_Int, NULL },
{ SPA_PROP_sharpness, SPA_TYPE_INFO_PROPS_BASE "sharpness", SPA_TYPE_Int, NULL },
{ 0, NULL, 0, NULL },
{ SPA_PROP_brightness, SPA_TYPE_Int, SPA_TYPE_INFO_PROPS_BASE "brightness", NULL },
{ SPA_PROP_contrast, SPA_TYPE_Int, SPA_TYPE_INFO_PROPS_BASE "contrast", NULL },
{ SPA_PROP_saturation, SPA_TYPE_Int, SPA_TYPE_INFO_PROPS_BASE "saturation", NULL },
{ SPA_PROP_hue, SPA_TYPE_Int, SPA_TYPE_INFO_PROPS_BASE "hue", NULL },
{ SPA_PROP_gamma, SPA_TYPE_Int, SPA_TYPE_INFO_PROPS_BASE "gamma", NULL },
{ SPA_PROP_exposure, SPA_TYPE_Int, SPA_TYPE_INFO_PROPS_BASE "exposure", NULL },
{ SPA_PROP_gain, SPA_TYPE_Int, SPA_TYPE_INFO_PROPS_BASE "gain", NULL },
{ SPA_PROP_sharpness, SPA_TYPE_Int, SPA_TYPE_INFO_PROPS_BASE "sharpness", NULL },
{ 0, 0, NULL, NULL },
};
/** Enum Property info */
@ -110,22 +110,22 @@ static const struct spa_type_info spa_type_props[] = {
#define SPA_TYPE_INFO_PROP_INFO_BASE SPA_TYPE_INFO_PropInfo ":"
static const struct spa_type_info spa_type_prop_info[] = {
{ SPA_PROP_INFO_START, SPA_TYPE_INFO_PROP_INFO_BASE, SPA_TYPE_Id, spa_type_param, },
{ SPA_PROP_INFO_id, SPA_TYPE_INFO_PROP_INFO_BASE "id", SPA_TYPE_Id, spa_type_props },
{ SPA_PROP_INFO_name, SPA_TYPE_INFO_PROP_INFO_BASE "name", SPA_TYPE_String, NULL },
{ SPA_PROP_INFO_type, SPA_TYPE_INFO_PROP_INFO_BASE "type", SPA_TYPE_Pod, NULL },
{ SPA_PROP_INFO_labels, SPA_TYPE_INFO_PROP_INFO_BASE "labels", SPA_TYPE_Struct, NULL },
{ 0, NULL, 0, NULL },
{ SPA_PROP_INFO_START, SPA_TYPE_Id, SPA_TYPE_INFO_PROP_INFO_BASE, spa_type_param, },
{ SPA_PROP_INFO_id, SPA_TYPE_Id, SPA_TYPE_INFO_PROP_INFO_BASE "id", spa_type_props },
{ SPA_PROP_INFO_name, SPA_TYPE_String, SPA_TYPE_INFO_PROP_INFO_BASE "name", NULL },
{ SPA_PROP_INFO_type, SPA_TYPE_Pod, SPA_TYPE_INFO_PROP_INFO_BASE "type", NULL },
{ SPA_PROP_INFO_labels, SPA_TYPE_Struct, SPA_TYPE_INFO_PROP_INFO_BASE "labels", NULL },
{ 0, 0, NULL, NULL },
};
#define SPA_TYPE_INFO_PARAM_Meta SPA_TYPE_INFO_PARAM_BASE "Meta"
#define SPA_TYPE_INFO_PARAM_META_BASE SPA_TYPE_INFO_PARAM_Meta ":"
static const struct spa_type_info spa_type_param_meta[] = {
{ SPA_PARAM_META_START, SPA_TYPE_INFO_PARAM_META_BASE, SPA_TYPE_Id, spa_type_param },
{ SPA_PARAM_META_type, SPA_TYPE_INFO_PARAM_META_BASE "type", SPA_TYPE_Id, spa_type_meta_type },
{ SPA_PARAM_META_size, SPA_TYPE_INFO_PARAM_META_BASE "size", SPA_TYPE_Int, NULL },
{ 0, NULL, 0, NULL },
{ SPA_PARAM_META_START, SPA_TYPE_Id, SPA_TYPE_INFO_PARAM_META_BASE, spa_type_param },
{ SPA_PARAM_META_type, SPA_TYPE_Id, SPA_TYPE_INFO_PARAM_META_BASE "type", spa_type_meta_type },
{ SPA_PARAM_META_size, SPA_TYPE_Int, SPA_TYPE_INFO_PARAM_META_BASE "size", NULL },
{ 0, 0, NULL, NULL },
};
/** Base for parameters that describe IO areas to exchange data,
@ -135,10 +135,10 @@ static const struct spa_type_info spa_type_param_meta[] = {
#define SPA_TYPE_INFO_PARAM_IO_BASE SPA_TYPE_INFO_PARAM_IO ":"
static const struct spa_type_info spa_type_param_io[] = {
{ SPA_PARAM_IO_START, SPA_TYPE_INFO_PARAM_IO_BASE, SPA_TYPE_Id, spa_type_param, },
{ SPA_PARAM_IO_id, SPA_TYPE_INFO_PARAM_IO_BASE "id", SPA_TYPE_Id, spa_type_io },
{ SPA_PARAM_IO_size, SPA_TYPE_INFO_PARAM_IO_BASE "size", SPA_TYPE_Int, NULL },
{ 0, NULL, 0, NULL },
{ SPA_PARAM_IO_START, SPA_TYPE_Id, SPA_TYPE_INFO_PARAM_IO_BASE, spa_type_param, },
{ SPA_PARAM_IO_id, SPA_TYPE_Id, SPA_TYPE_INFO_PARAM_IO_BASE "id", spa_type_io },
{ SPA_PARAM_IO_size, SPA_TYPE_Int, SPA_TYPE_INFO_PARAM_IO_BASE "size", NULL },
{ 0, 0, NULL, NULL },
};
#define SPA_TYPE_INFO_Format SPA_TYPE_INFO_PARAM_BASE "Format"
@ -151,53 +151,53 @@ static const struct spa_type_info spa_type_param_io[] = {
#include <spa/param/video/type-info.h>
static const struct spa_type_info spa_type_media_type[] = {
{ SPA_MEDIA_TYPE_unknown, SPA_TYPE_INFO_MEDIA_TYPE_BASE "unknown", SPA_TYPE_Int, NULL },
{ SPA_MEDIA_TYPE_audio, SPA_TYPE_INFO_MEDIA_TYPE_BASE "audio", SPA_TYPE_Int, NULL },
{ SPA_MEDIA_TYPE_video, SPA_TYPE_INFO_MEDIA_TYPE_BASE "video", SPA_TYPE_Int, NULL },
{ SPA_MEDIA_TYPE_image, SPA_TYPE_INFO_MEDIA_TYPE_BASE "image", SPA_TYPE_Int, NULL },
{ SPA_MEDIA_TYPE_binary, SPA_TYPE_INFO_MEDIA_TYPE_BASE "binary", SPA_TYPE_Int, NULL },
{ SPA_MEDIA_TYPE_stream, SPA_TYPE_INFO_MEDIA_TYPE_BASE "stream", SPA_TYPE_Int, NULL },
{ 0, NULL, 0, NULL },
{ SPA_MEDIA_TYPE_unknown, SPA_TYPE_Int, SPA_TYPE_INFO_MEDIA_TYPE_BASE "unknown", NULL },
{ SPA_MEDIA_TYPE_audio, SPA_TYPE_Int, SPA_TYPE_INFO_MEDIA_TYPE_BASE "audio", NULL },
{ SPA_MEDIA_TYPE_video, SPA_TYPE_Int, SPA_TYPE_INFO_MEDIA_TYPE_BASE "video", NULL },
{ SPA_MEDIA_TYPE_image, SPA_TYPE_Int, SPA_TYPE_INFO_MEDIA_TYPE_BASE "image", NULL },
{ SPA_MEDIA_TYPE_binary, SPA_TYPE_Int, SPA_TYPE_INFO_MEDIA_TYPE_BASE "binary", NULL },
{ SPA_MEDIA_TYPE_stream, SPA_TYPE_Int, SPA_TYPE_INFO_MEDIA_TYPE_BASE "stream", NULL },
{ 0, 0, NULL, NULL },
};
#define SPA_TYPE_INFO_MediaSubtype SPA_TYPE_INFO_ENUM_BASE "MediaSubtype"
#define SPA_TYPE_INFO_MEDIA_SUBTYPE_BASE SPA_TYPE_INFO_MediaSubtype ":"
static const struct spa_type_info spa_type_media_subtype[] = {
{ SPA_MEDIA_SUBTYPE_unknown, SPA_TYPE_INFO_MEDIA_SUBTYPE_BASE "unknown", SPA_TYPE_Int, NULL },
{ SPA_MEDIA_SUBTYPE_unknown, SPA_TYPE_Int, SPA_TYPE_INFO_MEDIA_SUBTYPE_BASE "unknown", NULL },
/* generic subtypes */
{ SPA_MEDIA_SUBTYPE_raw, SPA_TYPE_INFO_MEDIA_SUBTYPE_BASE "raw", SPA_TYPE_Int, NULL },
{ SPA_MEDIA_SUBTYPE_raw, SPA_TYPE_Int, SPA_TYPE_INFO_MEDIA_SUBTYPE_BASE "raw", NULL },
/* audio subtypes */
{ SPA_MEDIA_SUBTYPE_mp3, SPA_TYPE_INFO_MEDIA_SUBTYPE_BASE "mp3", SPA_TYPE_Int, NULL },
{ SPA_MEDIA_SUBTYPE_aac, SPA_TYPE_INFO_MEDIA_SUBTYPE_BASE "aac", SPA_TYPE_Int, NULL },
{ SPA_MEDIA_SUBTYPE_vorbis, SPA_TYPE_INFO_MEDIA_SUBTYPE_BASE "vorbis", SPA_TYPE_Int, NULL },
{ SPA_MEDIA_SUBTYPE_wma, SPA_TYPE_INFO_MEDIA_SUBTYPE_BASE "wma", SPA_TYPE_Int, NULL },
{ SPA_MEDIA_SUBTYPE_ra, SPA_TYPE_INFO_MEDIA_SUBTYPE_BASE "ra", SPA_TYPE_Int, NULL },
{ SPA_MEDIA_SUBTYPE_sbc, SPA_TYPE_INFO_MEDIA_SUBTYPE_BASE "sbc", SPA_TYPE_Int, NULL },
{ SPA_MEDIA_SUBTYPE_adpcm, SPA_TYPE_INFO_MEDIA_SUBTYPE_BASE "adpcm", SPA_TYPE_Int, NULL },
{ SPA_MEDIA_SUBTYPE_g723, SPA_TYPE_INFO_MEDIA_SUBTYPE_BASE "g723", SPA_TYPE_Int, NULL },
{ SPA_MEDIA_SUBTYPE_g726, SPA_TYPE_INFO_MEDIA_SUBTYPE_BASE "g726", SPA_TYPE_Int, NULL },
{ SPA_MEDIA_SUBTYPE_g729, SPA_TYPE_INFO_MEDIA_SUBTYPE_BASE "g729", SPA_TYPE_Int, NULL },
{ SPA_MEDIA_SUBTYPE_amr, SPA_TYPE_INFO_MEDIA_SUBTYPE_BASE "amr", SPA_TYPE_Int, NULL },
{ SPA_MEDIA_SUBTYPE_gsm, SPA_TYPE_INFO_MEDIA_SUBTYPE_BASE "gsm", SPA_TYPE_Int, NULL },
{ SPA_MEDIA_SUBTYPE_mp3, SPA_TYPE_Int, SPA_TYPE_INFO_MEDIA_SUBTYPE_BASE "mp3", NULL },
{ SPA_MEDIA_SUBTYPE_aac, SPA_TYPE_Int, SPA_TYPE_INFO_MEDIA_SUBTYPE_BASE "aac", NULL },
{ SPA_MEDIA_SUBTYPE_vorbis, SPA_TYPE_Int, SPA_TYPE_INFO_MEDIA_SUBTYPE_BASE "vorbis", NULL },
{ SPA_MEDIA_SUBTYPE_wma, SPA_TYPE_Int, SPA_TYPE_INFO_MEDIA_SUBTYPE_BASE "wma", NULL },
{ SPA_MEDIA_SUBTYPE_ra, SPA_TYPE_Int, SPA_TYPE_INFO_MEDIA_SUBTYPE_BASE "ra", NULL },
{ SPA_MEDIA_SUBTYPE_sbc, SPA_TYPE_Int, SPA_TYPE_INFO_MEDIA_SUBTYPE_BASE "sbc", NULL },
{ SPA_MEDIA_SUBTYPE_adpcm, SPA_TYPE_Int, SPA_TYPE_INFO_MEDIA_SUBTYPE_BASE "adpcm", NULL },
{ SPA_MEDIA_SUBTYPE_g723, SPA_TYPE_Int, SPA_TYPE_INFO_MEDIA_SUBTYPE_BASE "g723", NULL },
{ SPA_MEDIA_SUBTYPE_g726, SPA_TYPE_Int, SPA_TYPE_INFO_MEDIA_SUBTYPE_BASE "g726", NULL },
{ SPA_MEDIA_SUBTYPE_g729, SPA_TYPE_Int, SPA_TYPE_INFO_MEDIA_SUBTYPE_BASE "g729", NULL },
{ SPA_MEDIA_SUBTYPE_amr, SPA_TYPE_Int, SPA_TYPE_INFO_MEDIA_SUBTYPE_BASE "amr", NULL },
{ SPA_MEDIA_SUBTYPE_gsm, SPA_TYPE_Int, SPA_TYPE_INFO_MEDIA_SUBTYPE_BASE "gsm", NULL },
/* video subtypes */
{ SPA_MEDIA_SUBTYPE_h264, SPA_TYPE_INFO_MEDIA_SUBTYPE_BASE "h264", SPA_TYPE_Int, NULL },
{ SPA_MEDIA_SUBTYPE_mjpg, SPA_TYPE_INFO_MEDIA_SUBTYPE_BASE "mjpg", SPA_TYPE_Int, NULL },
{ SPA_MEDIA_SUBTYPE_dv, SPA_TYPE_INFO_MEDIA_SUBTYPE_BASE "dv", SPA_TYPE_Int, NULL },
{ SPA_MEDIA_SUBTYPE_mpegts, SPA_TYPE_INFO_MEDIA_SUBTYPE_BASE "mpegts", SPA_TYPE_Int, NULL },
{ SPA_MEDIA_SUBTYPE_h263, SPA_TYPE_INFO_MEDIA_SUBTYPE_BASE "h263", SPA_TYPE_Int, NULL },
{ SPA_MEDIA_SUBTYPE_mpeg1, SPA_TYPE_INFO_MEDIA_SUBTYPE_BASE "mpeg1", SPA_TYPE_Int, NULL },
{ SPA_MEDIA_SUBTYPE_mpeg2, SPA_TYPE_INFO_MEDIA_SUBTYPE_BASE "mpeg2", SPA_TYPE_Int, NULL },
{ SPA_MEDIA_SUBTYPE_mpeg4, SPA_TYPE_INFO_MEDIA_SUBTYPE_BASE "mpeg4", SPA_TYPE_Int, NULL },
{ SPA_MEDIA_SUBTYPE_xvid, SPA_TYPE_INFO_MEDIA_SUBTYPE_BASE "xvid", SPA_TYPE_Int, NULL },
{ SPA_MEDIA_SUBTYPE_vc1, SPA_TYPE_INFO_MEDIA_SUBTYPE_BASE "vc1", SPA_TYPE_Int, NULL },
{ SPA_MEDIA_SUBTYPE_vp8, SPA_TYPE_INFO_MEDIA_SUBTYPE_BASE "vp8", SPA_TYPE_Int, NULL },
{ SPA_MEDIA_SUBTYPE_vp9, SPA_TYPE_INFO_MEDIA_SUBTYPE_BASE "vp9", SPA_TYPE_Int, NULL },
{ SPA_MEDIA_SUBTYPE_jpeg, SPA_TYPE_INFO_MEDIA_SUBTYPE_BASE "jpeg", SPA_TYPE_Int, NULL },
{ SPA_MEDIA_SUBTYPE_bayer, SPA_TYPE_INFO_MEDIA_SUBTYPE_BASE "bayer", SPA_TYPE_Int, NULL },
{ SPA_MEDIA_SUBTYPE_h264, SPA_TYPE_Int, SPA_TYPE_INFO_MEDIA_SUBTYPE_BASE "h264", NULL },
{ SPA_MEDIA_SUBTYPE_mjpg, SPA_TYPE_Int, SPA_TYPE_INFO_MEDIA_SUBTYPE_BASE "mjpg", NULL },
{ SPA_MEDIA_SUBTYPE_dv, SPA_TYPE_Int, SPA_TYPE_INFO_MEDIA_SUBTYPE_BASE "dv", NULL },
{ SPA_MEDIA_SUBTYPE_mpegts, SPA_TYPE_Int, SPA_TYPE_INFO_MEDIA_SUBTYPE_BASE "mpegts", NULL },
{ SPA_MEDIA_SUBTYPE_h263, SPA_TYPE_Int, SPA_TYPE_INFO_MEDIA_SUBTYPE_BASE "h263", NULL },
{ SPA_MEDIA_SUBTYPE_mpeg1, SPA_TYPE_Int, SPA_TYPE_INFO_MEDIA_SUBTYPE_BASE "mpeg1", NULL },
{ SPA_MEDIA_SUBTYPE_mpeg2, SPA_TYPE_Int, SPA_TYPE_INFO_MEDIA_SUBTYPE_BASE "mpeg2", NULL },
{ SPA_MEDIA_SUBTYPE_mpeg4, SPA_TYPE_Int, SPA_TYPE_INFO_MEDIA_SUBTYPE_BASE "mpeg4", NULL },
{ SPA_MEDIA_SUBTYPE_xvid, SPA_TYPE_Int, SPA_TYPE_INFO_MEDIA_SUBTYPE_BASE "xvid", NULL },
{ SPA_MEDIA_SUBTYPE_vc1, SPA_TYPE_Int, SPA_TYPE_INFO_MEDIA_SUBTYPE_BASE "vc1", NULL },
{ SPA_MEDIA_SUBTYPE_vp8, SPA_TYPE_Int, SPA_TYPE_INFO_MEDIA_SUBTYPE_BASE "vp8", NULL },
{ SPA_MEDIA_SUBTYPE_vp9, SPA_TYPE_Int, SPA_TYPE_INFO_MEDIA_SUBTYPE_BASE "vp9", NULL },
{ SPA_MEDIA_SUBTYPE_jpeg, SPA_TYPE_Int, SPA_TYPE_INFO_MEDIA_SUBTYPE_BASE "jpeg", NULL },
{ SPA_MEDIA_SUBTYPE_bayer, SPA_TYPE_Int, SPA_TYPE_INFO_MEDIA_SUBTYPE_BASE "bayer", NULL },
{ SPA_MEDIA_SUBTYPE_midi, SPA_TYPE_INFO_MEDIA_SUBTYPE_BASE "midi", SPA_TYPE_Int, NULL },
{ 0, NULL, 0, NULL },
{ SPA_MEDIA_SUBTYPE_midi, SPA_TYPE_Int, SPA_TYPE_INFO_MEDIA_SUBTYPE_BASE "midi", NULL },
{ 0, 0, NULL, NULL },
};
#define SPA_TYPE_INFO_FormatAudio SPA_TYPE_INFO_FORMAT_BASE "Audio"
@ -210,42 +210,43 @@ static const struct spa_type_info spa_type_media_subtype[] = {
#define SPA_TYPE_INFO_FORMAT_VIDEO_H264_BASE SPA_TYPE_INFO_FORMAT_VIDEO_H264 ":"
static const struct spa_type_info spa_type_format[] = {
{ SPA_FORMAT_START, SPA_TYPE_INFO_FORMAT_BASE, SPA_TYPE_Id, spa_type_param, },
{ SPA_FORMAT_START, SPA_TYPE_Id, SPA_TYPE_INFO_FORMAT_BASE, spa_type_param, },
{ SPA_FORMAT_mediaType, SPA_TYPE_INFO_FORMAT_BASE "mediaType", SPA_TYPE_Id,
{ SPA_FORMAT_mediaType, SPA_TYPE_Id, SPA_TYPE_INFO_FORMAT_BASE "mediaType",
spa_type_media_type, },
{ SPA_FORMAT_mediaSubtype, SPA_TYPE_INFO_FORMAT_BASE "mediaSubtype", SPA_TYPE_Id,
{ SPA_FORMAT_mediaSubtype, SPA_TYPE_Id, SPA_TYPE_INFO_FORMAT_BASE "mediaSubtype",
spa_type_media_subtype, },
{ SPA_FORMAT_AUDIO_format, SPA_TYPE_INFO_FORMAT_AUDIO_BASE "format", SPA_TYPE_Id,
{ SPA_FORMAT_AUDIO_format, SPA_TYPE_Id, SPA_TYPE_INFO_FORMAT_AUDIO_BASE "format",
spa_type_audio_format },
{ SPA_FORMAT_AUDIO_flags, SPA_TYPE_INFO_FORMAT_AUDIO_BASE "flags", SPA_TYPE_Id,
{ SPA_FORMAT_AUDIO_flags, SPA_TYPE_Id, SPA_TYPE_INFO_FORMAT_AUDIO_BASE "flags",
spa_type_audio_flags },
{ SPA_FORMAT_AUDIO_rate, SPA_TYPE_INFO_FORMAT_AUDIO_BASE "rate", SPA_TYPE_Int, NULL },
{ SPA_FORMAT_AUDIO_channels, SPA_TYPE_INFO_FORMAT_AUDIO_BASE "channels", SPA_TYPE_Int, NULL },
{ SPA_FORMAT_AUDIO_position, SPA_TYPE_INFO_FORMAT_AUDIO_BASE "position", SPA_TYPE_Id, spa_type_audio_channel },
{ SPA_FORMAT_AUDIO_rate, SPA_TYPE_Int, SPA_TYPE_INFO_FORMAT_AUDIO_BASE "rate", NULL },
{ SPA_FORMAT_AUDIO_channels, SPA_TYPE_Int, SPA_TYPE_INFO_FORMAT_AUDIO_BASE "channels", NULL },
{ SPA_FORMAT_AUDIO_position, SPA_TYPE_Id, SPA_TYPE_INFO_FORMAT_AUDIO_BASE "position",
spa_type_audio_channel },
{ SPA_FORMAT_VIDEO_format, SPA_TYPE_INFO_FORMAT_VIDEO_BASE "format", SPA_TYPE_Id,
{ SPA_FORMAT_VIDEO_format, SPA_TYPE_Id, SPA_TYPE_INFO_FORMAT_VIDEO_BASE "format",
spa_type_video_format, },
{ SPA_FORMAT_VIDEO_size, SPA_TYPE_INFO_FORMAT_VIDEO_BASE "size", SPA_TYPE_Rectangle, NULL },
{ SPA_FORMAT_VIDEO_framerate, SPA_TYPE_INFO_FORMAT_VIDEO_BASE "framerate", SPA_TYPE_Fraction, NULL },
{ SPA_FORMAT_VIDEO_maxFramerate, SPA_TYPE_INFO_FORMAT_VIDEO_BASE "maxFramerate", SPA_TYPE_Fraction, NULL },
{ SPA_FORMAT_VIDEO_views, SPA_TYPE_INFO_FORMAT_VIDEO_BASE "views", SPA_TYPE_Int, NULL },
{ SPA_FORMAT_VIDEO_interlaceMode, SPA_TYPE_INFO_FORMAT_VIDEO_BASE "interlaceMode", SPA_TYPE_Id, NULL },
{ SPA_FORMAT_VIDEO_pixelAspectRatio, SPA_TYPE_INFO_FORMAT_VIDEO_BASE "pixelAspectRatio", SPA_TYPE_Fraction, NULL },
{ SPA_FORMAT_VIDEO_multiviewMode, SPA_TYPE_INFO_FORMAT_VIDEO_BASE "multiviewMode", SPA_TYPE_Id, NULL },
{ SPA_FORMAT_VIDEO_multiviewFlags, SPA_TYPE_INFO_FORMAT_VIDEO_BASE "multiviewFlags", SPA_TYPE_Id, NULL },
{ SPA_FORMAT_VIDEO_chromaSite, SPA_TYPE_INFO_FORMAT_VIDEO_BASE "chromaSite", SPA_TYPE_Id, NULL },
{ SPA_FORMAT_VIDEO_colorRange, SPA_TYPE_INFO_FORMAT_VIDEO_BASE "colorRange", SPA_TYPE_Id, NULL },
{ SPA_FORMAT_VIDEO_colorMatrix, SPA_TYPE_INFO_FORMAT_VIDEO_BASE "colorMatrix", SPA_TYPE_Id, NULL },
{ SPA_FORMAT_VIDEO_transferFunction, SPA_TYPE_INFO_FORMAT_VIDEO_BASE "transferFunction", SPA_TYPE_Id, NULL },
{ SPA_FORMAT_VIDEO_colorPrimaries, SPA_TYPE_INFO_FORMAT_VIDEO_BASE "colorPrimaries", SPA_TYPE_Id, NULL },
{ SPA_FORMAT_VIDEO_profile, SPA_TYPE_INFO_FORMAT_VIDEO_BASE "profile", SPA_TYPE_Int, NULL },
{ SPA_FORMAT_VIDEO_level, SPA_TYPE_INFO_FORMAT_VIDEO_BASE "level", SPA_TYPE_Int, NULL },
{ SPA_FORMAT_VIDEO_size, SPA_TYPE_Rectangle, SPA_TYPE_INFO_FORMAT_VIDEO_BASE "size", NULL },
{ SPA_FORMAT_VIDEO_framerate, SPA_TYPE_Fraction, SPA_TYPE_INFO_FORMAT_VIDEO_BASE "framerate", NULL },
{ SPA_FORMAT_VIDEO_maxFramerate, SPA_TYPE_Fraction, SPA_TYPE_INFO_FORMAT_VIDEO_BASE "maxFramerate", NULL },
{ SPA_FORMAT_VIDEO_views, SPA_TYPE_Int, SPA_TYPE_INFO_FORMAT_VIDEO_BASE "views", NULL },
{ SPA_FORMAT_VIDEO_interlaceMode, SPA_TYPE_Id, SPA_TYPE_INFO_FORMAT_VIDEO_BASE "interlaceMode", NULL },
{ SPA_FORMAT_VIDEO_pixelAspectRatio, SPA_TYPE_Fraction, SPA_TYPE_INFO_FORMAT_VIDEO_BASE "pixelAspectRatio", NULL },
{ SPA_FORMAT_VIDEO_multiviewMode, SPA_TYPE_Id, SPA_TYPE_INFO_FORMAT_VIDEO_BASE "multiviewMode", NULL },
{ SPA_FORMAT_VIDEO_multiviewFlags, SPA_TYPE_Id, SPA_TYPE_INFO_FORMAT_VIDEO_BASE "multiviewFlags", NULL },
{ SPA_FORMAT_VIDEO_chromaSite, SPA_TYPE_Id, SPA_TYPE_INFO_FORMAT_VIDEO_BASE "chromaSite", NULL },
{ SPA_FORMAT_VIDEO_colorRange, SPA_TYPE_Id, SPA_TYPE_INFO_FORMAT_VIDEO_BASE "colorRange", NULL },
{ SPA_FORMAT_VIDEO_colorMatrix, SPA_TYPE_Id, SPA_TYPE_INFO_FORMAT_VIDEO_BASE "colorMatrix", NULL },
{ SPA_FORMAT_VIDEO_transferFunction, SPA_TYPE_Id, SPA_TYPE_INFO_FORMAT_VIDEO_BASE "transferFunction", NULL },
{ SPA_FORMAT_VIDEO_colorPrimaries, SPA_TYPE_Id, SPA_TYPE_INFO_FORMAT_VIDEO_BASE "colorPrimaries", NULL },
{ SPA_FORMAT_VIDEO_profile, SPA_TYPE_Int, SPA_TYPE_INFO_FORMAT_VIDEO_BASE "profile", NULL },
{ SPA_FORMAT_VIDEO_level, SPA_TYPE_Int, SPA_TYPE_INFO_FORMAT_VIDEO_BASE "level", NULL },
{ SPA_FORMAT_VIDEO_H264_streamFormat, SPA_TYPE_INFO_FORMAT_VIDEO_H264_BASE "streamFormat", SPA_TYPE_Id, NULL },
{ SPA_FORMAT_VIDEO_H264_alignment, SPA_TYPE_INFO_FORMAT_VIDEO_H264_BASE "alignment", SPA_TYPE_Id, NULL },
{ 0, NULL, 0, NULL },
{ SPA_FORMAT_VIDEO_H264_streamFormat, SPA_TYPE_Id, SPA_TYPE_INFO_FORMAT_VIDEO_H264_BASE "streamFormat", NULL },
{ SPA_FORMAT_VIDEO_H264_alignment, SPA_TYPE_Id, SPA_TYPE_INFO_FORMAT_VIDEO_H264_BASE "alignment", NULL },
{ 0, 0, NULL, NULL },
};
#define SPA_TYPE_INFO_PARAM_Buffers SPA_TYPE_INFO_PARAM_BASE "Buffers"
@ -255,25 +256,25 @@ static const struct spa_type_info spa_type_format[] = {
#define SPA_TYPE_INFO_PARAM_BLOCK_INFO_BASE SPA_TYPE_INFO_PARAM_BlockInfo ":"
static const struct spa_type_info spa_type_param_buffers[] = {
{ SPA_PARAM_BUFFERS_START, SPA_TYPE_INFO_PARAM_BUFFERS_BASE, SPA_TYPE_Id, spa_type_param, },
{ SPA_PARAM_BUFFERS_buffers, SPA_TYPE_INFO_PARAM_BUFFERS_BASE "buffers", SPA_TYPE_Int, NULL },
{ SPA_PARAM_BUFFERS_blocks, SPA_TYPE_INFO_PARAM_BUFFERS_BASE "blocks", SPA_TYPE_Int, NULL },
{ SPA_PARAM_BUFFERS_size, SPA_TYPE_INFO_PARAM_BLOCK_INFO_BASE "size", SPA_TYPE_Int, NULL },
{ SPA_PARAM_BUFFERS_stride, SPA_TYPE_INFO_PARAM_BLOCK_INFO_BASE "stride", SPA_TYPE_Int, NULL },
{ SPA_PARAM_BUFFERS_align, SPA_TYPE_INFO_PARAM_BLOCK_INFO_BASE "align", SPA_TYPE_Int, NULL },
{ 0, NULL, 0, NULL },
{ SPA_PARAM_BUFFERS_START, SPA_TYPE_Id, SPA_TYPE_INFO_PARAM_BUFFERS_BASE, spa_type_param, },
{ SPA_PARAM_BUFFERS_buffers, SPA_TYPE_Int, SPA_TYPE_INFO_PARAM_BUFFERS_BASE "buffers", NULL },
{ SPA_PARAM_BUFFERS_blocks, SPA_TYPE_Int, SPA_TYPE_INFO_PARAM_BUFFERS_BASE "blocks", NULL },
{ SPA_PARAM_BUFFERS_size, SPA_TYPE_Int, SPA_TYPE_INFO_PARAM_BLOCK_INFO_BASE "size", NULL },
{ SPA_PARAM_BUFFERS_stride, SPA_TYPE_Int, SPA_TYPE_INFO_PARAM_BLOCK_INFO_BASE "stride", NULL },
{ SPA_PARAM_BUFFERS_align, SPA_TYPE_Int, SPA_TYPE_INFO_PARAM_BLOCK_INFO_BASE "align", NULL },
{ 0, 0, NULL, NULL },
};
#define SPA_TYPE_INFO_PARAM_Profile SPA_TYPE_INFO_PARAM_BASE "Profile"
#define SPA_TYPE_INFO_PARAM_PROFILE_BASE SPA_TYPE_INFO_PARAM_Profile ":"
static const struct spa_type_info spa_type_param_profile[] = {
{ SPA_PARAM_PROFILE_START, SPA_TYPE_INFO_PARAM_PROFILE_BASE, SPA_TYPE_Id, spa_type_param, },
{ SPA_PARAM_PROFILE_index, SPA_TYPE_INFO_PARAM_PROFILE_BASE "index", SPA_TYPE_Int, NULL },
{ SPA_PARAM_PROFILE_name, SPA_TYPE_INFO_PARAM_PROFILE_BASE "name", SPA_TYPE_String, NULL },
{ SPA_PARAM_PROFILE_direction, SPA_TYPE_INFO_PARAM_PROFILE_BASE "direction", SPA_TYPE_Id, spa_type_direction },
{ SPA_PARAM_PROFILE_format, SPA_TYPE_INFO_PARAM_PROFILE_BASE "format", SPA_TYPE_Object, NULL, },
{ 0, NULL, 0, NULL },
{ SPA_PARAM_PROFILE_START, SPA_TYPE_Id, SPA_TYPE_INFO_PARAM_PROFILE_BASE, spa_type_param, },
{ SPA_PARAM_PROFILE_index, SPA_TYPE_Int, SPA_TYPE_INFO_PARAM_PROFILE_BASE "index", NULL },
{ SPA_PARAM_PROFILE_name, SPA_TYPE_String, SPA_TYPE_INFO_PARAM_PROFILE_BASE "name", NULL },
{ SPA_PARAM_PROFILE_direction, SPA_TYPE_Id, SPA_TYPE_INFO_PARAM_PROFILE_BASE "direction", spa_type_direction },
{ SPA_PARAM_PROFILE_format, SPA_TYPE_Object, SPA_TYPE_INFO_PARAM_PROFILE_BASE "format", NULL, },
{ 0, 0, NULL, NULL },
};
#ifdef __cplusplus

View file

@ -35,84 +35,84 @@ extern "C" {
#define SPA_TYPE_INFO_VIDEO_FORMAT_BASE SPA_TYPE_INFO_VideoFormat ":"
static const struct spa_type_info spa_type_video_format[] = {
{ SPA_VIDEO_FORMAT_ENCODED, SPA_TYPE_INFO_VIDEO_FORMAT_BASE "encoded", SPA_TYPE_Int, NULL },
{ SPA_VIDEO_FORMAT_I420, SPA_TYPE_INFO_VIDEO_FORMAT_BASE "I420", SPA_TYPE_Int, NULL },
{ SPA_VIDEO_FORMAT_YV12, SPA_TYPE_INFO_VIDEO_FORMAT_BASE "YV12", SPA_TYPE_Int, NULL },
{ SPA_VIDEO_FORMAT_YUY2, SPA_TYPE_INFO_VIDEO_FORMAT_BASE "YUY2", SPA_TYPE_Int, NULL },
{ SPA_VIDEO_FORMAT_UYVY, SPA_TYPE_INFO_VIDEO_FORMAT_BASE "UYVY", SPA_TYPE_Int, NULL },
{ SPA_VIDEO_FORMAT_AYUV, SPA_TYPE_INFO_VIDEO_FORMAT_BASE "AYUV", SPA_TYPE_Int, NULL },
{ SPA_VIDEO_FORMAT_RGBx, SPA_TYPE_INFO_VIDEO_FORMAT_BASE "RGBx", SPA_TYPE_Int, NULL },
{ SPA_VIDEO_FORMAT_BGRx, SPA_TYPE_INFO_VIDEO_FORMAT_BASE "BGRx", SPA_TYPE_Int, NULL },
{ SPA_VIDEO_FORMAT_xRGB, SPA_TYPE_INFO_VIDEO_FORMAT_BASE "xRGB", SPA_TYPE_Int, NULL },
{ SPA_VIDEO_FORMAT_xBGR, SPA_TYPE_INFO_VIDEO_FORMAT_BASE "xBGR", SPA_TYPE_Int, NULL },
{ SPA_VIDEO_FORMAT_RGBA, SPA_TYPE_INFO_VIDEO_FORMAT_BASE "RGBA", SPA_TYPE_Int, NULL },
{ SPA_VIDEO_FORMAT_BGRA, SPA_TYPE_INFO_VIDEO_FORMAT_BASE "BGRA", SPA_TYPE_Int, NULL },
{ SPA_VIDEO_FORMAT_ARGB, SPA_TYPE_INFO_VIDEO_FORMAT_BASE "ARGB", SPA_TYPE_Int, NULL },
{ SPA_VIDEO_FORMAT_ABGR, SPA_TYPE_INFO_VIDEO_FORMAT_BASE "ABGR", SPA_TYPE_Int, NULL },
{ SPA_VIDEO_FORMAT_RGB, SPA_TYPE_INFO_VIDEO_FORMAT_BASE "RGB", SPA_TYPE_Int, NULL },
{ SPA_VIDEO_FORMAT_BGR, SPA_TYPE_INFO_VIDEO_FORMAT_BASE "BGR", SPA_TYPE_Int, NULL },
{ SPA_VIDEO_FORMAT_Y41B, SPA_TYPE_INFO_VIDEO_FORMAT_BASE "Y41B", SPA_TYPE_Int, NULL },
{ SPA_VIDEO_FORMAT_Y42B, SPA_TYPE_INFO_VIDEO_FORMAT_BASE "Y42B", SPA_TYPE_Int, NULL },
{ SPA_VIDEO_FORMAT_YVYU, SPA_TYPE_INFO_VIDEO_FORMAT_BASE "YVYU", SPA_TYPE_Int, NULL },
{ SPA_VIDEO_FORMAT_Y444, SPA_TYPE_INFO_VIDEO_FORMAT_BASE "Y444", SPA_TYPE_Int, NULL },
{ SPA_VIDEO_FORMAT_v210, SPA_TYPE_INFO_VIDEO_FORMAT_BASE "v210", SPA_TYPE_Int, NULL },
{ SPA_VIDEO_FORMAT_v216, SPA_TYPE_INFO_VIDEO_FORMAT_BASE "v216", SPA_TYPE_Int, NULL },
{ SPA_VIDEO_FORMAT_NV12, SPA_TYPE_INFO_VIDEO_FORMAT_BASE "NV12", SPA_TYPE_Int, NULL },
{ SPA_VIDEO_FORMAT_NV21, SPA_TYPE_INFO_VIDEO_FORMAT_BASE "NV21", SPA_TYPE_Int, NULL },
{ SPA_VIDEO_FORMAT_GRAY8, SPA_TYPE_INFO_VIDEO_FORMAT_BASE "GRAY8", SPA_TYPE_Int, NULL },
{ SPA_VIDEO_FORMAT_GRAY16_BE, SPA_TYPE_INFO_VIDEO_FORMAT_BASE "GRAY16_BE", SPA_TYPE_Int, NULL },
{ SPA_VIDEO_FORMAT_GRAY16_LE, SPA_TYPE_INFO_VIDEO_FORMAT_BASE "GRAY16_LE", SPA_TYPE_Int, NULL },
{ SPA_VIDEO_FORMAT_v308, SPA_TYPE_INFO_VIDEO_FORMAT_BASE "v308", SPA_TYPE_Int, NULL },
{ SPA_VIDEO_FORMAT_RGB16, SPA_TYPE_INFO_VIDEO_FORMAT_BASE "RGB16", SPA_TYPE_Int, NULL },
{ SPA_VIDEO_FORMAT_BGR16, SPA_TYPE_INFO_VIDEO_FORMAT_BASE "BGR16", SPA_TYPE_Int, NULL },
{ SPA_VIDEO_FORMAT_RGB15, SPA_TYPE_INFO_VIDEO_FORMAT_BASE "RGB15", SPA_TYPE_Int, NULL },
{ SPA_VIDEO_FORMAT_BGR15, SPA_TYPE_INFO_VIDEO_FORMAT_BASE "BGR15", SPA_TYPE_Int, NULL },
{ SPA_VIDEO_FORMAT_UYVP, SPA_TYPE_INFO_VIDEO_FORMAT_BASE "UYVP", SPA_TYPE_Int, NULL },
{ SPA_VIDEO_FORMAT_A420, SPA_TYPE_INFO_VIDEO_FORMAT_BASE "A420", SPA_TYPE_Int, NULL },
{ SPA_VIDEO_FORMAT_RGB8P, SPA_TYPE_INFO_VIDEO_FORMAT_BASE "RGB8P", SPA_TYPE_Int, NULL },
{ SPA_VIDEO_FORMAT_YUV9, SPA_TYPE_INFO_VIDEO_FORMAT_BASE "YUV9", SPA_TYPE_Int, NULL },
{ SPA_VIDEO_FORMAT_YVU9, SPA_TYPE_INFO_VIDEO_FORMAT_BASE "YVU9", SPA_TYPE_Int, NULL },
{ SPA_VIDEO_FORMAT_IYU1, SPA_TYPE_INFO_VIDEO_FORMAT_BASE "IYU1", SPA_TYPE_Int, NULL },
{ SPA_VIDEO_FORMAT_ARGB64, SPA_TYPE_INFO_VIDEO_FORMAT_BASE "ARGB64", SPA_TYPE_Int, NULL },
{ SPA_VIDEO_FORMAT_AYUV64, SPA_TYPE_INFO_VIDEO_FORMAT_BASE "AYUV64", SPA_TYPE_Int, NULL },
{ SPA_VIDEO_FORMAT_r210, SPA_TYPE_INFO_VIDEO_FORMAT_BASE "r210", SPA_TYPE_Int, NULL },
{ SPA_VIDEO_FORMAT_I420_10BE, SPA_TYPE_INFO_VIDEO_FORMAT_BASE "I420_10BE", SPA_TYPE_Int, NULL },
{ SPA_VIDEO_FORMAT_I420_10LE, SPA_TYPE_INFO_VIDEO_FORMAT_BASE "I420_10LE", SPA_TYPE_Int, NULL },
{ SPA_VIDEO_FORMAT_I422_10BE, SPA_TYPE_INFO_VIDEO_FORMAT_BASE "I422_10BE", SPA_TYPE_Int, NULL },
{ SPA_VIDEO_FORMAT_I422_10LE, SPA_TYPE_INFO_VIDEO_FORMAT_BASE "I422_10LE", SPA_TYPE_Int, NULL },
{ SPA_VIDEO_FORMAT_Y444_10BE, SPA_TYPE_INFO_VIDEO_FORMAT_BASE "Y444_10BE", SPA_TYPE_Int, NULL },
{ SPA_VIDEO_FORMAT_Y444_10LE, SPA_TYPE_INFO_VIDEO_FORMAT_BASE "Y444_10LE", SPA_TYPE_Int, NULL },
{ SPA_VIDEO_FORMAT_GBR, SPA_TYPE_INFO_VIDEO_FORMAT_BASE "GBR", SPA_TYPE_Int, NULL },
{ SPA_VIDEO_FORMAT_GBR_10BE, SPA_TYPE_INFO_VIDEO_FORMAT_BASE "GBR_10BE", SPA_TYPE_Int, NULL },
{ SPA_VIDEO_FORMAT_GBR_10LE, SPA_TYPE_INFO_VIDEO_FORMAT_BASE "GBR_10LE", SPA_TYPE_Int, NULL },
{ SPA_VIDEO_FORMAT_NV16, SPA_TYPE_INFO_VIDEO_FORMAT_BASE "NV16", SPA_TYPE_Int, NULL },
{ SPA_VIDEO_FORMAT_NV24, SPA_TYPE_INFO_VIDEO_FORMAT_BASE "NV24", SPA_TYPE_Int, NULL },
{ SPA_VIDEO_FORMAT_NV12_64Z32, SPA_TYPE_INFO_VIDEO_FORMAT_BASE "NV12_64Z32", SPA_TYPE_Int, NULL },
{ SPA_VIDEO_FORMAT_A420_10BE, SPA_TYPE_INFO_VIDEO_FORMAT_BASE "A420_10BE", SPA_TYPE_Int, NULL },
{ SPA_VIDEO_FORMAT_A420_10LE, SPA_TYPE_INFO_VIDEO_FORMAT_BASE "A420_10LE", SPA_TYPE_Int, NULL },
{ SPA_VIDEO_FORMAT_A422_10BE, SPA_TYPE_INFO_VIDEO_FORMAT_BASE "A422_10BE", SPA_TYPE_Int, NULL },
{ SPA_VIDEO_FORMAT_A422_10LE, SPA_TYPE_INFO_VIDEO_FORMAT_BASE "A422_10LE", SPA_TYPE_Int, NULL },
{ SPA_VIDEO_FORMAT_A444_10BE, SPA_TYPE_INFO_VIDEO_FORMAT_BASE "A444_10BE", SPA_TYPE_Int, NULL },
{ SPA_VIDEO_FORMAT_A444_10LE, SPA_TYPE_INFO_VIDEO_FORMAT_BASE "A444_10LE", SPA_TYPE_Int, NULL },
{ SPA_VIDEO_FORMAT_NV61, SPA_TYPE_INFO_VIDEO_FORMAT_BASE "NV61", SPA_TYPE_Int, NULL },
{ SPA_VIDEO_FORMAT_P010_10BE, SPA_TYPE_INFO_VIDEO_FORMAT_BASE "P010_10BE", SPA_TYPE_Int, NULL },
{ SPA_VIDEO_FORMAT_P010_10LE, SPA_TYPE_INFO_VIDEO_FORMAT_BASE "P010_10LE", SPA_TYPE_Int, NULL },
{ SPA_VIDEO_FORMAT_IYU2, SPA_TYPE_INFO_VIDEO_FORMAT_BASE "IYU2", SPA_TYPE_Int, NULL },
{ SPA_VIDEO_FORMAT_VYUY, SPA_TYPE_INFO_VIDEO_FORMAT_BASE "VYUY", SPA_TYPE_Int, NULL },
{ SPA_VIDEO_FORMAT_GBRA, SPA_TYPE_INFO_VIDEO_FORMAT_BASE "GBRA", SPA_TYPE_Int, NULL },
{ SPA_VIDEO_FORMAT_GBRA_10BE, SPA_TYPE_INFO_VIDEO_FORMAT_BASE "GBRA_10BE", SPA_TYPE_Int, NULL },
{ SPA_VIDEO_FORMAT_GBRA_10LE, SPA_TYPE_INFO_VIDEO_FORMAT_BASE "GBRA_10LE", SPA_TYPE_Int, NULL },
{ SPA_VIDEO_FORMAT_GBR_12BE, SPA_TYPE_INFO_VIDEO_FORMAT_BASE "GBR_12BE", SPA_TYPE_Int, NULL },
{ SPA_VIDEO_FORMAT_GBR_12LE, SPA_TYPE_INFO_VIDEO_FORMAT_BASE "GBR_12LE", SPA_TYPE_Int, NULL },
{ SPA_VIDEO_FORMAT_GBRA_12BE, SPA_TYPE_INFO_VIDEO_FORMAT_BASE "GBRA_12BE", SPA_TYPE_Int, NULL },
{ SPA_VIDEO_FORMAT_GBRA_12LE, SPA_TYPE_INFO_VIDEO_FORMAT_BASE "GBRA_12LE", SPA_TYPE_Int, NULL },
{ SPA_VIDEO_FORMAT_I420_12BE, SPA_TYPE_INFO_VIDEO_FORMAT_BASE "I420_12BE", SPA_TYPE_Int, NULL },
{ SPA_VIDEO_FORMAT_I420_12LE, SPA_TYPE_INFO_VIDEO_FORMAT_BASE "I420_12LE", SPA_TYPE_Int, NULL },
{ SPA_VIDEO_FORMAT_I422_12BE, SPA_TYPE_INFO_VIDEO_FORMAT_BASE "I422_12BE", SPA_TYPE_Int, NULL },
{ SPA_VIDEO_FORMAT_I422_12LE, SPA_TYPE_INFO_VIDEO_FORMAT_BASE "I422_12LE", SPA_TYPE_Int, NULL },
{ SPA_VIDEO_FORMAT_Y444_12BE, SPA_TYPE_INFO_VIDEO_FORMAT_BASE "Y444_12BE", SPA_TYPE_Int, NULL },
{ SPA_VIDEO_FORMAT_Y444_12LE, SPA_TYPE_INFO_VIDEO_FORMAT_BASE "Y444_12LE", SPA_TYPE_Int, NULL },
{ 0, NULL, 0, NULL },
{ SPA_VIDEO_FORMAT_ENCODED, SPA_TYPE_Int, SPA_TYPE_INFO_VIDEO_FORMAT_BASE "encoded", NULL },
{ SPA_VIDEO_FORMAT_I420, SPA_TYPE_Int, SPA_TYPE_INFO_VIDEO_FORMAT_BASE "I420", NULL },
{ SPA_VIDEO_FORMAT_YV12, SPA_TYPE_Int, SPA_TYPE_INFO_VIDEO_FORMAT_BASE "YV12", NULL },
{ SPA_VIDEO_FORMAT_YUY2, SPA_TYPE_Int, SPA_TYPE_INFO_VIDEO_FORMAT_BASE "YUY2", NULL },
{ SPA_VIDEO_FORMAT_UYVY, SPA_TYPE_Int, SPA_TYPE_INFO_VIDEO_FORMAT_BASE "UYVY", NULL },
{ SPA_VIDEO_FORMAT_AYUV, SPA_TYPE_Int, SPA_TYPE_INFO_VIDEO_FORMAT_BASE "AYUV", NULL },
{ SPA_VIDEO_FORMAT_RGBx, SPA_TYPE_Int, SPA_TYPE_INFO_VIDEO_FORMAT_BASE "RGBx", NULL },
{ SPA_VIDEO_FORMAT_BGRx, SPA_TYPE_Int, SPA_TYPE_INFO_VIDEO_FORMAT_BASE "BGRx", NULL },
{ SPA_VIDEO_FORMAT_xRGB, SPA_TYPE_Int, SPA_TYPE_INFO_VIDEO_FORMAT_BASE "xRGB", NULL },
{ SPA_VIDEO_FORMAT_xBGR, SPA_TYPE_Int, SPA_TYPE_INFO_VIDEO_FORMAT_BASE "xBGR", NULL },
{ SPA_VIDEO_FORMAT_RGBA, SPA_TYPE_Int, SPA_TYPE_INFO_VIDEO_FORMAT_BASE "RGBA", NULL },
{ SPA_VIDEO_FORMAT_BGRA, SPA_TYPE_Int, SPA_TYPE_INFO_VIDEO_FORMAT_BASE "BGRA", NULL },
{ SPA_VIDEO_FORMAT_ARGB, SPA_TYPE_Int, SPA_TYPE_INFO_VIDEO_FORMAT_BASE "ARGB", NULL },
{ SPA_VIDEO_FORMAT_ABGR, SPA_TYPE_Int, SPA_TYPE_INFO_VIDEO_FORMAT_BASE "ABGR", NULL },
{ SPA_VIDEO_FORMAT_RGB, SPA_TYPE_Int, SPA_TYPE_INFO_VIDEO_FORMAT_BASE "RGB", NULL },
{ SPA_VIDEO_FORMAT_BGR, SPA_TYPE_Int, SPA_TYPE_INFO_VIDEO_FORMAT_BASE "BGR", NULL },
{ SPA_VIDEO_FORMAT_Y41B, SPA_TYPE_Int, SPA_TYPE_INFO_VIDEO_FORMAT_BASE "Y41B", NULL },
{ SPA_VIDEO_FORMAT_Y42B, SPA_TYPE_Int, SPA_TYPE_INFO_VIDEO_FORMAT_BASE "Y42B", NULL },
{ SPA_VIDEO_FORMAT_YVYU, SPA_TYPE_Int, SPA_TYPE_INFO_VIDEO_FORMAT_BASE "YVYU", NULL },
{ SPA_VIDEO_FORMAT_Y444, SPA_TYPE_Int, SPA_TYPE_INFO_VIDEO_FORMAT_BASE "Y444", NULL },
{ SPA_VIDEO_FORMAT_v210, SPA_TYPE_Int, SPA_TYPE_INFO_VIDEO_FORMAT_BASE "v210", NULL },
{ SPA_VIDEO_FORMAT_v216, SPA_TYPE_Int, SPA_TYPE_INFO_VIDEO_FORMAT_BASE "v216", NULL },
{ SPA_VIDEO_FORMAT_NV12, SPA_TYPE_Int, SPA_TYPE_INFO_VIDEO_FORMAT_BASE "NV12", NULL },
{ SPA_VIDEO_FORMAT_NV21, SPA_TYPE_Int, SPA_TYPE_INFO_VIDEO_FORMAT_BASE "NV21", NULL },
{ SPA_VIDEO_FORMAT_GRAY8, SPA_TYPE_Int, SPA_TYPE_INFO_VIDEO_FORMAT_BASE "GRAY8", NULL },
{ SPA_VIDEO_FORMAT_GRAY16_BE, SPA_TYPE_Int, SPA_TYPE_INFO_VIDEO_FORMAT_BASE "GRAY16_BE", NULL },
{ SPA_VIDEO_FORMAT_GRAY16_LE, SPA_TYPE_Int, SPA_TYPE_INFO_VIDEO_FORMAT_BASE "GRAY16_LE", NULL },
{ SPA_VIDEO_FORMAT_v308, SPA_TYPE_Int, SPA_TYPE_INFO_VIDEO_FORMAT_BASE "v308", NULL },
{ SPA_VIDEO_FORMAT_RGB16, SPA_TYPE_Int, SPA_TYPE_INFO_VIDEO_FORMAT_BASE "RGB16", NULL },
{ SPA_VIDEO_FORMAT_BGR16, SPA_TYPE_Int, SPA_TYPE_INFO_VIDEO_FORMAT_BASE "BGR16", NULL },
{ SPA_VIDEO_FORMAT_RGB15, SPA_TYPE_Int, SPA_TYPE_INFO_VIDEO_FORMAT_BASE "RGB15", NULL },
{ SPA_VIDEO_FORMAT_BGR15, SPA_TYPE_Int, SPA_TYPE_INFO_VIDEO_FORMAT_BASE "BGR15", NULL },
{ SPA_VIDEO_FORMAT_UYVP, SPA_TYPE_Int, SPA_TYPE_INFO_VIDEO_FORMAT_BASE "UYVP", NULL },
{ SPA_VIDEO_FORMAT_A420, SPA_TYPE_Int, SPA_TYPE_INFO_VIDEO_FORMAT_BASE "A420", NULL },
{ SPA_VIDEO_FORMAT_RGB8P, SPA_TYPE_Int, SPA_TYPE_INFO_VIDEO_FORMAT_BASE "RGB8P", NULL },
{ SPA_VIDEO_FORMAT_YUV9, SPA_TYPE_Int, SPA_TYPE_INFO_VIDEO_FORMAT_BASE "YUV9", NULL },
{ SPA_VIDEO_FORMAT_YVU9, SPA_TYPE_Int, SPA_TYPE_INFO_VIDEO_FORMAT_BASE "YVU9", NULL },
{ SPA_VIDEO_FORMAT_IYU1, SPA_TYPE_Int, SPA_TYPE_INFO_VIDEO_FORMAT_BASE "IYU1", NULL },
{ SPA_VIDEO_FORMAT_ARGB64, SPA_TYPE_Int, SPA_TYPE_INFO_VIDEO_FORMAT_BASE "ARGB64", NULL },
{ SPA_VIDEO_FORMAT_AYUV64, SPA_TYPE_Int, SPA_TYPE_INFO_VIDEO_FORMAT_BASE "AYUV64", NULL },
{ SPA_VIDEO_FORMAT_r210, SPA_TYPE_Int, SPA_TYPE_INFO_VIDEO_FORMAT_BASE "r210", NULL },
{ SPA_VIDEO_FORMAT_I420_10BE, SPA_TYPE_Int, SPA_TYPE_INFO_VIDEO_FORMAT_BASE "I420_10BE", NULL },
{ SPA_VIDEO_FORMAT_I420_10LE, SPA_TYPE_Int, SPA_TYPE_INFO_VIDEO_FORMAT_BASE "I420_10LE", NULL },
{ SPA_VIDEO_FORMAT_I422_10BE, SPA_TYPE_Int, SPA_TYPE_INFO_VIDEO_FORMAT_BASE "I422_10BE", NULL },
{ SPA_VIDEO_FORMAT_I422_10LE, SPA_TYPE_Int, SPA_TYPE_INFO_VIDEO_FORMAT_BASE "I422_10LE", NULL },
{ SPA_VIDEO_FORMAT_Y444_10BE, SPA_TYPE_Int, SPA_TYPE_INFO_VIDEO_FORMAT_BASE "Y444_10BE", NULL },
{ SPA_VIDEO_FORMAT_Y444_10LE, SPA_TYPE_Int, SPA_TYPE_INFO_VIDEO_FORMAT_BASE "Y444_10LE", NULL },
{ SPA_VIDEO_FORMAT_GBR, SPA_TYPE_Int, SPA_TYPE_INFO_VIDEO_FORMAT_BASE "GBR", NULL },
{ SPA_VIDEO_FORMAT_GBR_10BE, SPA_TYPE_Int, SPA_TYPE_INFO_VIDEO_FORMAT_BASE "GBR_10BE", NULL },
{ SPA_VIDEO_FORMAT_GBR_10LE, SPA_TYPE_Int, SPA_TYPE_INFO_VIDEO_FORMAT_BASE "GBR_10LE", NULL },
{ SPA_VIDEO_FORMAT_NV16, SPA_TYPE_Int, SPA_TYPE_INFO_VIDEO_FORMAT_BASE "NV16", NULL },
{ SPA_VIDEO_FORMAT_NV24, SPA_TYPE_Int, SPA_TYPE_INFO_VIDEO_FORMAT_BASE "NV24", NULL },
{ SPA_VIDEO_FORMAT_NV12_64Z32, SPA_TYPE_Int, SPA_TYPE_INFO_VIDEO_FORMAT_BASE "NV12_64Z32", NULL },
{ SPA_VIDEO_FORMAT_A420_10BE, SPA_TYPE_Int, SPA_TYPE_INFO_VIDEO_FORMAT_BASE "A420_10BE", NULL },
{ SPA_VIDEO_FORMAT_A420_10LE, SPA_TYPE_Int, SPA_TYPE_INFO_VIDEO_FORMAT_BASE "A420_10LE", NULL },
{ SPA_VIDEO_FORMAT_A422_10BE, SPA_TYPE_Int, SPA_TYPE_INFO_VIDEO_FORMAT_BASE "A422_10BE", NULL },
{ SPA_VIDEO_FORMAT_A422_10LE, SPA_TYPE_Int, SPA_TYPE_INFO_VIDEO_FORMAT_BASE "A422_10LE", NULL },
{ SPA_VIDEO_FORMAT_A444_10BE, SPA_TYPE_Int, SPA_TYPE_INFO_VIDEO_FORMAT_BASE "A444_10BE", NULL },
{ SPA_VIDEO_FORMAT_A444_10LE, SPA_TYPE_Int, SPA_TYPE_INFO_VIDEO_FORMAT_BASE "A444_10LE", NULL },
{ SPA_VIDEO_FORMAT_NV61, SPA_TYPE_Int, SPA_TYPE_INFO_VIDEO_FORMAT_BASE "NV61", NULL },
{ SPA_VIDEO_FORMAT_P010_10BE, SPA_TYPE_Int, SPA_TYPE_INFO_VIDEO_FORMAT_BASE "P010_10BE", NULL },
{ SPA_VIDEO_FORMAT_P010_10LE, SPA_TYPE_Int, SPA_TYPE_INFO_VIDEO_FORMAT_BASE "P010_10LE", NULL },
{ SPA_VIDEO_FORMAT_IYU2, SPA_TYPE_Int, SPA_TYPE_INFO_VIDEO_FORMAT_BASE "IYU2", NULL },
{ SPA_VIDEO_FORMAT_VYUY, SPA_TYPE_Int, SPA_TYPE_INFO_VIDEO_FORMAT_BASE "VYUY", NULL },
{ SPA_VIDEO_FORMAT_GBRA, SPA_TYPE_Int, SPA_TYPE_INFO_VIDEO_FORMAT_BASE "GBRA", NULL },
{ SPA_VIDEO_FORMAT_GBRA_10BE, SPA_TYPE_Int, SPA_TYPE_INFO_VIDEO_FORMAT_BASE "GBRA_10BE", NULL },
{ SPA_VIDEO_FORMAT_GBRA_10LE, SPA_TYPE_Int, SPA_TYPE_INFO_VIDEO_FORMAT_BASE "GBRA_10LE", NULL },
{ SPA_VIDEO_FORMAT_GBR_12BE, SPA_TYPE_Int, SPA_TYPE_INFO_VIDEO_FORMAT_BASE "GBR_12BE", NULL },
{ SPA_VIDEO_FORMAT_GBR_12LE, SPA_TYPE_Int, SPA_TYPE_INFO_VIDEO_FORMAT_BASE "GBR_12LE", NULL },
{ SPA_VIDEO_FORMAT_GBRA_12BE, SPA_TYPE_Int, SPA_TYPE_INFO_VIDEO_FORMAT_BASE "GBRA_12BE", NULL },
{ SPA_VIDEO_FORMAT_GBRA_12LE, SPA_TYPE_Int, SPA_TYPE_INFO_VIDEO_FORMAT_BASE "GBRA_12LE", NULL },
{ SPA_VIDEO_FORMAT_I420_12BE, SPA_TYPE_Int, SPA_TYPE_INFO_VIDEO_FORMAT_BASE "I420_12BE", NULL },
{ SPA_VIDEO_FORMAT_I420_12LE, SPA_TYPE_Int, SPA_TYPE_INFO_VIDEO_FORMAT_BASE "I420_12LE", NULL },
{ SPA_VIDEO_FORMAT_I422_12BE, SPA_TYPE_Int, SPA_TYPE_INFO_VIDEO_FORMAT_BASE "I422_12BE", NULL },
{ SPA_VIDEO_FORMAT_I422_12LE, SPA_TYPE_Int, SPA_TYPE_INFO_VIDEO_FORMAT_BASE "I422_12LE", NULL },
{ SPA_VIDEO_FORMAT_Y444_12BE, SPA_TYPE_Int, SPA_TYPE_INFO_VIDEO_FORMAT_BASE "Y444_12BE", NULL },
{ SPA_VIDEO_FORMAT_Y444_12LE, SPA_TYPE_Int, SPA_TYPE_INFO_VIDEO_FORMAT_BASE "Y444_12LE", NULL },
{ 0, 0, NULL, NULL },
};
#ifdef __cplusplus

View file

@ -41,12 +41,13 @@ struct spa_dict_item {
#define SPA_DICT_ITEM_INIT(key,value) (struct spa_dict_item) { key, value }
struct spa_dict {
const struct spa_dict_item *items;
uint32_t flags;
uint32_t n_items;
const struct spa_dict_item *items;
};
#define SPA_DICT_INIT(items,n_items) (struct spa_dict) { items, n_items }
#define SPA_DICT_INIT_ARRAY(items) (struct spa_dict) { items, SPA_N_ELEMENTS(items) }
#define SPA_DICT_INIT(items,n_items) (struct spa_dict) { 0, n_items, items }
#define SPA_DICT_INIT_ARRAY(items) (struct spa_dict) { 0, SPA_N_ELEMENTS(items), items }
#define spa_dict_for_each(item, dict) \
for ((item) = (dict)->items; \

View file

@ -47,9 +47,9 @@ static inline bool spa_type_is_a(const char *type, const char *parent)
#define SPA_TYPE_INFO_DIRECTION_BASE SPA_TYPE_INFO_Direction ":"
static const struct spa_type_info spa_type_direction[] = {
{ SPA_DIRECTION_INPUT, SPA_TYPE_INFO_DIRECTION_BASE "Input", SPA_TYPE_Int, NULL },
{ SPA_DIRECTION_OUTPUT, SPA_TYPE_INFO_DIRECTION_BASE "Output", SPA_TYPE_Int, NULL },
{ 0, NULL, 0, NULL }
{ SPA_DIRECTION_INPUT, SPA_TYPE_Int, SPA_TYPE_INFO_DIRECTION_BASE "Input", NULL },
{ SPA_DIRECTION_OUTPUT, SPA_TYPE_Int, SPA_TYPE_INFO_DIRECTION_BASE "Output", NULL },
{ 0, 0, NULL, NULL }
};
#include <spa/monitor/type-info.h>
@ -62,77 +62,77 @@ static const struct spa_type_info spa_type_direction[] = {
#define SPA_TYPE_INFO_CHOICE_BASE SPA_TYPE_INFO_Choice ":"
static const struct spa_type_info spa_type_choice[] = {
{ SPA_CHOICE_None, SPA_TYPE_INFO_CHOICE_BASE "None", SPA_TYPE_Int, NULL },
{ SPA_CHOICE_Range, SPA_TYPE_INFO_CHOICE_BASE "Range", SPA_TYPE_Int, NULL },
{ SPA_CHOICE_Step, SPA_TYPE_INFO_CHOICE_BASE "Step", SPA_TYPE_Int, NULL },
{ SPA_CHOICE_Enum, SPA_TYPE_INFO_CHOICE_BASE "Enum", SPA_TYPE_Int, NULL },
{ SPA_CHOICE_Flags, SPA_TYPE_INFO_CHOICE_BASE "Flags", SPA_TYPE_Int, NULL },
{ 0, NULL, 0, NULL }
{ SPA_CHOICE_None, SPA_TYPE_Int, SPA_TYPE_INFO_CHOICE_BASE "None", NULL },
{ SPA_CHOICE_Range, SPA_TYPE_Int, SPA_TYPE_INFO_CHOICE_BASE "Range", NULL },
{ SPA_CHOICE_Step, SPA_TYPE_Int, SPA_TYPE_INFO_CHOICE_BASE "Step", NULL },
{ SPA_CHOICE_Enum, SPA_TYPE_Int, SPA_TYPE_INFO_CHOICE_BASE "Enum", NULL },
{ SPA_CHOICE_Flags, SPA_TYPE_Int, SPA_TYPE_INFO_CHOICE_BASE "Flags", NULL },
{ 0, 0, NULL, NULL }
};
static const struct spa_type_info spa_types[] = {
/* Basic types */
{ SPA_TYPE_START, SPA_TYPE_INFO_BASE, SPA_TYPE_START, NULL },
{ SPA_TYPE_None, SPA_TYPE_INFO_BASE "None", SPA_TYPE_None, NULL },
{ SPA_TYPE_Bool, SPA_TYPE_INFO_BASE "Bool", SPA_TYPE_Bool, NULL },
{ SPA_TYPE_Id, SPA_TYPE_INFO_BASE "Id", SPA_TYPE_Int, NULL },
{ SPA_TYPE_Int, SPA_TYPE_INFO_BASE "Int", SPA_TYPE_Int, NULL },
{ SPA_TYPE_Long, SPA_TYPE_INFO_BASE "Long", SPA_TYPE_Long, NULL },
{ SPA_TYPE_Float, SPA_TYPE_INFO_BASE "Float", SPA_TYPE_Float, NULL },
{ SPA_TYPE_Double, SPA_TYPE_INFO_BASE "Double", SPA_TYPE_Double, NULL },
{ SPA_TYPE_String, SPA_TYPE_INFO_BASE "String", SPA_TYPE_String, NULL },
{ SPA_TYPE_Bytes, SPA_TYPE_INFO_BASE "Bytes", SPA_TYPE_Bytes, NULL },
{ SPA_TYPE_Rectangle, SPA_TYPE_INFO_BASE "Rectangle", SPA_TYPE_Rectangle, NULL },
{ SPA_TYPE_Fraction, SPA_TYPE_INFO_BASE "Fraction", SPA_TYPE_Fraction, NULL },
{ SPA_TYPE_Bitmap, SPA_TYPE_INFO_BASE "Bitmap", SPA_TYPE_Bitmap, NULL },
{ SPA_TYPE_Array, SPA_TYPE_INFO_BASE "Array", SPA_TYPE_Array, NULL },
{ SPA_TYPE_Pod, SPA_TYPE_INFO_Pod, SPA_TYPE_Pod, NULL },
{ SPA_TYPE_Struct, SPA_TYPE_INFO_Struct, SPA_TYPE_Pod, NULL },
{ SPA_TYPE_Object, SPA_TYPE_INFO_Object, SPA_TYPE_Pod, NULL },
{ SPA_TYPE_Sequence, SPA_TYPE_INFO_POD_BASE "Sequence", SPA_TYPE_Pod, NULL },
{ SPA_TYPE_Pointer, SPA_TYPE_INFO_Pointer, SPA_TYPE_Pointer, NULL },
{ SPA_TYPE_Fd, SPA_TYPE_INFO_BASE "Fd", SPA_TYPE_Fd, NULL },
{ SPA_TYPE_Choice, SPA_TYPE_INFO_POD_BASE "Choice", SPA_TYPE_Pod, NULL },
{ SPA_TYPE_START, SPA_TYPE_START, SPA_TYPE_INFO_BASE, NULL },
{ SPA_TYPE_None, SPA_TYPE_None, SPA_TYPE_INFO_BASE "None", NULL },
{ SPA_TYPE_Bool, SPA_TYPE_Bool, SPA_TYPE_INFO_BASE "Bool", NULL },
{ SPA_TYPE_Id, SPA_TYPE_Int, SPA_TYPE_INFO_BASE "Id", NULL },
{ SPA_TYPE_Int, SPA_TYPE_Int, SPA_TYPE_INFO_BASE "Int", NULL },
{ SPA_TYPE_Long, SPA_TYPE_Long, SPA_TYPE_INFO_BASE "Long", NULL },
{ SPA_TYPE_Float, SPA_TYPE_Float, SPA_TYPE_INFO_BASE "Float", NULL },
{ SPA_TYPE_Double, SPA_TYPE_Double, SPA_TYPE_INFO_BASE "Double", NULL },
{ SPA_TYPE_String, SPA_TYPE_String, SPA_TYPE_INFO_BASE "String", NULL },
{ SPA_TYPE_Bytes, SPA_TYPE_Bytes, SPA_TYPE_INFO_BASE "Bytes", NULL },
{ SPA_TYPE_Rectangle, SPA_TYPE_Rectangle, SPA_TYPE_INFO_BASE "Rectangle", NULL },
{ SPA_TYPE_Fraction, SPA_TYPE_Fraction, SPA_TYPE_INFO_BASE "Fraction", NULL },
{ SPA_TYPE_Bitmap, SPA_TYPE_Bitmap, SPA_TYPE_INFO_BASE "Bitmap", NULL },
{ SPA_TYPE_Array, SPA_TYPE_Array, SPA_TYPE_INFO_BASE "Array", NULL },
{ SPA_TYPE_Pod, SPA_TYPE_Pod, SPA_TYPE_INFO_Pod, NULL },
{ SPA_TYPE_Struct, SPA_TYPE_Pod, SPA_TYPE_INFO_Struct, NULL },
{ SPA_TYPE_Object, SPA_TYPE_Pod, SPA_TYPE_INFO_Object, NULL },
{ SPA_TYPE_Sequence, SPA_TYPE_Pod, SPA_TYPE_INFO_POD_BASE "Sequence", NULL },
{ SPA_TYPE_Pointer, SPA_TYPE_Pointer, SPA_TYPE_INFO_Pointer, NULL },
{ SPA_TYPE_Fd, SPA_TYPE_Fd, SPA_TYPE_INFO_BASE "Fd", NULL },
{ SPA_TYPE_Choice, SPA_TYPE_Pod, SPA_TYPE_INFO_POD_BASE "Choice", NULL },
{ SPA_TYPE_POINTER_START, SPA_TYPE_INFO_Pointer, SPA_TYPE_Pointer, NULL },
{ SPA_TYPE_POINTER_Buffer, SPA_TYPE_INFO_POINTER_BASE "Buffer", SPA_TYPE_Pointer, NULL },
{ SPA_TYPE_POINTER_Meta, SPA_TYPE_INFO_POINTER_BASE "Meta", SPA_TYPE_Pointer, NULL },
{ SPA_TYPE_POINTER_Dict, SPA_TYPE_INFO_POINTER_BASE "Dict", SPA_TYPE_Pointer, NULL },
{ SPA_TYPE_POINTER_START, SPA_TYPE_Pointer, SPA_TYPE_INFO_Pointer, NULL },
{ SPA_TYPE_POINTER_Buffer, SPA_TYPE_Pointer, SPA_TYPE_INFO_POINTER_BASE "Buffer", NULL },
{ SPA_TYPE_POINTER_Meta, SPA_TYPE_Pointer, SPA_TYPE_INFO_POINTER_BASE "Meta", NULL },
{ SPA_TYPE_POINTER_Dict, SPA_TYPE_Pointer, SPA_TYPE_INFO_POINTER_BASE "Dict", NULL },
{ SPA_TYPE_INTERFACE_START, SPA_TYPE_INFO_Interface, SPA_TYPE_Pointer, NULL },
{ SPA_TYPE_INTERFACE_Handle, SPA_TYPE_INFO_INTERFACE_BASE "Handle", SPA_TYPE_Pointer, NULL },
{ SPA_TYPE_INTERFACE_HandleFactory, SPA_TYPE_INFO_INTERFACE_BASE "HandleFactory", SPA_TYPE_Pointer, NULL },
{ SPA_TYPE_INTERFACE_Log, SPA_TYPE_INFO_INTERFACE_BASE "Log", SPA_TYPE_Pointer, NULL },
{ SPA_TYPE_INTERFACE_Loop, SPA_TYPE_INFO_INTERFACE_BASE "Loop", SPA_TYPE_Pointer, NULL },
{ SPA_TYPE_INTERFACE_LoopControl, SPA_TYPE_INFO_INTERFACE_BASE "LoopControl", SPA_TYPE_Pointer, NULL },
{ SPA_TYPE_INTERFACE_LoopUtils, SPA_TYPE_INFO_INTERFACE_BASE "LoopUtils", SPA_TYPE_Pointer, NULL },
{ SPA_TYPE_INTERFACE_DataLoop, SPA_TYPE_INFO_INTERFACE_BASE "DataLoop", SPA_TYPE_Pointer, NULL },
{ SPA_TYPE_INTERFACE_MainLoop, SPA_TYPE_INFO_INTERFACE_BASE "MainLoop", SPA_TYPE_Pointer, NULL },
{ SPA_TYPE_INTERFACE_DBus, SPA_TYPE_INFO_INTERFACE_BASE "DBus", SPA_TYPE_Pointer, NULL },
{ SPA_TYPE_INTERFACE_Monitor, SPA_TYPE_INFO_INTERFACE_BASE "Monitor", SPA_TYPE_Pointer, NULL },
{ SPA_TYPE_INTERFACE_Node, SPA_TYPE_INFO_INTERFACE_BASE "Node", SPA_TYPE_Pointer, NULL },
{ SPA_TYPE_INTERFACE_Device, SPA_TYPE_INFO_INTERFACE_BASE "Device", SPA_TYPE_Pointer, NULL },
{ SPA_TYPE_INTERFACE_CPU, SPA_TYPE_INFO_INTERFACE_BASE "CPU", SPA_TYPE_Pointer, NULL },
{ SPA_TYPE_INTERFACE_START, SPA_TYPE_Pointer, SPA_TYPE_INFO_Interface, NULL },
{ SPA_TYPE_INTERFACE_Handle, SPA_TYPE_Pointer, SPA_TYPE_INFO_INTERFACE_BASE "Handle", NULL },
{ SPA_TYPE_INTERFACE_HandleFactory, SPA_TYPE_Pointer, SPA_TYPE_INFO_INTERFACE_BASE "HandleFactory", NULL },
{ SPA_TYPE_INTERFACE_Log, SPA_TYPE_Pointer, SPA_TYPE_INFO_INTERFACE_BASE "Log", NULL },
{ SPA_TYPE_INTERFACE_Loop, SPA_TYPE_Pointer, SPA_TYPE_INFO_INTERFACE_BASE "Loop", NULL },
{ SPA_TYPE_INTERFACE_LoopControl, SPA_TYPE_Pointer, SPA_TYPE_INFO_INTERFACE_BASE "LoopControl", NULL },
{ SPA_TYPE_INTERFACE_LoopUtils, SPA_TYPE_Pointer, SPA_TYPE_INFO_INTERFACE_BASE "LoopUtils", NULL },
{ SPA_TYPE_INTERFACE_DataLoop, SPA_TYPE_Pointer, SPA_TYPE_INFO_INTERFACE_BASE "DataLoop", NULL },
{ SPA_TYPE_INTERFACE_MainLoop, SPA_TYPE_Pointer, SPA_TYPE_INFO_INTERFACE_BASE "MainLoop", NULL },
{ SPA_TYPE_INTERFACE_DBus, SPA_TYPE_Pointer, SPA_TYPE_INFO_INTERFACE_BASE "DBus", NULL },
{ SPA_TYPE_INTERFACE_Monitor, SPA_TYPE_Pointer, SPA_TYPE_INFO_INTERFACE_BASE "Monitor", NULL },
{ SPA_TYPE_INTERFACE_Node, SPA_TYPE_Pointer, SPA_TYPE_INFO_INTERFACE_BASE "Node", NULL },
{ SPA_TYPE_INTERFACE_Device, SPA_TYPE_Pointer, SPA_TYPE_INFO_INTERFACE_BASE "Device", NULL },
{ SPA_TYPE_INTERFACE_CPU, SPA_TYPE_Pointer, SPA_TYPE_INFO_INTERFACE_BASE "CPU", NULL },
{ SPA_TYPE_EVENT_START, SPA_TYPE_INFO_Event, SPA_TYPE_Object, NULL },
{ SPA_TYPE_EVENT_Monitor, SPA_TYPE_INFO_EVENT_BASE "Monitor", SPA_TYPE_Object, spa_type_monitor_event },
{ SPA_TYPE_EVENT_Node, SPA_TYPE_INFO_EVENT_BASE "Node", SPA_TYPE_Object, spa_type_node_event },
{ SPA_TYPE_EVENT_START, SPA_TYPE_Object, SPA_TYPE_INFO_Event, NULL },
{ SPA_TYPE_EVENT_Monitor, SPA_TYPE_Object, SPA_TYPE_INFO_EVENT_BASE "Monitor", spa_type_monitor_event },
{ SPA_TYPE_EVENT_Node, SPA_TYPE_Object, SPA_TYPE_INFO_EVENT_BASE "Node", spa_type_node_event },
{ SPA_TYPE_COMMAND_START, SPA_TYPE_INFO_Command, SPA_TYPE_Object, NULL },
{ SPA_TYPE_COMMAND_Node, SPA_TYPE_INFO_COMMAND_BASE "Node", SPA_TYPE_Object, spa_type_node_command },
{ SPA_TYPE_COMMAND_START, SPA_TYPE_Object, SPA_TYPE_INFO_Command, NULL },
{ SPA_TYPE_COMMAND_Node, SPA_TYPE_Object, SPA_TYPE_INFO_COMMAND_BASE "Node", spa_type_node_command },
{ SPA_TYPE_OBJECT_START, SPA_TYPE_INFO_Object, SPA_TYPE_Object, NULL },
{ SPA_TYPE_OBJECT_MonitorItem, SPA_TYPE_INFO_MonitorItem, SPA_TYPE_Object, spa_type_monitor_item },
{ SPA_TYPE_OBJECT_ParamList, SPA_TYPE_INFO_PARAM_List, SPA_TYPE_Object, spa_type_param_list, },
{ SPA_TYPE_OBJECT_PropInfo, SPA_TYPE_INFO_PropInfo, SPA_TYPE_Object, spa_type_prop_info, },
{ SPA_TYPE_OBJECT_Props, SPA_TYPE_INFO_Props, SPA_TYPE_Object, spa_type_props },
{ SPA_TYPE_OBJECT_Format, SPA_TYPE_INFO_Format, SPA_TYPE_Object, spa_type_format },
{ SPA_TYPE_OBJECT_ParamBuffers, SPA_TYPE_INFO_PARAM_Buffers, SPA_TYPE_Object, spa_type_param_buffers, },
{ SPA_TYPE_OBJECT_ParamMeta, SPA_TYPE_INFO_PARAM_Meta, SPA_TYPE_Object, spa_type_param_meta },
{ SPA_TYPE_OBJECT_ParamIO, SPA_TYPE_INFO_PARAM_IO, SPA_TYPE_Object, spa_type_param_io },
{ SPA_TYPE_OBJECT_ParamProfile, SPA_TYPE_INFO_PARAM_Profile, SPA_TYPE_Object, spa_type_param_profile },
{ SPA_TYPE_OBJECT_START, SPA_TYPE_Object, SPA_TYPE_INFO_Object, NULL },
{ SPA_TYPE_OBJECT_MonitorItem, SPA_TYPE_Object, SPA_TYPE_INFO_MonitorItem, spa_type_monitor_item },
{ SPA_TYPE_OBJECT_ParamList, SPA_TYPE_Object, SPA_TYPE_INFO_PARAM_List, spa_type_param_list, },
{ SPA_TYPE_OBJECT_PropInfo, SPA_TYPE_Object, SPA_TYPE_INFO_PropInfo, spa_type_prop_info, },
{ SPA_TYPE_OBJECT_Props, SPA_TYPE_Object, SPA_TYPE_INFO_Props, spa_type_props },
{ SPA_TYPE_OBJECT_Format, SPA_TYPE_Object, SPA_TYPE_INFO_Format, spa_type_format },
{ SPA_TYPE_OBJECT_ParamBuffers, SPA_TYPE_Object, SPA_TYPE_INFO_PARAM_Buffers, spa_type_param_buffers, },
{ SPA_TYPE_OBJECT_ParamMeta, SPA_TYPE_Object, SPA_TYPE_INFO_PARAM_Meta, spa_type_param_meta },
{ SPA_TYPE_OBJECT_ParamIO, SPA_TYPE_Object, SPA_TYPE_INFO_PARAM_IO, spa_type_param_io },
{ SPA_TYPE_OBJECT_ParamProfile, SPA_TYPE_Object, SPA_TYPE_INFO_PARAM_Profile, spa_type_param_profile },
{ 0, NULL, 0, NULL }
{ 0, 0, NULL, NULL }
};
#ifdef __cplusplus

View file

@ -141,8 +141,8 @@ enum {
struct spa_type_info {
uint32_t type;
const char *name;
uint32_t parent;
const char *name;
const struct spa_type_info *values;
};

View file

@ -806,10 +806,7 @@ static const struct spa_dict_item info_items[] = {
{ "factory.description", "Play audio with the alsa API" },
};
static const struct spa_dict info = {
info_items,
SPA_N_ELEMENTS(info_items),
};
static const struct spa_dict info = SPA_DICT_INIT_ARRAY(info_items);
const struct spa_handle_factory spa_alsa_sink_factory = {
SPA_VERSION_HANDLE_FACTORY,

View file

@ -816,10 +816,7 @@ static const struct spa_dict_item info_items[] = {
{ "factory.description", "Record audio with the alsa API" },
};
static const struct spa_dict info = {
info_items,
SPA_N_ELEMENTS(info_items)
};
static const struct spa_dict info = SPA_DICT_INIT_ARRAY(info_items);
const struct spa_handle_factory spa_alsa_source_factory = {
SPA_VERSION_HANDLE_FACTORY,

View file

@ -1108,10 +1108,7 @@ static const struct spa_dict_item info_items[] = {
{ "factory.description", "Generate an audio test pattern" },
};
static const struct spa_dict info = {
info_items,
SPA_N_ELEMENTS(info_items)
};
static const struct spa_dict info = SPA_DICT_INIT_ARRAY(info_items);
const struct spa_handle_factory spa_audiotestsrc_factory = {
SPA_VERSION_HANDLE_FACTORY,

View file

@ -1421,10 +1421,7 @@ static const struct spa_dict_item info_items[] = {
{ "factory.description", "Play audio with the a2dp" },
};
static const struct spa_dict info = {
info_items,
SPA_N_ELEMENTS(info_items),
};
static const struct spa_dict info = SPA_DICT_INIT_ARRAY(info_items);
struct spa_handle_factory spa_a2dp_sink_factory = {
SPA_VERSION_HANDLE_FACTORY,

View file

@ -982,10 +982,7 @@ static const struct spa_dict_item info_items[] = {
{ "factory.description", "Generate a video test pattern" },
};
static const struct spa_dict info = {
info_items,
SPA_N_ELEMENTS(info_items)
};
static const struct spa_dict info = SPA_DICT_INIT_ARRAY(info_items);
const struct spa_handle_factory spa_videotestsrc_factory = {
SPA_VERSION_HANDLE_FACTORY,