mirror of
https://gitlab.freedesktop.org/pipewire/pipewire.git
synced 2025-11-03 09:01:54 -05:00
spa: add 64 AUX channels
Make 64 AUX channels instead of using the CUSTOM range for them.
This commit is contained in:
parent
d03f29eb66
commit
1ad54e8a26
7 changed files with 211 additions and 86 deletions
|
|
@ -207,7 +207,75 @@ enum spa_audio_channel {
|
||||||
SPA_AUDIO_CHANNEL_BLC, /**< bottom left center */
|
SPA_AUDIO_CHANNEL_BLC, /**< bottom left center */
|
||||||
SPA_AUDIO_CHANNEL_BRC, /**< bottom right center */
|
SPA_AUDIO_CHANNEL_BRC, /**< bottom right center */
|
||||||
|
|
||||||
SPA_AUDIO_CHANNEL_CUSTOM_START = 0x10000,
|
SPA_AUDIO_CHANNEL_START_Aux = 0x1000, /**< aux channels */
|
||||||
|
SPA_AUDIO_CHANNEL_AUX0 = SPA_AUDIO_CHANNEL_START_Aux,
|
||||||
|
SPA_AUDIO_CHANNEL_AUX1,
|
||||||
|
SPA_AUDIO_CHANNEL_AUX2,
|
||||||
|
SPA_AUDIO_CHANNEL_AUX3,
|
||||||
|
SPA_AUDIO_CHANNEL_AUX4,
|
||||||
|
SPA_AUDIO_CHANNEL_AUX5,
|
||||||
|
SPA_AUDIO_CHANNEL_AUX6,
|
||||||
|
SPA_AUDIO_CHANNEL_AUX7,
|
||||||
|
SPA_AUDIO_CHANNEL_AUX8,
|
||||||
|
SPA_AUDIO_CHANNEL_AUX9,
|
||||||
|
SPA_AUDIO_CHANNEL_AUX10,
|
||||||
|
SPA_AUDIO_CHANNEL_AUX11,
|
||||||
|
SPA_AUDIO_CHANNEL_AUX12,
|
||||||
|
SPA_AUDIO_CHANNEL_AUX13,
|
||||||
|
SPA_AUDIO_CHANNEL_AUX14,
|
||||||
|
SPA_AUDIO_CHANNEL_AUX15,
|
||||||
|
SPA_AUDIO_CHANNEL_AUX16,
|
||||||
|
SPA_AUDIO_CHANNEL_AUX17,
|
||||||
|
SPA_AUDIO_CHANNEL_AUX18,
|
||||||
|
SPA_AUDIO_CHANNEL_AUX19,
|
||||||
|
SPA_AUDIO_CHANNEL_AUX20,
|
||||||
|
SPA_AUDIO_CHANNEL_AUX21,
|
||||||
|
SPA_AUDIO_CHANNEL_AUX22,
|
||||||
|
SPA_AUDIO_CHANNEL_AUX23,
|
||||||
|
SPA_AUDIO_CHANNEL_AUX24,
|
||||||
|
SPA_AUDIO_CHANNEL_AUX25,
|
||||||
|
SPA_AUDIO_CHANNEL_AUX26,
|
||||||
|
SPA_AUDIO_CHANNEL_AUX27,
|
||||||
|
SPA_AUDIO_CHANNEL_AUX28,
|
||||||
|
SPA_AUDIO_CHANNEL_AUX29,
|
||||||
|
SPA_AUDIO_CHANNEL_AUX30,
|
||||||
|
SPA_AUDIO_CHANNEL_AUX31,
|
||||||
|
SPA_AUDIO_CHANNEL_AUX32,
|
||||||
|
SPA_AUDIO_CHANNEL_AUX33,
|
||||||
|
SPA_AUDIO_CHANNEL_AUX34,
|
||||||
|
SPA_AUDIO_CHANNEL_AUX35,
|
||||||
|
SPA_AUDIO_CHANNEL_AUX36,
|
||||||
|
SPA_AUDIO_CHANNEL_AUX37,
|
||||||
|
SPA_AUDIO_CHANNEL_AUX38,
|
||||||
|
SPA_AUDIO_CHANNEL_AUX39,
|
||||||
|
SPA_AUDIO_CHANNEL_AUX40,
|
||||||
|
SPA_AUDIO_CHANNEL_AUX41,
|
||||||
|
SPA_AUDIO_CHANNEL_AUX42,
|
||||||
|
SPA_AUDIO_CHANNEL_AUX43,
|
||||||
|
SPA_AUDIO_CHANNEL_AUX44,
|
||||||
|
SPA_AUDIO_CHANNEL_AUX45,
|
||||||
|
SPA_AUDIO_CHANNEL_AUX46,
|
||||||
|
SPA_AUDIO_CHANNEL_AUX47,
|
||||||
|
SPA_AUDIO_CHANNEL_AUX48,
|
||||||
|
SPA_AUDIO_CHANNEL_AUX49,
|
||||||
|
SPA_AUDIO_CHANNEL_AUX50,
|
||||||
|
SPA_AUDIO_CHANNEL_AUX51,
|
||||||
|
SPA_AUDIO_CHANNEL_AUX52,
|
||||||
|
SPA_AUDIO_CHANNEL_AUX53,
|
||||||
|
SPA_AUDIO_CHANNEL_AUX54,
|
||||||
|
SPA_AUDIO_CHANNEL_AUX55,
|
||||||
|
SPA_AUDIO_CHANNEL_AUX56,
|
||||||
|
SPA_AUDIO_CHANNEL_AUX57,
|
||||||
|
SPA_AUDIO_CHANNEL_AUX58,
|
||||||
|
SPA_AUDIO_CHANNEL_AUX59,
|
||||||
|
SPA_AUDIO_CHANNEL_AUX60,
|
||||||
|
SPA_AUDIO_CHANNEL_AUX61,
|
||||||
|
SPA_AUDIO_CHANNEL_AUX62,
|
||||||
|
SPA_AUDIO_CHANNEL_AUX63,
|
||||||
|
|
||||||
|
SPA_AUDIO_CHANNEL_LAST_Aux = 0x1fff, /**< aux channels */
|
||||||
|
|
||||||
|
SPA_AUDIO_CHANNEL_START_Custom = 0x10000,
|
||||||
};
|
};
|
||||||
|
|
||||||
/** Extra audio flags */
|
/** Extra audio flags */
|
||||||
|
|
|
||||||
|
|
@ -195,6 +195,71 @@ static const struct spa_type_info spa_type_audio_channel[] = {
|
||||||
{ SPA_AUDIO_CHANNEL_BC, SPA_TYPE_Int, SPA_TYPE_INFO_AUDIO_CHANNEL_BASE "BC", 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_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 },
|
{ SPA_AUDIO_CHANNEL_BRC, SPA_TYPE_Int, SPA_TYPE_INFO_AUDIO_CHANNEL_BASE "BRC", NULL },
|
||||||
|
|
||||||
|
{ SPA_AUDIO_CHANNEL_AUX0, SPA_TYPE_Int, SPA_TYPE_INFO_AUDIO_CHANNEL_BASE "AUX0", NULL },
|
||||||
|
{ SPA_AUDIO_CHANNEL_AUX1, SPA_TYPE_Int, SPA_TYPE_INFO_AUDIO_CHANNEL_BASE "AUX1", NULL },
|
||||||
|
{ SPA_AUDIO_CHANNEL_AUX2, SPA_TYPE_Int, SPA_TYPE_INFO_AUDIO_CHANNEL_BASE "AUX2", NULL },
|
||||||
|
{ SPA_AUDIO_CHANNEL_AUX3, SPA_TYPE_Int, SPA_TYPE_INFO_AUDIO_CHANNEL_BASE "AUX3", NULL },
|
||||||
|
{ SPA_AUDIO_CHANNEL_AUX4, SPA_TYPE_Int, SPA_TYPE_INFO_AUDIO_CHANNEL_BASE "AUX4", NULL },
|
||||||
|
{ SPA_AUDIO_CHANNEL_AUX5, SPA_TYPE_Int, SPA_TYPE_INFO_AUDIO_CHANNEL_BASE "AUX5", NULL },
|
||||||
|
{ SPA_AUDIO_CHANNEL_AUX6, SPA_TYPE_Int, SPA_TYPE_INFO_AUDIO_CHANNEL_BASE "AUX6", NULL },
|
||||||
|
{ SPA_AUDIO_CHANNEL_AUX7, SPA_TYPE_Int, SPA_TYPE_INFO_AUDIO_CHANNEL_BASE "AUX7", NULL },
|
||||||
|
{ SPA_AUDIO_CHANNEL_AUX8, SPA_TYPE_Int, SPA_TYPE_INFO_AUDIO_CHANNEL_BASE "AUX8", NULL },
|
||||||
|
{ SPA_AUDIO_CHANNEL_AUX9, SPA_TYPE_Int, SPA_TYPE_INFO_AUDIO_CHANNEL_BASE "AUX9", NULL },
|
||||||
|
{ SPA_AUDIO_CHANNEL_AUX10, SPA_TYPE_Int, SPA_TYPE_INFO_AUDIO_CHANNEL_BASE "AUX10", NULL },
|
||||||
|
{ SPA_AUDIO_CHANNEL_AUX11, SPA_TYPE_Int, SPA_TYPE_INFO_AUDIO_CHANNEL_BASE "AUX11", NULL },
|
||||||
|
{ SPA_AUDIO_CHANNEL_AUX12, SPA_TYPE_Int, SPA_TYPE_INFO_AUDIO_CHANNEL_BASE "AUX12", NULL },
|
||||||
|
{ SPA_AUDIO_CHANNEL_AUX13, SPA_TYPE_Int, SPA_TYPE_INFO_AUDIO_CHANNEL_BASE "AUX13", NULL },
|
||||||
|
{ SPA_AUDIO_CHANNEL_AUX14, SPA_TYPE_Int, SPA_TYPE_INFO_AUDIO_CHANNEL_BASE "AUX14", NULL },
|
||||||
|
{ SPA_AUDIO_CHANNEL_AUX15, SPA_TYPE_Int, SPA_TYPE_INFO_AUDIO_CHANNEL_BASE "AUX15", NULL },
|
||||||
|
{ SPA_AUDIO_CHANNEL_AUX16, SPA_TYPE_Int, SPA_TYPE_INFO_AUDIO_CHANNEL_BASE "AUX16", NULL },
|
||||||
|
{ SPA_AUDIO_CHANNEL_AUX17, SPA_TYPE_Int, SPA_TYPE_INFO_AUDIO_CHANNEL_BASE "AUX17", NULL },
|
||||||
|
{ SPA_AUDIO_CHANNEL_AUX18, SPA_TYPE_Int, SPA_TYPE_INFO_AUDIO_CHANNEL_BASE "AUX18", NULL },
|
||||||
|
{ SPA_AUDIO_CHANNEL_AUX19, SPA_TYPE_Int, SPA_TYPE_INFO_AUDIO_CHANNEL_BASE "AUX19", NULL },
|
||||||
|
{ SPA_AUDIO_CHANNEL_AUX20, SPA_TYPE_Int, SPA_TYPE_INFO_AUDIO_CHANNEL_BASE "AUX20", NULL },
|
||||||
|
{ SPA_AUDIO_CHANNEL_AUX21, SPA_TYPE_Int, SPA_TYPE_INFO_AUDIO_CHANNEL_BASE "AUX21", NULL },
|
||||||
|
{ SPA_AUDIO_CHANNEL_AUX22, SPA_TYPE_Int, SPA_TYPE_INFO_AUDIO_CHANNEL_BASE "AUX22", NULL },
|
||||||
|
{ SPA_AUDIO_CHANNEL_AUX23, SPA_TYPE_Int, SPA_TYPE_INFO_AUDIO_CHANNEL_BASE "AUX23", NULL },
|
||||||
|
{ SPA_AUDIO_CHANNEL_AUX24, SPA_TYPE_Int, SPA_TYPE_INFO_AUDIO_CHANNEL_BASE "AUX24", NULL },
|
||||||
|
{ SPA_AUDIO_CHANNEL_AUX25, SPA_TYPE_Int, SPA_TYPE_INFO_AUDIO_CHANNEL_BASE "AUX25", NULL },
|
||||||
|
{ SPA_AUDIO_CHANNEL_AUX26, SPA_TYPE_Int, SPA_TYPE_INFO_AUDIO_CHANNEL_BASE "AUX26", NULL },
|
||||||
|
{ SPA_AUDIO_CHANNEL_AUX27, SPA_TYPE_Int, SPA_TYPE_INFO_AUDIO_CHANNEL_BASE "AUX27", NULL },
|
||||||
|
{ SPA_AUDIO_CHANNEL_AUX28, SPA_TYPE_Int, SPA_TYPE_INFO_AUDIO_CHANNEL_BASE "AUX28", NULL },
|
||||||
|
{ SPA_AUDIO_CHANNEL_AUX29, SPA_TYPE_Int, SPA_TYPE_INFO_AUDIO_CHANNEL_BASE "AUX29", NULL },
|
||||||
|
{ SPA_AUDIO_CHANNEL_AUX30, SPA_TYPE_Int, SPA_TYPE_INFO_AUDIO_CHANNEL_BASE "AUX30", NULL },
|
||||||
|
{ SPA_AUDIO_CHANNEL_AUX31, SPA_TYPE_Int, SPA_TYPE_INFO_AUDIO_CHANNEL_BASE "AUX31", NULL },
|
||||||
|
{ SPA_AUDIO_CHANNEL_AUX32, SPA_TYPE_Int, SPA_TYPE_INFO_AUDIO_CHANNEL_BASE "AUX32", NULL },
|
||||||
|
{ SPA_AUDIO_CHANNEL_AUX33, SPA_TYPE_Int, SPA_TYPE_INFO_AUDIO_CHANNEL_BASE "AUX33", NULL },
|
||||||
|
{ SPA_AUDIO_CHANNEL_AUX34, SPA_TYPE_Int, SPA_TYPE_INFO_AUDIO_CHANNEL_BASE "AUX34", NULL },
|
||||||
|
{ SPA_AUDIO_CHANNEL_AUX35, SPA_TYPE_Int, SPA_TYPE_INFO_AUDIO_CHANNEL_BASE "AUX35", NULL },
|
||||||
|
{ SPA_AUDIO_CHANNEL_AUX36, SPA_TYPE_Int, SPA_TYPE_INFO_AUDIO_CHANNEL_BASE "AUX36", NULL },
|
||||||
|
{ SPA_AUDIO_CHANNEL_AUX37, SPA_TYPE_Int, SPA_TYPE_INFO_AUDIO_CHANNEL_BASE "AUX37", NULL },
|
||||||
|
{ SPA_AUDIO_CHANNEL_AUX38, SPA_TYPE_Int, SPA_TYPE_INFO_AUDIO_CHANNEL_BASE "AUX38", NULL },
|
||||||
|
{ SPA_AUDIO_CHANNEL_AUX39, SPA_TYPE_Int, SPA_TYPE_INFO_AUDIO_CHANNEL_BASE "AUX39", NULL },
|
||||||
|
{ SPA_AUDIO_CHANNEL_AUX40, SPA_TYPE_Int, SPA_TYPE_INFO_AUDIO_CHANNEL_BASE "AUX40", NULL },
|
||||||
|
{ SPA_AUDIO_CHANNEL_AUX41, SPA_TYPE_Int, SPA_TYPE_INFO_AUDIO_CHANNEL_BASE "AUX41", NULL },
|
||||||
|
{ SPA_AUDIO_CHANNEL_AUX42, SPA_TYPE_Int, SPA_TYPE_INFO_AUDIO_CHANNEL_BASE "AUX42", NULL },
|
||||||
|
{ SPA_AUDIO_CHANNEL_AUX43, SPA_TYPE_Int, SPA_TYPE_INFO_AUDIO_CHANNEL_BASE "AUX43", NULL },
|
||||||
|
{ SPA_AUDIO_CHANNEL_AUX44, SPA_TYPE_Int, SPA_TYPE_INFO_AUDIO_CHANNEL_BASE "AUX44", NULL },
|
||||||
|
{ SPA_AUDIO_CHANNEL_AUX45, SPA_TYPE_Int, SPA_TYPE_INFO_AUDIO_CHANNEL_BASE "AUX45", NULL },
|
||||||
|
{ SPA_AUDIO_CHANNEL_AUX46, SPA_TYPE_Int, SPA_TYPE_INFO_AUDIO_CHANNEL_BASE "AUX46", NULL },
|
||||||
|
{ SPA_AUDIO_CHANNEL_AUX47, SPA_TYPE_Int, SPA_TYPE_INFO_AUDIO_CHANNEL_BASE "AUX47", NULL },
|
||||||
|
{ SPA_AUDIO_CHANNEL_AUX48, SPA_TYPE_Int, SPA_TYPE_INFO_AUDIO_CHANNEL_BASE "AUX48", NULL },
|
||||||
|
{ SPA_AUDIO_CHANNEL_AUX49, SPA_TYPE_Int, SPA_TYPE_INFO_AUDIO_CHANNEL_BASE "AUX49", NULL },
|
||||||
|
{ SPA_AUDIO_CHANNEL_AUX50, SPA_TYPE_Int, SPA_TYPE_INFO_AUDIO_CHANNEL_BASE "AUX50", NULL },
|
||||||
|
{ SPA_AUDIO_CHANNEL_AUX51, SPA_TYPE_Int, SPA_TYPE_INFO_AUDIO_CHANNEL_BASE "AUX51", NULL },
|
||||||
|
{ SPA_AUDIO_CHANNEL_AUX52, SPA_TYPE_Int, SPA_TYPE_INFO_AUDIO_CHANNEL_BASE "AUX52", NULL },
|
||||||
|
{ SPA_AUDIO_CHANNEL_AUX53, SPA_TYPE_Int, SPA_TYPE_INFO_AUDIO_CHANNEL_BASE "AUX53", NULL },
|
||||||
|
{ SPA_AUDIO_CHANNEL_AUX54, SPA_TYPE_Int, SPA_TYPE_INFO_AUDIO_CHANNEL_BASE "AUX54", NULL },
|
||||||
|
{ SPA_AUDIO_CHANNEL_AUX55, SPA_TYPE_Int, SPA_TYPE_INFO_AUDIO_CHANNEL_BASE "AUX55", NULL },
|
||||||
|
{ SPA_AUDIO_CHANNEL_AUX56, SPA_TYPE_Int, SPA_TYPE_INFO_AUDIO_CHANNEL_BASE "AUX56", NULL },
|
||||||
|
{ SPA_AUDIO_CHANNEL_AUX57, SPA_TYPE_Int, SPA_TYPE_INFO_AUDIO_CHANNEL_BASE "AUX57", NULL },
|
||||||
|
{ SPA_AUDIO_CHANNEL_AUX58, SPA_TYPE_Int, SPA_TYPE_INFO_AUDIO_CHANNEL_BASE "AUX58", NULL },
|
||||||
|
{ SPA_AUDIO_CHANNEL_AUX59, SPA_TYPE_Int, SPA_TYPE_INFO_AUDIO_CHANNEL_BASE "AUX59", NULL },
|
||||||
|
{ SPA_AUDIO_CHANNEL_AUX60, SPA_TYPE_Int, SPA_TYPE_INFO_AUDIO_CHANNEL_BASE "AUX60", NULL },
|
||||||
|
{ SPA_AUDIO_CHANNEL_AUX61, SPA_TYPE_Int, SPA_TYPE_INFO_AUDIO_CHANNEL_BASE "AUX61", NULL },
|
||||||
|
{ SPA_AUDIO_CHANNEL_AUX62, SPA_TYPE_Int, SPA_TYPE_INFO_AUDIO_CHANNEL_BASE "AUX62", NULL },
|
||||||
|
{ SPA_AUDIO_CHANNEL_AUX63, SPA_TYPE_Int, SPA_TYPE_INFO_AUDIO_CHANNEL_BASE "AUX63", NULL },
|
||||||
{ 0, 0, NULL, NULL },
|
{ 0, 0, NULL, NULL },
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -54,38 +54,38 @@ static const uint32_t channel_table[PA_CHANNEL_POSITION_MAX] = {
|
||||||
[PA_CHANNEL_POSITION_SIDE_LEFT] = ACP_CHANNEL_SL,
|
[PA_CHANNEL_POSITION_SIDE_LEFT] = ACP_CHANNEL_SL,
|
||||||
[PA_CHANNEL_POSITION_SIDE_RIGHT] = ACP_CHANNEL_SR,
|
[PA_CHANNEL_POSITION_SIDE_RIGHT] = ACP_CHANNEL_SR,
|
||||||
|
|
||||||
[PA_CHANNEL_POSITION_AUX0] = ACP_CHANNEL_CUSTOM_START + 1,
|
[PA_CHANNEL_POSITION_AUX0] = ACP_CHANNEL_START_Aux + 0,
|
||||||
[PA_CHANNEL_POSITION_AUX1] = ACP_CHANNEL_CUSTOM_START + 2,
|
[PA_CHANNEL_POSITION_AUX1] = ACP_CHANNEL_START_Aux + 1,
|
||||||
[PA_CHANNEL_POSITION_AUX2] = ACP_CHANNEL_CUSTOM_START + 3,
|
[PA_CHANNEL_POSITION_AUX2] = ACP_CHANNEL_START_Aux + 2,
|
||||||
[PA_CHANNEL_POSITION_AUX3] = ACP_CHANNEL_CUSTOM_START + 4,
|
[PA_CHANNEL_POSITION_AUX3] = ACP_CHANNEL_START_Aux + 3,
|
||||||
[PA_CHANNEL_POSITION_AUX4] = ACP_CHANNEL_CUSTOM_START + 5,
|
[PA_CHANNEL_POSITION_AUX4] = ACP_CHANNEL_START_Aux + 4,
|
||||||
[PA_CHANNEL_POSITION_AUX5] = ACP_CHANNEL_CUSTOM_START + 6,
|
[PA_CHANNEL_POSITION_AUX5] = ACP_CHANNEL_START_Aux + 5,
|
||||||
[PA_CHANNEL_POSITION_AUX6] = ACP_CHANNEL_CUSTOM_START + 7,
|
[PA_CHANNEL_POSITION_AUX6] = ACP_CHANNEL_START_Aux + 6,
|
||||||
[PA_CHANNEL_POSITION_AUX7] = ACP_CHANNEL_CUSTOM_START + 8,
|
[PA_CHANNEL_POSITION_AUX7] = ACP_CHANNEL_START_Aux + 7,
|
||||||
[PA_CHANNEL_POSITION_AUX8] = ACP_CHANNEL_CUSTOM_START + 9,
|
[PA_CHANNEL_POSITION_AUX8] = ACP_CHANNEL_START_Aux + 8,
|
||||||
[PA_CHANNEL_POSITION_AUX9] = ACP_CHANNEL_CUSTOM_START + 10,
|
[PA_CHANNEL_POSITION_AUX9] = ACP_CHANNEL_START_Aux + 9,
|
||||||
[PA_CHANNEL_POSITION_AUX10] = ACP_CHANNEL_CUSTOM_START + 11,
|
[PA_CHANNEL_POSITION_AUX10] = ACP_CHANNEL_START_Aux + 10,
|
||||||
[PA_CHANNEL_POSITION_AUX11] = ACP_CHANNEL_CUSTOM_START + 12,
|
[PA_CHANNEL_POSITION_AUX11] = ACP_CHANNEL_START_Aux + 11,
|
||||||
[PA_CHANNEL_POSITION_AUX12] = ACP_CHANNEL_CUSTOM_START + 13,
|
[PA_CHANNEL_POSITION_AUX12] = ACP_CHANNEL_START_Aux + 12,
|
||||||
[PA_CHANNEL_POSITION_AUX13] = ACP_CHANNEL_CUSTOM_START + 14,
|
[PA_CHANNEL_POSITION_AUX13] = ACP_CHANNEL_START_Aux + 12,
|
||||||
[PA_CHANNEL_POSITION_AUX14] = ACP_CHANNEL_CUSTOM_START + 15,
|
[PA_CHANNEL_POSITION_AUX14] = ACP_CHANNEL_START_Aux + 14,
|
||||||
[PA_CHANNEL_POSITION_AUX15] = ACP_CHANNEL_CUSTOM_START + 16,
|
[PA_CHANNEL_POSITION_AUX15] = ACP_CHANNEL_START_Aux + 15,
|
||||||
[PA_CHANNEL_POSITION_AUX16] = ACP_CHANNEL_CUSTOM_START + 17,
|
[PA_CHANNEL_POSITION_AUX16] = ACP_CHANNEL_START_Aux + 16,
|
||||||
[PA_CHANNEL_POSITION_AUX17] = ACP_CHANNEL_CUSTOM_START + 18,
|
[PA_CHANNEL_POSITION_AUX17] = ACP_CHANNEL_START_Aux + 17,
|
||||||
[PA_CHANNEL_POSITION_AUX18] = ACP_CHANNEL_CUSTOM_START + 19,
|
[PA_CHANNEL_POSITION_AUX18] = ACP_CHANNEL_START_Aux + 18,
|
||||||
[PA_CHANNEL_POSITION_AUX19] = ACP_CHANNEL_CUSTOM_START + 20,
|
[PA_CHANNEL_POSITION_AUX19] = ACP_CHANNEL_START_Aux + 19,
|
||||||
[PA_CHANNEL_POSITION_AUX20] = ACP_CHANNEL_CUSTOM_START + 21,
|
[PA_CHANNEL_POSITION_AUX20] = ACP_CHANNEL_START_Aux + 20,
|
||||||
[PA_CHANNEL_POSITION_AUX21] = ACP_CHANNEL_CUSTOM_START + 22,
|
[PA_CHANNEL_POSITION_AUX21] = ACP_CHANNEL_START_Aux + 21,
|
||||||
[PA_CHANNEL_POSITION_AUX22] = ACP_CHANNEL_CUSTOM_START + 23,
|
[PA_CHANNEL_POSITION_AUX22] = ACP_CHANNEL_START_Aux + 22,
|
||||||
[PA_CHANNEL_POSITION_AUX23] = ACP_CHANNEL_CUSTOM_START + 24,
|
[PA_CHANNEL_POSITION_AUX23] = ACP_CHANNEL_START_Aux + 23,
|
||||||
[PA_CHANNEL_POSITION_AUX24] = ACP_CHANNEL_CUSTOM_START + 25,
|
[PA_CHANNEL_POSITION_AUX24] = ACP_CHANNEL_START_Aux + 24,
|
||||||
[PA_CHANNEL_POSITION_AUX25] = ACP_CHANNEL_CUSTOM_START + 26,
|
[PA_CHANNEL_POSITION_AUX25] = ACP_CHANNEL_START_Aux + 25,
|
||||||
[PA_CHANNEL_POSITION_AUX26] = ACP_CHANNEL_CUSTOM_START + 27,
|
[PA_CHANNEL_POSITION_AUX26] = ACP_CHANNEL_START_Aux + 26,
|
||||||
[PA_CHANNEL_POSITION_AUX27] = ACP_CHANNEL_CUSTOM_START + 28,
|
[PA_CHANNEL_POSITION_AUX27] = ACP_CHANNEL_START_Aux + 27,
|
||||||
[PA_CHANNEL_POSITION_AUX28] = ACP_CHANNEL_CUSTOM_START + 29,
|
[PA_CHANNEL_POSITION_AUX28] = ACP_CHANNEL_START_Aux + 28,
|
||||||
[PA_CHANNEL_POSITION_AUX29] = ACP_CHANNEL_CUSTOM_START + 30,
|
[PA_CHANNEL_POSITION_AUX29] = ACP_CHANNEL_START_Aux + 29,
|
||||||
[PA_CHANNEL_POSITION_AUX30] = ACP_CHANNEL_CUSTOM_START + 31,
|
[PA_CHANNEL_POSITION_AUX30] = ACP_CHANNEL_START_Aux + 30,
|
||||||
[PA_CHANNEL_POSITION_AUX31] = ACP_CHANNEL_CUSTOM_START + 32,
|
[PA_CHANNEL_POSITION_AUX31] = ACP_CHANNEL_START_Aux + 31,
|
||||||
|
|
||||||
[PA_CHANNEL_POSITION_TOP_CENTER] = ACP_CHANNEL_TC,
|
[PA_CHANNEL_POSITION_TOP_CENTER] = ACP_CHANNEL_TC,
|
||||||
|
|
||||||
|
|
@ -150,8 +150,8 @@ static inline uint32_t channel_pa2acp(pa_channel_position_t channel)
|
||||||
|
|
||||||
char *acp_channel_str(char *buf, size_t len, enum acp_channel ch)
|
char *acp_channel_str(char *buf, size_t len, enum acp_channel ch)
|
||||||
{
|
{
|
||||||
if (ch >= ACP_CHANNEL_CUSTOM_START) {
|
if (ch >= ACP_CHANNEL_START_Aux && ch <= ACP_CHANNEL_LAST_Aux) {
|
||||||
snprintf(buf, len, "AUX%d", ch - ACP_CHANNEL_CUSTOM_START);
|
snprintf(buf, len, "AUX%d", ch - ACP_CHANNEL_START_Aux);
|
||||||
} else if (ch >= ACP_CHANNEL_UNKNOWN && ch <= ACP_CHANNEL_BRC) {
|
} else if (ch >= ACP_CHANNEL_UNKNOWN && ch <= ACP_CHANNEL_BRC) {
|
||||||
snprintf(buf, len, "%s", channel_names[ch]);
|
snprintf(buf, len, "%s", channel_names[ch]);
|
||||||
} else {
|
} else {
|
||||||
|
|
|
||||||
|
|
@ -98,7 +98,11 @@ enum acp_channel {
|
||||||
ACP_CHANNEL_BC, /**< bottom center */
|
ACP_CHANNEL_BC, /**< bottom center */
|
||||||
ACP_CHANNEL_BLC, /**< bottom left center */
|
ACP_CHANNEL_BLC, /**< bottom left center */
|
||||||
ACP_CHANNEL_BRC, /**< bottom right center */
|
ACP_CHANNEL_BRC, /**< bottom right center */
|
||||||
ACP_CHANNEL_CUSTOM_START = 0x10000,
|
|
||||||
|
ACP_CHANNEL_START_Aux = 0x1000,
|
||||||
|
ACP_CHANNEL_LAST_Aux = 0x1fff,
|
||||||
|
|
||||||
|
ACP_CHANNEL_START_Custom = 0x10000,
|
||||||
};
|
};
|
||||||
|
|
||||||
char *acp_channel_str(char *buf, size_t len, enum acp_channel ch);
|
char *acp_channel_str(char *buf, size_t len, enum acp_channel ch);
|
||||||
|
|
|
||||||
|
|
@ -228,19 +228,13 @@ static int init_port(struct impl *this, enum spa_direction direction, uint32_t p
|
||||||
uint32_t position)
|
uint32_t position)
|
||||||
{
|
{
|
||||||
struct port *port = GET_PORT(this, direction, port_id);
|
struct port *port = GET_PORT(this, direction, port_id);
|
||||||
|
const char *name;
|
||||||
|
|
||||||
port->direction = direction;
|
port->direction = direction;
|
||||||
port->id = port_id;
|
port->id = port_id;
|
||||||
|
|
||||||
if (position < SPA_N_ELEMENTS(spa_type_audio_channel)) {
|
name = spa_debug_type_find_short_name(spa_type_audio_channel, position);
|
||||||
snprintf(port->position, sizeof(port->position), "%s",
|
snprintf(port->position, sizeof(port->position), "%s", name ? name : "UNK");
|
||||||
spa_debug_type_short_name(spa_type_audio_channel[position].name));
|
|
||||||
} else if (position >= SPA_AUDIO_CHANNEL_CUSTOM_START) {
|
|
||||||
snprintf(port->position, sizeof(port->position), "AUX%d",
|
|
||||||
position - SPA_AUDIO_CHANNEL_CUSTOM_START);
|
|
||||||
} else {
|
|
||||||
snprintf(port->position, sizeof(port->position), "UNK");
|
|
||||||
}
|
|
||||||
|
|
||||||
port->info_all = SPA_PORT_CHANGE_MASK_FLAGS |
|
port->info_all = SPA_PORT_CHANGE_MASK_FLAGS |
|
||||||
SPA_PORT_CHANGE_MASK_PROPS |
|
SPA_PORT_CHANGE_MASK_PROPS |
|
||||||
|
|
|
||||||
|
|
@ -168,19 +168,13 @@ static int init_port(struct impl *this, enum spa_direction direction,
|
||||||
uint32_t port_id, uint32_t position)
|
uint32_t port_id, uint32_t position)
|
||||||
{
|
{
|
||||||
struct port *port = GET_OUT_PORT(this, port_id);
|
struct port *port = GET_OUT_PORT(this, port_id);
|
||||||
|
const char *name;
|
||||||
|
|
||||||
port->direction = direction;
|
port->direction = direction;
|
||||||
port->id = port_id;
|
port->id = port_id;
|
||||||
|
|
||||||
if (position < SPA_N_ELEMENTS(spa_type_audio_channel)) {
|
name = spa_debug_type_find_short_name(spa_type_audio_channel, position);
|
||||||
snprintf(port->position, sizeof(port->position), "%s",
|
snprintf(port->position, sizeof(port->position), "%s", name ? name : "UNK");
|
||||||
spa_debug_type_short_name(spa_type_audio_channel[position].name));
|
|
||||||
} else if (position >= SPA_AUDIO_CHANNEL_CUSTOM_START) {
|
|
||||||
snprintf(port->position, sizeof(port->position), "AUX%d",
|
|
||||||
position - SPA_AUDIO_CHANNEL_CUSTOM_START);
|
|
||||||
} else {
|
|
||||||
snprintf(port->position, sizeof(port->position), "UNK");
|
|
||||||
}
|
|
||||||
|
|
||||||
port->info_all = SPA_PORT_CHANGE_MASK_FLAGS |
|
port->info_all = SPA_PORT_CHANGE_MASK_FLAGS |
|
||||||
SPA_PORT_CHANGE_MASK_PROPS |
|
SPA_PORT_CHANGE_MASK_PROPS |
|
||||||
|
|
|
||||||
|
|
@ -86,38 +86,38 @@ static const struct channel audio_channels[] = {
|
||||||
[CHANNEL_POSITION_SIDE_LEFT] = { SPA_AUDIO_CHANNEL_SL, "side-left", },
|
[CHANNEL_POSITION_SIDE_LEFT] = { SPA_AUDIO_CHANNEL_SL, "side-left", },
|
||||||
[CHANNEL_POSITION_SIDE_RIGHT] = { SPA_AUDIO_CHANNEL_SR, "side-right", },
|
[CHANNEL_POSITION_SIDE_RIGHT] = { SPA_AUDIO_CHANNEL_SR, "side-right", },
|
||||||
|
|
||||||
[CHANNEL_POSITION_AUX0] = { SPA_AUDIO_CHANNEL_CUSTOM_START + 1, "aux0", },
|
[CHANNEL_POSITION_AUX0] = { SPA_AUDIO_CHANNEL_AUX0, "aux0", },
|
||||||
[CHANNEL_POSITION_AUX1] = { SPA_AUDIO_CHANNEL_CUSTOM_START + 2, "aux1", },
|
[CHANNEL_POSITION_AUX1] = { SPA_AUDIO_CHANNEL_AUX1, "aux1", },
|
||||||
[CHANNEL_POSITION_AUX2] = { SPA_AUDIO_CHANNEL_CUSTOM_START + 3, "aux2", },
|
[CHANNEL_POSITION_AUX2] = { SPA_AUDIO_CHANNEL_AUX2, "aux2", },
|
||||||
[CHANNEL_POSITION_AUX3] = { SPA_AUDIO_CHANNEL_CUSTOM_START + 4, "aux3", },
|
[CHANNEL_POSITION_AUX3] = { SPA_AUDIO_CHANNEL_AUX3, "aux3", },
|
||||||
[CHANNEL_POSITION_AUX4] = { SPA_AUDIO_CHANNEL_CUSTOM_START + 5, "aux4", },
|
[CHANNEL_POSITION_AUX4] = { SPA_AUDIO_CHANNEL_AUX4, "aux4", },
|
||||||
[CHANNEL_POSITION_AUX5] = { SPA_AUDIO_CHANNEL_CUSTOM_START + 6, "aux5", },
|
[CHANNEL_POSITION_AUX5] = { SPA_AUDIO_CHANNEL_AUX5, "aux5", },
|
||||||
[CHANNEL_POSITION_AUX6] = { SPA_AUDIO_CHANNEL_CUSTOM_START + 7, "aux6", },
|
[CHANNEL_POSITION_AUX6] = { SPA_AUDIO_CHANNEL_AUX6, "aux6", },
|
||||||
[CHANNEL_POSITION_AUX7] = { SPA_AUDIO_CHANNEL_CUSTOM_START + 8, "aux7", },
|
[CHANNEL_POSITION_AUX7] = { SPA_AUDIO_CHANNEL_AUX7, "aux7", },
|
||||||
[CHANNEL_POSITION_AUX8] = { SPA_AUDIO_CHANNEL_CUSTOM_START + 9, "aux8", },
|
[CHANNEL_POSITION_AUX8] = { SPA_AUDIO_CHANNEL_AUX8, "aux8", },
|
||||||
[CHANNEL_POSITION_AUX9] = { SPA_AUDIO_CHANNEL_CUSTOM_START + 10, "aux9", },
|
[CHANNEL_POSITION_AUX9] = { SPA_AUDIO_CHANNEL_AUX9, "aux9", },
|
||||||
[CHANNEL_POSITION_AUX10] = { SPA_AUDIO_CHANNEL_CUSTOM_START + 11, "aux10", },
|
[CHANNEL_POSITION_AUX10] = { SPA_AUDIO_CHANNEL_AUX10, "aux10", },
|
||||||
[CHANNEL_POSITION_AUX11] = { SPA_AUDIO_CHANNEL_CUSTOM_START + 12, "aux11", },
|
[CHANNEL_POSITION_AUX11] = { SPA_AUDIO_CHANNEL_AUX11, "aux11", },
|
||||||
[CHANNEL_POSITION_AUX12] = { SPA_AUDIO_CHANNEL_CUSTOM_START + 13, "aux12", },
|
[CHANNEL_POSITION_AUX12] = { SPA_AUDIO_CHANNEL_AUX12, "aux12", },
|
||||||
[CHANNEL_POSITION_AUX13] = { SPA_AUDIO_CHANNEL_CUSTOM_START + 14, "aux13", },
|
[CHANNEL_POSITION_AUX13] = { SPA_AUDIO_CHANNEL_AUX13, "aux13", },
|
||||||
[CHANNEL_POSITION_AUX14] = { SPA_AUDIO_CHANNEL_CUSTOM_START + 15, "aux14", },
|
[CHANNEL_POSITION_AUX14] = { SPA_AUDIO_CHANNEL_AUX14, "aux14", },
|
||||||
[CHANNEL_POSITION_AUX15] = { SPA_AUDIO_CHANNEL_CUSTOM_START + 16, "aux15", },
|
[CHANNEL_POSITION_AUX15] = { SPA_AUDIO_CHANNEL_AUX15, "aux15", },
|
||||||
[CHANNEL_POSITION_AUX16] = { SPA_AUDIO_CHANNEL_CUSTOM_START + 17, "aux16", },
|
[CHANNEL_POSITION_AUX16] = { SPA_AUDIO_CHANNEL_AUX16, "aux16", },
|
||||||
[CHANNEL_POSITION_AUX17] = { SPA_AUDIO_CHANNEL_CUSTOM_START + 18, "aux17", },
|
[CHANNEL_POSITION_AUX17] = { SPA_AUDIO_CHANNEL_AUX17, "aux17", },
|
||||||
[CHANNEL_POSITION_AUX18] = { SPA_AUDIO_CHANNEL_CUSTOM_START + 19, "aux18", },
|
[CHANNEL_POSITION_AUX18] = { SPA_AUDIO_CHANNEL_AUX18, "aux18", },
|
||||||
[CHANNEL_POSITION_AUX19] = { SPA_AUDIO_CHANNEL_CUSTOM_START + 20, "aux19", },
|
[CHANNEL_POSITION_AUX19] = { SPA_AUDIO_CHANNEL_AUX19, "aux19", },
|
||||||
[CHANNEL_POSITION_AUX20] = { SPA_AUDIO_CHANNEL_CUSTOM_START + 21, "aux20", },
|
[CHANNEL_POSITION_AUX20] = { SPA_AUDIO_CHANNEL_AUX20, "aux20", },
|
||||||
[CHANNEL_POSITION_AUX21] = { SPA_AUDIO_CHANNEL_CUSTOM_START + 22, "aux21", },
|
[CHANNEL_POSITION_AUX21] = { SPA_AUDIO_CHANNEL_AUX21, "aux21", },
|
||||||
[CHANNEL_POSITION_AUX22] = { SPA_AUDIO_CHANNEL_CUSTOM_START + 23, "aux22", },
|
[CHANNEL_POSITION_AUX22] = { SPA_AUDIO_CHANNEL_AUX22, "aux22", },
|
||||||
[CHANNEL_POSITION_AUX23] = { SPA_AUDIO_CHANNEL_CUSTOM_START + 24, "aux23", },
|
[CHANNEL_POSITION_AUX23] = { SPA_AUDIO_CHANNEL_AUX23, "aux23", },
|
||||||
[CHANNEL_POSITION_AUX24] = { SPA_AUDIO_CHANNEL_CUSTOM_START + 25, "aux24", },
|
[CHANNEL_POSITION_AUX24] = { SPA_AUDIO_CHANNEL_AUX24, "aux24", },
|
||||||
[CHANNEL_POSITION_AUX25] = { SPA_AUDIO_CHANNEL_CUSTOM_START + 26, "aux25", },
|
[CHANNEL_POSITION_AUX25] = { SPA_AUDIO_CHANNEL_AUX25, "aux25", },
|
||||||
[CHANNEL_POSITION_AUX26] = { SPA_AUDIO_CHANNEL_CUSTOM_START + 27, "aux26", },
|
[CHANNEL_POSITION_AUX26] = { SPA_AUDIO_CHANNEL_AUX26, "aux26", },
|
||||||
[CHANNEL_POSITION_AUX27] = { SPA_AUDIO_CHANNEL_CUSTOM_START + 28, "aux27", },
|
[CHANNEL_POSITION_AUX27] = { SPA_AUDIO_CHANNEL_AUX27, "aux27", },
|
||||||
[CHANNEL_POSITION_AUX28] = { SPA_AUDIO_CHANNEL_CUSTOM_START + 29, "aux28", },
|
[CHANNEL_POSITION_AUX28] = { SPA_AUDIO_CHANNEL_AUX28, "aux28", },
|
||||||
[CHANNEL_POSITION_AUX29] = { SPA_AUDIO_CHANNEL_CUSTOM_START + 30, "aux29", },
|
[CHANNEL_POSITION_AUX29] = { SPA_AUDIO_CHANNEL_AUX29, "aux29", },
|
||||||
[CHANNEL_POSITION_AUX30] = { SPA_AUDIO_CHANNEL_CUSTOM_START + 31, "aux30", },
|
[CHANNEL_POSITION_AUX30] = { SPA_AUDIO_CHANNEL_AUX30, "aux30", },
|
||||||
[CHANNEL_POSITION_AUX31] = { SPA_AUDIO_CHANNEL_CUSTOM_START + 32, "aux31", },
|
[CHANNEL_POSITION_AUX31] = { SPA_AUDIO_CHANNEL_AUX31, "aux31", },
|
||||||
|
|
||||||
[CHANNEL_POSITION_TOP_CENTER] = { SPA_AUDIO_CHANNEL_TC, "top-center", },
|
[CHANNEL_POSITION_TOP_CENTER] = { SPA_AUDIO_CHANNEL_TC, "top-center", },
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue