diff --git a/spa/include/spa/buffer/alloc.h b/spa/include/spa/buffer/alloc.h index 054c8afc4..1dd910010 100644 --- a/spa/include/spa/buffer/alloc.h +++ b/spa/include/spa/buffer/alloc.h @@ -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 */ diff --git a/spa/include/spa/buffer/type-info.h b/spa/include/spa/buffer/type-info.h index e6ac90753..1860f8364 100644 --- a/spa/include/spa/buffer/type-info.h +++ b/spa/include/spa/buffer/type-info.h @@ -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 diff --git a/spa/include/spa/control/type-info.h b/spa/include/spa/control/type-info.h index 8fa781117..5cad93361 100644 --- a/spa/include/spa/control/type-info.h +++ b/spa/include/spa/control/type-info.h @@ -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 diff --git a/spa/include/spa/monitor/type-info.h b/spa/include/spa/monitor/type-info.h index 492d703ba..8b1d2139f 100644 --- a/spa/include/spa/monitor/type-info.h +++ b/spa/include/spa/monitor/type-info.h @@ -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 diff --git a/spa/include/spa/node/type-info.h b/spa/include/spa/node/type-info.h index 781a32bd8..05b23107c 100644 --- a/spa/include/spa/node/type-info.h +++ b/spa/include/spa/node/type-info.h @@ -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 diff --git a/spa/include/spa/param/audio/type-info.h b/spa/include/spa/param/audio/type-info.h index c1c5853ae..a9652224c 100644 --- a/spa/include/spa/param/audio/type-info.h +++ b/spa/include/spa/param/audio/type-info.h @@ -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 diff --git a/spa/include/spa/param/type-info.h b/spa/include/spa/param/type-info.h index 331aae9f6..0120be4ef 100644 --- a/spa/include/spa/param/type-info.h +++ b/spa/include/spa/param/type-info.h @@ -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 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 diff --git a/spa/include/spa/param/video/type-info.h b/spa/include/spa/param/video/type-info.h index ecbc6965d..22a4e2313 100644 --- a/spa/include/spa/param/video/type-info.h +++ b/spa/include/spa/param/video/type-info.h @@ -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 diff --git a/spa/include/spa/utils/dict.h b/spa/include/spa/utils/dict.h index 585d4ea4a..dd2d9b0a3 100644 --- a/spa/include/spa/utils/dict.h +++ b/spa/include/spa/utils/dict.h @@ -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; \ diff --git a/spa/include/spa/utils/type-info.h b/spa/include/spa/utils/type-info.h index 47ba190f6..f2ddf1c77 100644 --- a/spa/include/spa/utils/type-info.h +++ b/spa/include/spa/utils/type-info.h @@ -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 @@ -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 diff --git a/spa/include/spa/utils/type.h b/spa/include/spa/utils/type.h index 07e87b17c..715a48728 100644 --- a/spa/include/spa/utils/type.h +++ b/spa/include/spa/utils/type.h @@ -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; }; diff --git a/spa/plugins/alsa/alsa-sink.c b/spa/plugins/alsa/alsa-sink.c index 02fa3da4a..63b285490 100644 --- a/spa/plugins/alsa/alsa-sink.c +++ b/spa/plugins/alsa/alsa-sink.c @@ -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, diff --git a/spa/plugins/alsa/alsa-source.c b/spa/plugins/alsa/alsa-source.c index bab233790..af2306690 100644 --- a/spa/plugins/alsa/alsa-source.c +++ b/spa/plugins/alsa/alsa-source.c @@ -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, diff --git a/spa/plugins/audiotestsrc/audiotestsrc.c b/spa/plugins/audiotestsrc/audiotestsrc.c index 59ae69e86..f3448aaf1 100644 --- a/spa/plugins/audiotestsrc/audiotestsrc.c +++ b/spa/plugins/audiotestsrc/audiotestsrc.c @@ -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, diff --git a/spa/plugins/bluez5/a2dp-sink.c b/spa/plugins/bluez5/a2dp-sink.c index 54773c28d..2facad218 100644 --- a/spa/plugins/bluez5/a2dp-sink.c +++ b/spa/plugins/bluez5/a2dp-sink.c @@ -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, diff --git a/spa/plugins/videotestsrc/videotestsrc.c b/spa/plugins/videotestsrc/videotestsrc.c index ef2fb32af..c209a4fef 100644 --- a/spa/plugins/videotestsrc/videotestsrc.c +++ b/spa/plugins/videotestsrc/videotestsrc.c @@ -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, diff --git a/src/modules/module-client-node/protocol-native.c b/src/modules/module-client-node/protocol-native.c index ae526e9e8..1a8af8ca6 100644 --- a/src/modules/module-client-node/protocol-native.c +++ b/src/modules/module-client-node/protocol-native.c @@ -919,12 +919,12 @@ static const struct pw_protocol_native_demarshal pw_protocol_native_client_node_ static const struct pw_protocol_marshal pw_protocol_native_client_node_marshal = { PW_TYPE_INTERFACE_ClientNode, PW_VERSION_CLIENT_NODE, + PW_CLIENT_NODE_PROXY_METHOD_NUM, + PW_CLIENT_NODE_PROXY_EVENT_NUM, &pw_protocol_native_client_node_method_marshal, &pw_protocol_native_client_node_method_demarshal, - PW_CLIENT_NODE_PROXY_METHOD_NUM, &pw_protocol_native_client_node_event_marshal, pw_protocol_native_client_node_event_demarshal, - PW_CLIENT_NODE_PROXY_EVENT_NUM, }; struct pw_protocol *pw_protocol_native_ext_client_node_init(struct pw_core *core) diff --git a/src/modules/module-protocol-native/protocol-native.c b/src/modules/module-protocol-native/protocol-native.c index 6ea572b50..c8db0157d 100644 --- a/src/modules/module-protocol-native/protocol-native.c +++ b/src/modules/module-protocol-native/protocol-native.c @@ -1500,12 +1500,12 @@ static const struct pw_protocol_native_demarshal pw_protocol_native_core_event_d static const struct pw_protocol_marshal pw_protocol_native_core_marshal = { PW_TYPE_INTERFACE_Core, PW_VERSION_CORE, + PW_CORE_PROXY_METHOD_NUM, + PW_CORE_PROXY_EVENT_NUM, &pw_protocol_native_core_method_marshal, pw_protocol_native_core_method_demarshal, - PW_CORE_PROXY_METHOD_NUM, &pw_protocol_native_core_event_marshal, pw_protocol_native_core_event_demarshal, - PW_CORE_PROXY_EVENT_NUM }; static const struct pw_registry_proxy_methods pw_protocol_native_registry_method_marshal = { @@ -1533,12 +1533,12 @@ static const struct pw_protocol_native_demarshal pw_protocol_native_registry_eve const struct pw_protocol_marshal pw_protocol_native_registry_marshal = { PW_TYPE_INTERFACE_Registry, PW_VERSION_REGISTRY, + PW_REGISTRY_PROXY_METHOD_NUM, + PW_REGISTRY_PROXY_EVENT_NUM, &pw_protocol_native_registry_method_marshal, pw_protocol_native_registry_method_demarshal, - PW_REGISTRY_PROXY_METHOD_NUM, &pw_protocol_native_registry_event_marshal, pw_protocol_native_registry_event_demarshal, - PW_REGISTRY_PROXY_EVENT_NUM, }; static const struct pw_module_proxy_events pw_protocol_native_module_event_marshal = { @@ -1553,10 +1553,11 @@ static const struct pw_protocol_native_demarshal pw_protocol_native_module_event const struct pw_protocol_marshal pw_protocol_native_module_marshal = { PW_TYPE_INTERFACE_Module, PW_VERSION_MODULE, - NULL, NULL, 0, + 0, + PW_MODULE_PROXY_EVENT_NUM, + NULL, NULL, &pw_protocol_native_module_event_marshal, pw_protocol_native_module_event_demarshal, - PW_MODULE_PROXY_EVENT_NUM, }; static const struct pw_factory_proxy_events pw_protocol_native_factory_event_marshal = { @@ -1571,10 +1572,11 @@ static const struct pw_protocol_native_demarshal pw_protocol_native_factory_even const struct pw_protocol_marshal pw_protocol_native_factory_marshal = { PW_TYPE_INTERFACE_Factory, PW_VERSION_FACTORY, - NULL, NULL, 0, + 0, + PW_FACTORY_PROXY_EVENT_NUM, + NULL, NULL, &pw_protocol_native_factory_event_marshal, pw_protocol_native_factory_event_demarshal, - PW_FACTORY_PROXY_EVENT_NUM, }; static const struct pw_device_proxy_methods pw_protocol_native_device_method_marshal = { @@ -1602,12 +1604,12 @@ static const struct pw_protocol_native_demarshal pw_protocol_native_device_event static const struct pw_protocol_marshal pw_protocol_native_device_marshal = { PW_TYPE_INTERFACE_Device, PW_VERSION_DEVICE, + PW_DEVICE_PROXY_METHOD_NUM, + PW_DEVICE_PROXY_EVENT_NUM, &pw_protocol_native_device_method_marshal, pw_protocol_native_device_method_demarshal, - PW_DEVICE_PROXY_METHOD_NUM, &pw_protocol_native_device_event_marshal, pw_protocol_native_device_event_demarshal, - PW_DEVICE_PROXY_EVENT_NUM, }; static const struct pw_node_proxy_methods pw_protocol_native_node_method_marshal = { @@ -1637,12 +1639,12 @@ static const struct pw_protocol_native_demarshal pw_protocol_native_node_event_d static const struct pw_protocol_marshal pw_protocol_native_node_marshal = { PW_TYPE_INTERFACE_Node, PW_VERSION_NODE, + PW_NODE_PROXY_METHOD_NUM, + PW_NODE_PROXY_EVENT_NUM, &pw_protocol_native_node_method_marshal, pw_protocol_native_node_method_demarshal, - PW_NODE_PROXY_METHOD_NUM, &pw_protocol_native_node_event_marshal, pw_protocol_native_node_event_demarshal, - PW_NODE_PROXY_EVENT_NUM, }; @@ -1669,12 +1671,12 @@ static const struct pw_protocol_native_demarshal pw_protocol_native_port_event_d static const struct pw_protocol_marshal pw_protocol_native_port_marshal = { PW_TYPE_INTERFACE_Port, PW_VERSION_PORT, + PW_PORT_PROXY_METHOD_NUM, + PW_PORT_PROXY_EVENT_NUM, &pw_protocol_native_port_method_marshal, pw_protocol_native_port_method_demarshal, - PW_PORT_PROXY_METHOD_NUM, &pw_protocol_native_port_event_marshal, pw_protocol_native_port_event_demarshal, - PW_PORT_PROXY_EVENT_NUM, }; static const struct pw_client_proxy_methods pw_protocol_native_client_method_marshal = { @@ -1706,12 +1708,12 @@ static const struct pw_protocol_native_demarshal pw_protocol_native_client_event static const struct pw_protocol_marshal pw_protocol_native_client_marshal = { PW_TYPE_INTERFACE_Client, PW_VERSION_CLIENT, + PW_CLIENT_PROXY_METHOD_NUM, + PW_CLIENT_PROXY_EVENT_NUM, &pw_protocol_native_client_method_marshal, pw_protocol_native_client_method_demarshal, - PW_CLIENT_PROXY_METHOD_NUM, &pw_protocol_native_client_event_marshal, pw_protocol_native_client_event_demarshal, - PW_CLIENT_PROXY_EVENT_NUM, }; static const struct pw_link_proxy_events pw_protocol_native_link_event_marshal = { @@ -1726,10 +1728,11 @@ static const struct pw_protocol_native_demarshal pw_protocol_native_link_event_d static const struct pw_protocol_marshal pw_protocol_native_link_marshal = { PW_TYPE_INTERFACE_Link, PW_VERSION_LINK, - NULL, NULL, 0, + 0, + PW_LINK_PROXY_EVENT_NUM, + NULL, NULL, &pw_protocol_native_link_event_marshal, pw_protocol_native_link_event_demarshal, - PW_LINK_PROXY_EVENT_NUM, }; void pw_protocol_native_init(struct pw_protocol *protocol) diff --git a/src/pipewire/introspect.c b/src/pipewire/introspect.c index cfb1b63a8..32ece4c85 100644 --- a/src/pipewire/introspect.c +++ b/src/pipewire/introspect.c @@ -136,6 +136,7 @@ struct pw_core_info *pw_core_info_update(struct pw_core_info *info, return NULL; } info->id = update->id; + info->cookie = update->cookie; info->change_mask = update->change_mask; if (update->change_mask & PW_CORE_CHANGE_MASK_USER_NAME) { @@ -154,8 +155,6 @@ struct pw_core_info *pw_core_info_update(struct pw_core_info *info, free((void *) info->name); info->name = update->name ? strdup(update->name) : NULL; } - if (update->change_mask & PW_CORE_CHANGE_MASK_COOKIE) - info->cookie = update->cookie; if (update->change_mask & PW_CORE_CHANGE_MASK_PROPS) { if (info->props) pw_spa_dict_destroy(info->props); diff --git a/src/pipewire/introspect.h b/src/pipewire/introspect.h index 8c21ce05a..4b6068398 100644 --- a/src/pipewire/introspect.h +++ b/src/pipewire/introspect.h @@ -80,19 +80,18 @@ const char * pw_link_state_as_string(enum pw_link_state state); /** The core information. Extra information can be added in later versions \memberof pw_introspect */ struct pw_core_info { uint32_t id; /**< id of the global */ + uint32_t cookie; /**< a random cookie for identifying this instance of PipeWire */ #define PW_CORE_CHANGE_MASK_USER_NAME (1 << 0) #define PW_CORE_CHANGE_MASK_HOST_NAME (1 << 1) #define PW_CORE_CHANGE_MASK_VERSION (1 << 2) #define PW_CORE_CHANGE_MASK_NAME (1 << 3) -#define PW_CORE_CHANGE_MASK_COOKIE (1 << 4) -#define PW_CORE_CHANGE_MASK_PROPS (1 << 5) +#define PW_CORE_CHANGE_MASK_PROPS (1 << 4) #define PW_CORE_CHANGE_MASK_ALL (~0) uint64_t change_mask; /**< bitfield of changed fields since last call */ const char *user_name; /**< name of the user that started the core */ const char *host_name; /**< name of the machine the core is running on */ const char *version; /**< version of the core */ const char *name; /**< name of the core */ - uint32_t cookie; /**< a random cookie for identifying this instance of PipeWire */ struct spa_dict *props; /**< extra properties */ }; diff --git a/src/pipewire/pipewire.c b/src/pipewire/pipewire.c index 92b7e985b..6b803acc8 100644 --- a/src/pipewire/pipewire.c +++ b/src/pipewire/pipewire.c @@ -43,29 +43,29 @@ #define MAX_SUPPORT 32 struct plugin { - int ref; struct spa_list link; char *filename; void *hnd; spa_handle_factory_enum_func_t enum_func; struct spa_list handles; + int ref; }; struct handle { - int ref; struct spa_list link; struct plugin *plugin; const char *factory_name; struct spa_handle *handle; struct spa_list interfaces; + int ref; }; struct interface { - int ref; struct spa_list link; struct handle *handle; - uint32_t type; void *iface; + uint32_t type; + int ref; }; struct registry { @@ -77,8 +77,8 @@ struct support { const char *plugin_dir; struct plugin *support_plugin; struct spa_support support[MAX_SUPPORT]; - uint32_t n_support; struct registry *registry; + uint32_t n_support; }; static struct registry global_registry; @@ -634,18 +634,18 @@ const char* pw_get_library_version(void) } static const struct spa_type_info type_info[] = { - { PW_TYPE_INTERFACE_Core, PW_TYPE_INFO_INTERFACE_BASE "Core", SPA_TYPE_Pointer, NULL }, - { PW_TYPE_INTERFACE_Registry, PW_TYPE_INFO_INTERFACE_BASE "Registry", SPA_TYPE_Pointer, NULL }, - { PW_TYPE_INTERFACE_Node, PW_TYPE_INFO_INTERFACE_BASE "Node", SPA_TYPE_Pointer, NULL }, - { PW_TYPE_INTERFACE_Port, PW_TYPE_INFO_INTERFACE_BASE "Port", SPA_TYPE_Pointer, NULL }, - { PW_TYPE_INTERFACE_Factory, PW_TYPE_INFO_INTERFACE_BASE "Factory", SPA_TYPE_Pointer, NULL }, - { PW_TYPE_INTERFACE_Link, PW_TYPE_INFO_INTERFACE_BASE "Link", SPA_TYPE_Pointer, NULL }, - { PW_TYPE_INTERFACE_Client, PW_TYPE_INFO_INTERFACE_BASE "Client", SPA_TYPE_Pointer, NULL }, - { PW_TYPE_INTERFACE_Module, PW_TYPE_INFO_INTERFACE_BASE "Module", SPA_TYPE_Pointer, NULL }, - { PW_TYPE_INTERFACE_ClientNode, PW_TYPE_INFO_INTERFACE_BASE "ClientNode", SPA_TYPE_Pointer, NULL }, - { PW_TYPE_INTERFACE_Device, PW_TYPE_INFO_INTERFACE_BASE "Device", SPA_TYPE_Pointer, NULL }, - { SPA_ID_INVALID, "spa_types", SPA_ID_INVALID, spa_types }, - { 0, NULL, 0, NULL }, + { PW_TYPE_INTERFACE_Core, SPA_TYPE_Pointer, PW_TYPE_INFO_INTERFACE_BASE "Core", NULL }, + { PW_TYPE_INTERFACE_Registry, SPA_TYPE_Pointer, PW_TYPE_INFO_INTERFACE_BASE "Registry", NULL }, + { PW_TYPE_INTERFACE_Node, SPA_TYPE_Pointer, PW_TYPE_INFO_INTERFACE_BASE "Node", NULL }, + { PW_TYPE_INTERFACE_Port, SPA_TYPE_Pointer, PW_TYPE_INFO_INTERFACE_BASE "Port", NULL }, + { PW_TYPE_INTERFACE_Factory, SPA_TYPE_Pointer, PW_TYPE_INFO_INTERFACE_BASE "Factory", NULL }, + { PW_TYPE_INTERFACE_Link, SPA_TYPE_Pointer, PW_TYPE_INFO_INTERFACE_BASE "Link", NULL }, + { PW_TYPE_INTERFACE_Client, SPA_TYPE_Pointer, PW_TYPE_INFO_INTERFACE_BASE "Client", NULL }, + { PW_TYPE_INTERFACE_Module, SPA_TYPE_Pointer, PW_TYPE_INFO_INTERFACE_BASE "Module", NULL }, + { PW_TYPE_INTERFACE_ClientNode, SPA_TYPE_Pointer, PW_TYPE_INFO_INTERFACE_BASE "ClientNode", NULL }, + { PW_TYPE_INTERFACE_Device, SPA_TYPE_Pointer, PW_TYPE_INFO_INTERFACE_BASE "Device", NULL }, + { SPA_ID_INVALID, SPA_ID_INVALID, "spa_types", spa_types }, + { 0, 0, NULL, NULL }, }; SPA_EXPORT diff --git a/src/pipewire/private.h b/src/pipewire/private.h index 91569c617..12aa96198 100644 --- a/src/pipewire/private.h +++ b/src/pipewire/private.h @@ -53,10 +53,10 @@ typedef int (*pw_command_func_t) (struct pw_command *command, struct pw_core *co /** \cond */ struct pw_command { - uint32_t id; /**< id of command */ struct spa_list link; /**< link in list of commands */ pw_command_func_t func; char **args; + uint32_t id; /**< id of command */ int n_args; }; @@ -100,7 +100,6 @@ struct pw_client { struct spa_list link; /**< link in core object client list */ struct pw_global *global; /**< global object created for this client */ struct spa_hook global_listener; - bool registered; pw_permission_func_t permission_func; /**< get permissions of an object */ void *permission_data; /**< data passed to permission function */ @@ -108,21 +107,22 @@ struct pw_client { struct pw_properties *properties; /**< Client properties */ struct pw_client_info info; /**< client info */ - bool ucred_valid; /**< if the ucred member is valid */ - struct ucred ucred; /**< ucred information */ struct pw_resource *core_resource; /**< core resource object */ struct pw_map objects; /**< list of resource objects */ - bool busy; - struct spa_hook_list listener_list; struct pw_protocol *protocol; /**< protocol in use */ struct spa_list protocol_link; /**< link in the protocol client_list */ void *user_data; /**< extra user data */ + + struct ucred ucred; /**< ucred information */ + int registered:1; + int ucred_valid:1; /**< if the ucred member is valid */ + int busy:1; }; #define pw_global_events_emit(o,m,v,...) spa_hook_list_call(&o->listener_list, struct pw_global_events, m, v, ##__VA_ARGS__) @@ -210,8 +210,8 @@ struct pw_data_loop { struct spa_source *event; - bool running; pthread_t thread; + int running:1; }; #define pw_main_loop_events_emit(o,m,v,...) spa_hook_list_call(&o->listener_list, struct pw_main_loop_events, m, v, ##__VA_ARGS__) @@ -223,7 +223,7 @@ struct pw_main_loop { struct spa_hook_list listener_list; struct spa_source *event; - bool running; + int running:1; }; struct allocation { @@ -258,7 +258,6 @@ struct pw_device { struct spa_list link; /**< link in the core device_list */ struct pw_global *global; /**< global object for this device */ struct spa_hook global_listener; - bool registered; struct pw_properties *properties; /**< properties of the device */ struct pw_device_info info; /**< introspectable device info */ @@ -269,6 +268,8 @@ struct pw_device { struct spa_list node_list; void *user_data; /**< device user_data */ + + int registered:1; }; #define pw_module_events_emit(o,m,v,...) spa_hook_list_call(&o->listener_list, struct pw_module_events, m, v, ##__VA_ARGS__) @@ -327,21 +328,23 @@ struct pw_node { struct spa_list link; /**< link in core node_list */ struct pw_global *global; /**< global for this node */ struct spa_hook global_listener; - bool registered; struct pw_properties *properties; /**< properties of the node */ struct pw_node_info info; /**< introspectable node info */ - bool enabled; /**< if the node is enabled */ - bool active; /**< if the node is active */ - bool live; /**< if the node is live */ - bool driver; /**< if the node can drive the graph */ - bool exported; /**< if the node is exported */ - bool remote; /**< if the node is implemented remotely */ - bool master; /**< a master node is one of the driver nodes that + int registered:1; + int enabled:1; /**< if the node is enabled */ + int active:1; /**< if the node is active */ + int live:1; /**< if the node is live */ + int driver:1; /**< if the node can drive the graph */ + int exported:1; /**< if the node is exported */ + int remote:1; /**< if the node is implemented remotely */ + int master:1; /**< a master node is one of the driver nodes that * is selected to drive the graph */ + uint32_t port_user_data_size; /**< extra size for port user data */ + struct pw_node *driver_node; struct pw_node *driver_root; struct spa_list driver_list; @@ -349,16 +352,15 @@ struct pw_node { struct spa_node *node; /**< SPA node implementation */ - uint32_t port_user_data_size; /**< extra size for port user data */ - struct spa_list input_ports; /**< list of input ports */ struct pw_map input_port_map; /**< map from port_id to port */ + struct spa_list output_ports; /**< list of output ports */ + struct pw_map output_port_map; /**< map from port_id to port */ + uint32_t n_used_input_links; /**< number of active input links */ uint32_t idle_used_input_links; /**< number of active input to be idle */ uint32_t n_ready_input_links; /**< number of ready input links */ - struct spa_list output_ports; /**< list of output ports */ - struct pw_map output_port_map; /**< map from port_id to port */ uint32_t n_used_output_links; /**< number of active output links */ uint32_t idle_used_output_links; /**< number of active output to be idle */ uint32_t n_ready_output_links; /**< number of ready output links */ @@ -430,12 +432,11 @@ struct pw_port { enum pw_direction direction; /**< port direction */ uint32_t port_id; /**< port id */ + enum pw_port_state state; /**< state of the port */ + struct pw_properties *properties; /**< properties of the port */ struct pw_port_info info; - enum pw_port_state state; /**< state of the port */ - - bool allocated; /**< if buffers are allocated */ struct allocation allocation; struct spa_list links; /**< list of \ref pw_link */ @@ -451,6 +452,9 @@ struct pw_port { #define PW_PORT_MIX_FLAG_MULTI (1<<0) /**< multi input or output */ #define PW_PORT_MIX_FLAG_MIX_ONLY (1<<1) /**< only negotiate mix ports */ uint32_t mix_flags; /**< flags for the mixing */ + + int allocated:1; /**< if buffers are allocated */ + struct pw_map mix_port_map; /**< map from port_id from mixer */ uint32_t n_mix; uint32_t n_mix_configure; @@ -483,11 +487,9 @@ struct pw_link { struct spa_list link; /**< link in core link_list */ struct pw_global *global; /**< global for this link */ struct spa_hook global_listener; - bool registered; struct pw_link_info info; /**< introspectable link info */ struct pw_properties *properties; /**< extra link properties */ - bool feedback; struct spa_io_buffers *io; /**< link io area */ @@ -505,6 +507,9 @@ struct pw_link { } rt; void *user_data; + + int registered:1; + int feedback:1; }; #define pw_resource_events_emit(o,m,v,...) spa_hook_list_call(&o->listener_list, struct pw_resource_events, m, v, ##__VA_ARGS__) @@ -593,10 +598,10 @@ struct pw_stream { struct spa_list link; /**< link in the remote */ char *name; /**< the name of the stream */ - uint32_t node_id; /**< node id for remote node, available from - * CONFIGURE state and higher */ struct pw_properties *properties; /**< properties of the stream */ + uint32_t node_id; /**< node id for remote node, available from + * CONFIGURE state and higher */ enum pw_stream_state state; /**< stream state */ char *error; /**< error reason when state is in error */ @@ -615,7 +620,6 @@ struct pw_factory { struct spa_list link; /**< link in core node_factory_list */ struct pw_global *global; /**< global for this factory */ struct spa_hook global_listener; - bool registered; struct pw_factory_info info; /**< introspectable factory info */ struct pw_properties *properties; /**< properties of the factory */ @@ -626,6 +630,8 @@ struct pw_factory { void *implementation_data; void *user_data; + + int registered:1; }; #define pw_control_events_emit(c,m,v,...) spa_hook_list_call(&c->listener_list, struct pw_control_events, m, v, ##__VA_ARGS__) diff --git a/src/pipewire/protocol.h b/src/pipewire/protocol.h index f5a7b7aa6..98ce5bed0 100644 --- a/src/pipewire/protocol.h +++ b/src/pipewire/protocol.h @@ -75,12 +75,12 @@ struct pw_protocol_server { struct pw_protocol_marshal { uint32_t type; /**< interface type */ uint32_t version; /**< version */ + uint32_t n_methods; /**< number of methods in the interface */ + uint32_t n_events; /**< number of events in the interface */ const void *method_marshal; const void *method_demarshal; - uint32_t n_methods; /**< number of methods in the interface */ const void *event_marshal; const void *event_demarshal; - uint32_t n_events; /**< number of events in the interface */ }; struct pw_protocol_implementaton { diff --git a/src/pipewire/stream.c b/src/pipewire/stream.c index 4f0b23078..179e050db 100644 --- a/src/pipewire/stream.c +++ b/src/pipewire/stream.c @@ -80,8 +80,8 @@ struct param { #define DEFAULT_VOLUME 1.0 struct props { - bool changed; float volume; + int changed:1; }; static void reset_props(struct props *props) @@ -101,7 +101,6 @@ struct stream { enum spa_direction direction; enum pw_stream_flags flags; - bool async_connect; struct spa_hook remote_listener; struct pw_node *node; @@ -112,27 +111,28 @@ struct stream { void *callbacks_data; struct spa_io_buffers *io; struct spa_io_sequence *io_control; - uint32_t io_control_size; struct spa_io_sequence *io_notify; - uint32_t io_notify_size; struct spa_io_position *position; + uint32_t io_control_size; + uint32_t io_notify_size; struct pw_array params; struct buffer buffers[MAX_BUFFERS]; uint32_t n_buffers; + uint32_t pending_seq; + struct queue dequeued; struct queue queued; - uint32_t pending_seq; - bool disconnecting; - - bool free_data; struct data data; - uintptr_t seq; struct pw_time time; + + int async_connect:1; + int disconnecting:1; + int free_data:1; }; static struct param *add_param(struct pw_stream *stream, diff --git a/src/pipewire/thread-loop.c b/src/pipewire/thread-loop.c index 91beb004d..6d14283d9 100644 --- a/src/pipewire/thread-loop.c +++ b/src/pipewire/thread-loop.c @@ -43,7 +43,6 @@ struct pw_thread_loop { pthread_cond_t cond; pthread_cond_t accept_cond; - bool running; pthread_t thread; struct spa_hook hook; @@ -52,6 +51,7 @@ struct pw_thread_loop { int n_waiting; int n_waiting_for_accept; + int running:1; }; /** \endcond */ diff --git a/src/pipewire/work-queue.c b/src/pipewire/work-queue.c index a7ea04253..7b60046e5 100644 --- a/src/pipewire/work-queue.c +++ b/src/pipewire/work-queue.c @@ -33,24 +33,24 @@ /** \cond */ struct work_item { - uint32_t id; void *obj; + uint32_t id; uint32_t seq; - int res; pw_work_func_t func; void *data; struct spa_list link; + int res; }; struct pw_work_queue { struct pw_loop *loop; struct spa_source *wakeup; - uint32_t counter; struct spa_list work_list; struct spa_list free_list; - int n_queued; + uint32_t counter; + uint32_t n_queued; }; /** \endcond */ diff --git a/src/tools/pipewire-monitor.c b/src/tools/pipewire-monitor.c index db0849972..170423bee 100644 --- a/src/tools/pipewire-monitor.c +++ b/src/tools/pipewire-monitor.c @@ -151,13 +151,13 @@ static void on_core_info(void *data, const struct pw_core_info *info) bool print_all = true, print_mark = false; printf("\ttype: %s\n", spa_debug_type_find_name(pw_type_info(), PW_TYPE_INTERFACE_Core)); + printf("\tcookie: %u\n", info->cookie); if (print_all) { printf("%c\tuser-name: \"%s\"\n", MARK_CHANGE(0), info->user_name); printf("%c\thost-name: \"%s\"\n", MARK_CHANGE(1), info->host_name); printf("%c\tversion: \"%s\"\n", MARK_CHANGE(2), info->version); printf("%c\tname: \"%s\"\n", MARK_CHANGE(3), info->name); - printf("%c\tcookie: %u\n", MARK_CHANGE(4), info->cookie); - print_properties(info->props, MARK_CHANGE(5)); + print_properties(info->props, MARK_CHANGE(4)); } }