mirror of
https://github.com/Ryujinx/libsoundio.git
synced 2024-12-23 04:35:35 +00:00
Do not use C99 array initialization syntax.
This commit is contained in:
parent
aa3749a062
commit
d1eb1d8042
|
@ -9,23 +9,25 @@
|
||||||
|
|
||||||
#include <stdio.h>
|
#include <stdio.h>
|
||||||
|
|
||||||
static struct SoundIoChannelLayout builtin_channel_layouts[] = {
|
static struct SoundIoChannelLayout *make_builtin_channel_layouts()
|
||||||
[SoundIoChannelLayoutIdMono] = {
|
{
|
||||||
|
static struct SoundIoChannelLayout layouts[SoundIoChannelLayoutIdMax];
|
||||||
|
layouts[SoundIoChannelLayoutIdMono] = {
|
||||||
"Mono",
|
"Mono",
|
||||||
1,
|
1,
|
||||||
{
|
{
|
||||||
SoundIoChannelIdFrontCenter,
|
SoundIoChannelIdFrontCenter,
|
||||||
},
|
},
|
||||||
},
|
};
|
||||||
[SoundIoChannelLayoutIdStereo] = {
|
layouts[SoundIoChannelLayoutIdStereo] = {
|
||||||
"Stereo",
|
"Stereo",
|
||||||
2,
|
2,
|
||||||
{
|
{
|
||||||
SoundIoChannelIdFrontLeft,
|
SoundIoChannelIdFrontLeft,
|
||||||
SoundIoChannelIdFrontRight,
|
SoundIoChannelIdFrontRight,
|
||||||
},
|
},
|
||||||
},
|
};
|
||||||
[SoundIoChannelLayoutId2Point1] = {
|
layouts[SoundIoChannelLayoutId2Point1] = {
|
||||||
"2.1",
|
"2.1",
|
||||||
3,
|
3,
|
||||||
{
|
{
|
||||||
|
@ -33,8 +35,8 @@ static struct SoundIoChannelLayout builtin_channel_layouts[] = {
|
||||||
SoundIoChannelIdFrontRight,
|
SoundIoChannelIdFrontRight,
|
||||||
SoundIoChannelIdLfe,
|
SoundIoChannelIdLfe,
|
||||||
},
|
},
|
||||||
},
|
};
|
||||||
[SoundIoChannelLayoutId3Point0] = {
|
layouts[SoundIoChannelLayoutId3Point0] = {
|
||||||
"3.0",
|
"3.0",
|
||||||
3,
|
3,
|
||||||
{
|
{
|
||||||
|
@ -42,8 +44,8 @@ static struct SoundIoChannelLayout builtin_channel_layouts[] = {
|
||||||
SoundIoChannelIdFrontRight,
|
SoundIoChannelIdFrontRight,
|
||||||
SoundIoChannelIdFrontCenter,
|
SoundIoChannelIdFrontCenter,
|
||||||
}
|
}
|
||||||
},
|
};
|
||||||
[SoundIoChannelLayoutId3Point0Back] = {
|
layouts[SoundIoChannelLayoutId3Point0Back] = {
|
||||||
"3.0 (back)",
|
"3.0 (back)",
|
||||||
3,
|
3,
|
||||||
{
|
{
|
||||||
|
@ -51,8 +53,8 @@ static struct SoundIoChannelLayout builtin_channel_layouts[] = {
|
||||||
SoundIoChannelIdFrontRight,
|
SoundIoChannelIdFrontRight,
|
||||||
SoundIoChannelIdBackCenter,
|
SoundIoChannelIdBackCenter,
|
||||||
}
|
}
|
||||||
},
|
};
|
||||||
[SoundIoChannelLayoutId3Point1] = {
|
layouts[SoundIoChannelLayoutId3Point1] = {
|
||||||
"3.1",
|
"3.1",
|
||||||
4,
|
4,
|
||||||
{
|
{
|
||||||
|
@ -61,8 +63,8 @@ static struct SoundIoChannelLayout builtin_channel_layouts[] = {
|
||||||
SoundIoChannelIdFrontCenter,
|
SoundIoChannelIdFrontCenter,
|
||||||
SoundIoChannelIdLfe,
|
SoundIoChannelIdLfe,
|
||||||
}
|
}
|
||||||
},
|
};
|
||||||
[SoundIoChannelLayoutId4Point0] = {
|
layouts[SoundIoChannelLayoutId4Point0] = {
|
||||||
"4.0",
|
"4.0",
|
||||||
4,
|
4,
|
||||||
{
|
{
|
||||||
|
@ -71,8 +73,8 @@ static struct SoundIoChannelLayout builtin_channel_layouts[] = {
|
||||||
SoundIoChannelIdFrontCenter,
|
SoundIoChannelIdFrontCenter,
|
||||||
SoundIoChannelIdBackCenter,
|
SoundIoChannelIdBackCenter,
|
||||||
}
|
}
|
||||||
},
|
};
|
||||||
[SoundIoChannelLayoutIdQuad] = {
|
layouts[SoundIoChannelLayoutIdQuad] = {
|
||||||
"Quad",
|
"Quad",
|
||||||
4,
|
4,
|
||||||
{
|
{
|
||||||
|
@ -81,8 +83,8 @@ static struct SoundIoChannelLayout builtin_channel_layouts[] = {
|
||||||
SoundIoChannelIdBackLeft,
|
SoundIoChannelIdBackLeft,
|
||||||
SoundIoChannelIdBackRight,
|
SoundIoChannelIdBackRight,
|
||||||
},
|
},
|
||||||
},
|
};
|
||||||
[SoundIoChannelLayoutIdQuadSide] = {
|
layouts[SoundIoChannelLayoutIdQuadSide] = {
|
||||||
"Quad (side)",
|
"Quad (side)",
|
||||||
4,
|
4,
|
||||||
{
|
{
|
||||||
|
@ -91,8 +93,8 @@ static struct SoundIoChannelLayout builtin_channel_layouts[] = {
|
||||||
SoundIoChannelIdSideLeft,
|
SoundIoChannelIdSideLeft,
|
||||||
SoundIoChannelIdSideRight,
|
SoundIoChannelIdSideRight,
|
||||||
}
|
}
|
||||||
},
|
};
|
||||||
[SoundIoChannelLayoutId4Point1] = {
|
layouts[SoundIoChannelLayoutId4Point1] = {
|
||||||
"4.1",
|
"4.1",
|
||||||
5,
|
5,
|
||||||
{
|
{
|
||||||
|
@ -102,8 +104,8 @@ static struct SoundIoChannelLayout builtin_channel_layouts[] = {
|
||||||
SoundIoChannelIdBackCenter,
|
SoundIoChannelIdBackCenter,
|
||||||
SoundIoChannelIdLfe,
|
SoundIoChannelIdLfe,
|
||||||
}
|
}
|
||||||
},
|
};
|
||||||
[SoundIoChannelLayoutId5Point0Back] = {
|
layouts[SoundIoChannelLayoutId5Point0Back] = {
|
||||||
"5.0 (back)",
|
"5.0 (back)",
|
||||||
5,
|
5,
|
||||||
{
|
{
|
||||||
|
@ -113,8 +115,8 @@ static struct SoundIoChannelLayout builtin_channel_layouts[] = {
|
||||||
SoundIoChannelIdBackLeft,
|
SoundIoChannelIdBackLeft,
|
||||||
SoundIoChannelIdBackRight,
|
SoundIoChannelIdBackRight,
|
||||||
}
|
}
|
||||||
},
|
};
|
||||||
[SoundIoChannelLayoutId5Point0Side] = {
|
layouts[SoundIoChannelLayoutId5Point0Side] = {
|
||||||
"5.0 (side)",
|
"5.0 (side)",
|
||||||
5,
|
5,
|
||||||
{
|
{
|
||||||
|
@ -124,8 +126,8 @@ static struct SoundIoChannelLayout builtin_channel_layouts[] = {
|
||||||
SoundIoChannelIdSideLeft,
|
SoundIoChannelIdSideLeft,
|
||||||
SoundIoChannelIdSideRight,
|
SoundIoChannelIdSideRight,
|
||||||
}
|
}
|
||||||
},
|
};
|
||||||
[SoundIoChannelLayoutId5Point1] = {
|
layouts[SoundIoChannelLayoutId5Point1] = {
|
||||||
"5.1",
|
"5.1",
|
||||||
6,
|
6,
|
||||||
{
|
{
|
||||||
|
@ -136,8 +138,8 @@ static struct SoundIoChannelLayout builtin_channel_layouts[] = {
|
||||||
SoundIoChannelIdSideRight,
|
SoundIoChannelIdSideRight,
|
||||||
SoundIoChannelIdLfe,
|
SoundIoChannelIdLfe,
|
||||||
}
|
}
|
||||||
},
|
};
|
||||||
[SoundIoChannelLayoutId5Point1Back] = {
|
layouts[SoundIoChannelLayoutId5Point1Back] = {
|
||||||
"5.1 (back)",
|
"5.1 (back)",
|
||||||
6,
|
6,
|
||||||
{
|
{
|
||||||
|
@ -148,8 +150,8 @@ static struct SoundIoChannelLayout builtin_channel_layouts[] = {
|
||||||
SoundIoChannelIdBackRight,
|
SoundIoChannelIdBackRight,
|
||||||
SoundIoChannelIdLfe,
|
SoundIoChannelIdLfe,
|
||||||
}
|
}
|
||||||
},
|
};
|
||||||
[SoundIoChannelLayoutId6Point0Side] = {
|
layouts[SoundIoChannelLayoutId6Point0Side] = {
|
||||||
"6.0 (side)",
|
"6.0 (side)",
|
||||||
6,
|
6,
|
||||||
{
|
{
|
||||||
|
@ -160,8 +162,8 @@ static struct SoundIoChannelLayout builtin_channel_layouts[] = {
|
||||||
SoundIoChannelIdSideRight,
|
SoundIoChannelIdSideRight,
|
||||||
SoundIoChannelIdBackCenter,
|
SoundIoChannelIdBackCenter,
|
||||||
}
|
}
|
||||||
},
|
};
|
||||||
[SoundIoChannelLayoutId6Point0Front] = {
|
layouts[SoundIoChannelLayoutId6Point0Front] = {
|
||||||
"6.0 (front)",
|
"6.0 (front)",
|
||||||
6,
|
6,
|
||||||
{
|
{
|
||||||
|
@ -172,8 +174,8 @@ static struct SoundIoChannelLayout builtin_channel_layouts[] = {
|
||||||
SoundIoChannelIdFrontLeftCenter,
|
SoundIoChannelIdFrontLeftCenter,
|
||||||
SoundIoChannelIdFrontRightCenter,
|
SoundIoChannelIdFrontRightCenter,
|
||||||
}
|
}
|
||||||
},
|
};
|
||||||
[SoundIoChannelLayoutIdHexagonal] = {
|
layouts[SoundIoChannelLayoutIdHexagonal] = {
|
||||||
"Hexagonal",
|
"Hexagonal",
|
||||||
6,
|
6,
|
||||||
{
|
{
|
||||||
|
@ -184,8 +186,8 @@ static struct SoundIoChannelLayout builtin_channel_layouts[] = {
|
||||||
SoundIoChannelIdBackRight,
|
SoundIoChannelIdBackRight,
|
||||||
SoundIoChannelIdBackCenter,
|
SoundIoChannelIdBackCenter,
|
||||||
}
|
}
|
||||||
},
|
};
|
||||||
[SoundIoChannelLayoutId6Point1] = {
|
layouts[SoundIoChannelLayoutId6Point1] = {
|
||||||
"6.1",
|
"6.1",
|
||||||
7,
|
7,
|
||||||
{
|
{
|
||||||
|
@ -197,8 +199,8 @@ static struct SoundIoChannelLayout builtin_channel_layouts[] = {
|
||||||
SoundIoChannelIdBackCenter,
|
SoundIoChannelIdBackCenter,
|
||||||
SoundIoChannelIdLfe,
|
SoundIoChannelIdLfe,
|
||||||
}
|
}
|
||||||
},
|
};
|
||||||
[SoundIoChannelLayoutId6Point1Back] = {
|
layouts[SoundIoChannelLayoutId6Point1Back] = {
|
||||||
"6.1 (back)",
|
"6.1 (back)",
|
||||||
7,
|
7,
|
||||||
{
|
{
|
||||||
|
@ -210,8 +212,8 @@ static struct SoundIoChannelLayout builtin_channel_layouts[] = {
|
||||||
SoundIoChannelIdBackCenter,
|
SoundIoChannelIdBackCenter,
|
||||||
SoundIoChannelIdLfe,
|
SoundIoChannelIdLfe,
|
||||||
}
|
}
|
||||||
},
|
};
|
||||||
[SoundIoChannelLayoutId6Point1Front] = {
|
layouts[SoundIoChannelLayoutId6Point1Front] = {
|
||||||
"6.1 (front)",
|
"6.1 (front)",
|
||||||
7,
|
7,
|
||||||
{
|
{
|
||||||
|
@ -223,8 +225,8 @@ static struct SoundIoChannelLayout builtin_channel_layouts[] = {
|
||||||
SoundIoChannelIdFrontRightCenter,
|
SoundIoChannelIdFrontRightCenter,
|
||||||
SoundIoChannelIdLfe,
|
SoundIoChannelIdLfe,
|
||||||
}
|
}
|
||||||
},
|
};
|
||||||
[SoundIoChannelLayoutId7Point0] = {
|
layouts[SoundIoChannelLayoutId7Point0] = {
|
||||||
"7.0",
|
"7.0",
|
||||||
7,
|
7,
|
||||||
{
|
{
|
||||||
|
@ -236,8 +238,8 @@ static struct SoundIoChannelLayout builtin_channel_layouts[] = {
|
||||||
SoundIoChannelIdBackLeft,
|
SoundIoChannelIdBackLeft,
|
||||||
SoundIoChannelIdBackRight,
|
SoundIoChannelIdBackRight,
|
||||||
}
|
}
|
||||||
},
|
};
|
||||||
[SoundIoChannelLayoutId7Point0Front] = {
|
layouts[SoundIoChannelLayoutId7Point0Front] = {
|
||||||
"7.0 (front)",
|
"7.0 (front)",
|
||||||
7,
|
7,
|
||||||
{
|
{
|
||||||
|
@ -249,8 +251,8 @@ static struct SoundIoChannelLayout builtin_channel_layouts[] = {
|
||||||
SoundIoChannelIdFrontLeftCenter,
|
SoundIoChannelIdFrontLeftCenter,
|
||||||
SoundIoChannelIdFrontRightCenter,
|
SoundIoChannelIdFrontRightCenter,
|
||||||
}
|
}
|
||||||
},
|
};
|
||||||
[SoundIoChannelLayoutId7Point1] = {
|
layouts[SoundIoChannelLayoutId7Point1] = {
|
||||||
"7.1",
|
"7.1",
|
||||||
8,
|
8,
|
||||||
{
|
{
|
||||||
|
@ -263,8 +265,8 @@ static struct SoundIoChannelLayout builtin_channel_layouts[] = {
|
||||||
SoundIoChannelIdBackRight,
|
SoundIoChannelIdBackRight,
|
||||||
SoundIoChannelIdLfe,
|
SoundIoChannelIdLfe,
|
||||||
}
|
}
|
||||||
},
|
};
|
||||||
[SoundIoChannelLayoutId7Point1Wide] = {
|
layouts[SoundIoChannelLayoutId7Point1Wide] = {
|
||||||
"7.1 (wide)",
|
"7.1 (wide)",
|
||||||
8,
|
8,
|
||||||
{
|
{
|
||||||
|
@ -277,8 +279,8 @@ static struct SoundIoChannelLayout builtin_channel_layouts[] = {
|
||||||
SoundIoChannelIdFrontRightCenter,
|
SoundIoChannelIdFrontRightCenter,
|
||||||
SoundIoChannelIdLfe,
|
SoundIoChannelIdLfe,
|
||||||
}
|
}
|
||||||
},
|
};
|
||||||
[SoundIoChannelLayoutId7Point1WideBack] = {
|
layouts[SoundIoChannelLayoutId7Point1WideBack] = {
|
||||||
"7.1 (wide) (back)",
|
"7.1 (wide) (back)",
|
||||||
8,
|
8,
|
||||||
{
|
{
|
||||||
|
@ -291,8 +293,8 @@ static struct SoundIoChannelLayout builtin_channel_layouts[] = {
|
||||||
SoundIoChannelIdFrontRightCenter,
|
SoundIoChannelIdFrontRightCenter,
|
||||||
SoundIoChannelIdLfe,
|
SoundIoChannelIdLfe,
|
||||||
}
|
}
|
||||||
},
|
};
|
||||||
[SoundIoChannelLayoutIdOctagonal] = {
|
layouts[SoundIoChannelLayoutIdOctagonal] = {
|
||||||
"Octagonal",
|
"Octagonal",
|
||||||
8,
|
8,
|
||||||
{
|
{
|
||||||
|
@ -305,357 +307,226 @@ static struct SoundIoChannelLayout builtin_channel_layouts[] = {
|
||||||
SoundIoChannelIdBackRight,
|
SoundIoChannelIdBackRight,
|
||||||
SoundIoChannelIdBackCenter,
|
SoundIoChannelIdBackCenter,
|
||||||
}
|
}
|
||||||
},
|
};
|
||||||
|
return &layouts[0];
|
||||||
};
|
};
|
||||||
|
static struct SoundIoChannelLayout *builtin_channel_layouts = make_builtin_channel_layouts();
|
||||||
|
|
||||||
#define CHANNEL_NAME_ALIAS_COUNT 3
|
#define CHANNEL_NAME_ALIAS_COUNT 3
|
||||||
static const char *channel_names[][CHANNEL_NAME_ALIAS_COUNT] = {
|
typedef const char *channel_names_t[CHANNEL_NAME_ALIAS_COUNT];
|
||||||
[SoundIoChannelIdInvalid] = {
|
static channel_names_t *make_channel_names()
|
||||||
"(Invalid Channel)",
|
{
|
||||||
NULL,
|
static channel_names_t names[SoundIoChannelIdMax];
|
||||||
NULL,
|
names[SoundIoChannelIdInvalid][0] = "(Invalid Channel)";
|
||||||
},
|
names[SoundIoChannelIdInvalid][1] = NULL;
|
||||||
[SoundIoChannelIdFrontLeft] = {
|
names[SoundIoChannelIdInvalid][2] = NULL;
|
||||||
"Front Left",
|
names[SoundIoChannelIdFrontLeft][0] = "Front Left";
|
||||||
"FL",
|
names[SoundIoChannelIdFrontLeft][1] = "FL";
|
||||||
"front-left",
|
names[SoundIoChannelIdFrontLeft][2] = "front-left";
|
||||||
},
|
names[SoundIoChannelIdFrontRight][0] = "Front Right";
|
||||||
[SoundIoChannelIdFrontRight] = {
|
names[SoundIoChannelIdFrontRight][1] = "FR";
|
||||||
"Front Right",
|
names[SoundIoChannelIdFrontRight][2] = "front-right";
|
||||||
"FR",
|
names[SoundIoChannelIdFrontCenter][0] = "Front Center";
|
||||||
"front-right",
|
names[SoundIoChannelIdFrontCenter][1] = "FC";
|
||||||
},
|
names[SoundIoChannelIdFrontCenter][2] = "front-center";
|
||||||
[SoundIoChannelIdFrontCenter] = {
|
names[SoundIoChannelIdLfe][0] = "LFE";
|
||||||
"Front Center",
|
names[SoundIoChannelIdLfe][1] = "LFE";
|
||||||
"FC",
|
names[SoundIoChannelIdLfe][2] = "lfe";
|
||||||
"front-center",
|
names[SoundIoChannelIdBackLeft][0] = "Back Left";
|
||||||
},
|
names[SoundIoChannelIdBackLeft][1] = "BL";
|
||||||
[SoundIoChannelIdLfe] = {
|
names[SoundIoChannelIdBackLeft][2] = "rear-left";
|
||||||
"LFE",
|
names[SoundIoChannelIdBackRight][0] = "Back Right";
|
||||||
"LFE",
|
names[SoundIoChannelIdBackRight][1] = "BR";
|
||||||
"lfe",
|
names[SoundIoChannelIdBackRight][2] = "rear-right";
|
||||||
},
|
names[SoundIoChannelIdFrontLeftCenter][0] = "Front Left Center";
|
||||||
[SoundIoChannelIdBackLeft] = {
|
names[SoundIoChannelIdFrontLeftCenter][1] = "FLC";
|
||||||
"Back Left",
|
names[SoundIoChannelIdFrontLeftCenter][2] = "front-left-of-center";
|
||||||
"BL",
|
names[SoundIoChannelIdFrontRightCenter][0] = "Front Right Center";
|
||||||
"rear-left",
|
names[SoundIoChannelIdFrontRightCenter][1] = "FRC";
|
||||||
},
|
names[SoundIoChannelIdFrontRightCenter][2] = "front-right-of-center";
|
||||||
[SoundIoChannelIdBackRight] = {
|
names[SoundIoChannelIdBackCenter][0] = "Back Center";
|
||||||
"Back Right",
|
names[SoundIoChannelIdBackCenter][1] = "BC";
|
||||||
"BR",
|
names[SoundIoChannelIdBackCenter][2] = "rear-center";
|
||||||
"rear-right",
|
names[SoundIoChannelIdSideLeft][0] = "Side Left";
|
||||||
},
|
names[SoundIoChannelIdSideLeft][1] = "SL";
|
||||||
[SoundIoChannelIdFrontLeftCenter] = {
|
names[SoundIoChannelIdSideLeft][2] = "side-left";
|
||||||
"Front Left Center",
|
names[SoundIoChannelIdSideRight][0] = "Side Right";
|
||||||
"FLC",
|
names[SoundIoChannelIdSideRight][1] = "SR";
|
||||||
"front-left-of-center",
|
names[SoundIoChannelIdSideRight][2] = "side-right";
|
||||||
},
|
names[SoundIoChannelIdTopCenter][0] = "Top Center";
|
||||||
[SoundIoChannelIdFrontRightCenter] = {
|
names[SoundIoChannelIdTopCenter][1] = "TC";
|
||||||
"Front Right Center",
|
names[SoundIoChannelIdTopCenter][2] = "top-center";
|
||||||
"FRC",
|
names[SoundIoChannelIdTopFrontLeft][0] = "Top Front Left";
|
||||||
"front-right-of-center",
|
names[SoundIoChannelIdTopFrontLeft][1] = "TFL";
|
||||||
},
|
names[SoundIoChannelIdTopFrontLeft][2] = "top-front-left";
|
||||||
[SoundIoChannelIdBackCenter] = {
|
names[SoundIoChannelIdTopFrontCenter][0] = "Top Front Center";
|
||||||
"Back Center",
|
names[SoundIoChannelIdTopFrontCenter][1] = "TFC";
|
||||||
"BC",
|
names[SoundIoChannelIdTopFrontCenter][2] = "top-front-center";
|
||||||
"rear-center",
|
names[SoundIoChannelIdTopFrontRight][0] = "Top Front Right";
|
||||||
},
|
names[SoundIoChannelIdTopFrontRight][1] = "TFR";
|
||||||
[SoundIoChannelIdSideLeft] = {
|
names[SoundIoChannelIdTopFrontRight][2] = "top-front-right";
|
||||||
"Side Left",
|
names[SoundIoChannelIdTopBackLeft][0] = "Top Back Left";
|
||||||
"SL",
|
names[SoundIoChannelIdTopBackLeft][1] = "TBL";
|
||||||
"side-left",
|
names[SoundIoChannelIdTopBackLeft][2] = "top-rear-left";
|
||||||
},
|
names[SoundIoChannelIdTopBackCenter][0] = "Top Back Center";
|
||||||
[SoundIoChannelIdSideRight] = {
|
names[SoundIoChannelIdTopBackCenter][1] = "TBC";
|
||||||
"Side Right",
|
names[SoundIoChannelIdTopBackCenter][2] = "top-rear-center";
|
||||||
"SR",
|
names[SoundIoChannelIdTopBackRight][0] = "Top Back Right";
|
||||||
"side-right",
|
names[SoundIoChannelIdTopBackRight][1] = "TBR";
|
||||||
},
|
names[SoundIoChannelIdTopBackRight][2] = "top-rear-right";
|
||||||
[SoundIoChannelIdTopCenter] = {
|
names[SoundIoChannelIdBackLeftCenter][0] = "Back Left Center";
|
||||||
"Top Center",
|
names[SoundIoChannelIdBackLeftCenter][1] = NULL;
|
||||||
"TC",
|
names[SoundIoChannelIdBackLeftCenter][2] = NULL;
|
||||||
"top-center",
|
names[SoundIoChannelIdBackRightCenter][0] = "Back Right Center";
|
||||||
},
|
names[SoundIoChannelIdBackRightCenter][1] = NULL;
|
||||||
[SoundIoChannelIdTopFrontLeft] = {
|
names[SoundIoChannelIdBackRightCenter][2] = NULL;
|
||||||
"Top Front Left",
|
names[SoundIoChannelIdFrontLeftWide][0] = "Front Left Wide";
|
||||||
"TFL",
|
names[SoundIoChannelIdFrontLeftWide][1] = NULL;
|
||||||
"top-front-left",
|
names[SoundIoChannelIdFrontLeftWide][2] = NULL;
|
||||||
},
|
names[SoundIoChannelIdFrontRightWide][0] = "Front Right Wide";
|
||||||
[SoundIoChannelIdTopFrontCenter] = {
|
names[SoundIoChannelIdFrontRightWide][1] = NULL;
|
||||||
"Top Front Center",
|
names[SoundIoChannelIdFrontRightWide][2] = NULL;
|
||||||
"TFC",
|
names[SoundIoChannelIdFrontLeftHigh][0] = "Front Left High";
|
||||||
"top-front-center",
|
names[SoundIoChannelIdFrontLeftHigh][1] = NULL;
|
||||||
},
|
names[SoundIoChannelIdFrontLeftHigh][2] = NULL;
|
||||||
[SoundIoChannelIdTopFrontRight] = {
|
names[SoundIoChannelIdFrontCenterHigh][0] = "Front Center High";
|
||||||
"Top Front Right",
|
names[SoundIoChannelIdFrontCenterHigh][1] = NULL;
|
||||||
"TFR",
|
names[SoundIoChannelIdFrontCenterHigh][2] = NULL;
|
||||||
"top-front-right",
|
names[SoundIoChannelIdFrontRightHigh][0] = "Front Right High";
|
||||||
},
|
names[SoundIoChannelIdFrontRightHigh][1] = NULL;
|
||||||
[SoundIoChannelIdTopBackLeft] = {
|
names[SoundIoChannelIdFrontRightHigh][2] = NULL;
|
||||||
"Top Back Left",
|
names[SoundIoChannelIdTopFrontLeftCenter][0] = "Top Front Left Center";
|
||||||
"TBL",
|
names[SoundIoChannelIdTopFrontLeftCenter][1] = NULL;
|
||||||
"top-rear-left",
|
names[SoundIoChannelIdTopFrontLeftCenter][2] = NULL;
|
||||||
},
|
names[SoundIoChannelIdTopFrontRightCenter][0] = "Top Front Right Center";
|
||||||
[SoundIoChannelIdTopBackCenter] = {
|
names[SoundIoChannelIdTopFrontRightCenter][1] = NULL;
|
||||||
"Top Back Center",
|
names[SoundIoChannelIdTopFrontRightCenter][2] = NULL;
|
||||||
"TBC",
|
names[SoundIoChannelIdTopSideLeft][0] = "Top Side Left";
|
||||||
"top-rear-center",
|
names[SoundIoChannelIdTopSideLeft][1] = NULL;
|
||||||
},
|
names[SoundIoChannelIdTopSideLeft][2] = NULL;
|
||||||
[SoundIoChannelIdTopBackRight] = {
|
names[SoundIoChannelIdTopSideRight][0] = "Top Side Right";
|
||||||
"Top Back Right",
|
names[SoundIoChannelIdTopSideRight][1] = NULL;
|
||||||
"TBR",
|
names[SoundIoChannelIdTopSideRight][2] = NULL;
|
||||||
"top-rear-right",
|
names[SoundIoChannelIdLeftLfe][0] = "Left LFE";
|
||||||
},
|
names[SoundIoChannelIdLeftLfe][1] = NULL;
|
||||||
[SoundIoChannelIdBackLeftCenter] = {
|
names[SoundIoChannelIdLeftLfe][2] = NULL;
|
||||||
"Back Left Center",
|
names[SoundIoChannelIdRightLfe][0] = "Right LFE";
|
||||||
NULL,
|
names[SoundIoChannelIdRightLfe][1] = NULL;
|
||||||
NULL,
|
names[SoundIoChannelIdRightLfe][2] = NULL;
|
||||||
},
|
names[SoundIoChannelIdLfe2][0] = "LFE 2";
|
||||||
[SoundIoChannelIdBackRightCenter] = {
|
names[SoundIoChannelIdLfe2][1] = NULL;
|
||||||
"Back Right Center",
|
names[SoundIoChannelIdLfe2][2] = NULL;
|
||||||
NULL,
|
names[SoundIoChannelIdBottomCenter][0] = "Bottom Center";
|
||||||
NULL,
|
names[SoundIoChannelIdBottomCenter][1] = NULL;
|
||||||
},
|
names[SoundIoChannelIdBottomCenter][2] = NULL;
|
||||||
[SoundIoChannelIdFrontLeftWide] = {
|
names[SoundIoChannelIdBottomLeftCenter][0] = "Bottom Left Center";
|
||||||
"Front Left Wide",
|
names[SoundIoChannelIdBottomLeftCenter][1] = NULL;
|
||||||
NULL,
|
names[SoundIoChannelIdBottomLeftCenter][2] = NULL;
|
||||||
NULL,
|
names[SoundIoChannelIdBottomRightCenter][0] = "Bottom Right Center";
|
||||||
},
|
names[SoundIoChannelIdBottomRightCenter][1] = NULL;
|
||||||
[SoundIoChannelIdFrontRightWide] = {
|
names[SoundIoChannelIdBottomRightCenter][2] = NULL;
|
||||||
"Front Right Wide",
|
names[SoundIoChannelIdMsMid][0] = "Mid/Side Mid";
|
||||||
NULL,
|
names[SoundIoChannelIdMsMid][1] = NULL;
|
||||||
NULL,
|
names[SoundIoChannelIdMsMid][2] = NULL;
|
||||||
},
|
names[SoundIoChannelIdMsSide][0] = "Mid/Side Side";
|
||||||
[SoundIoChannelIdFrontLeftHigh] = {
|
names[SoundIoChannelIdMsSide][1] = NULL;
|
||||||
"Front Left High",
|
names[SoundIoChannelIdMsSide][2] = NULL;
|
||||||
NULL,
|
names[SoundIoChannelIdAmbisonicW][0] = "Ambisonic W";
|
||||||
NULL,
|
names[SoundIoChannelIdAmbisonicW][1] = NULL;
|
||||||
},
|
names[SoundIoChannelIdAmbisonicW][2] = NULL;
|
||||||
[SoundIoChannelIdFrontCenterHigh] = {
|
names[SoundIoChannelIdAmbisonicX][0] = "Ambisonic X";
|
||||||
"Front Center High",
|
names[SoundIoChannelIdAmbisonicX][1] = NULL;
|
||||||
NULL,
|
names[SoundIoChannelIdAmbisonicX][2] = NULL;
|
||||||
NULL,
|
names[SoundIoChannelIdAmbisonicY][0] = "Ambisonic Y";
|
||||||
},
|
names[SoundIoChannelIdAmbisonicY][1] = NULL;
|
||||||
[SoundIoChannelIdFrontRightHigh] = {
|
names[SoundIoChannelIdAmbisonicY][2] = NULL;
|
||||||
"Front Right High",
|
names[SoundIoChannelIdAmbisonicZ][0] = "Ambisonic Z";
|
||||||
NULL,
|
names[SoundIoChannelIdAmbisonicZ][1] = NULL;
|
||||||
NULL,
|
names[SoundIoChannelIdAmbisonicZ][2] = NULL;
|
||||||
},
|
names[SoundIoChannelIdXyX][0] = "X-Y X";
|
||||||
[SoundIoChannelIdTopFrontLeftCenter] = {
|
names[SoundIoChannelIdXyX][1] = NULL;
|
||||||
"Top Front Left Center",
|
names[SoundIoChannelIdXyX][2] = NULL;
|
||||||
NULL,
|
names[SoundIoChannelIdXyY][0] = "X-Y Y";
|
||||||
NULL,
|
names[SoundIoChannelIdXyY][1] = NULL;
|
||||||
},
|
names[SoundIoChannelIdXyY][2] = NULL;
|
||||||
[SoundIoChannelIdTopFrontRightCenter] = {
|
names[SoundIoChannelIdHeadphonesLeft][0] = "Headphones Left";
|
||||||
"Top Front Right Center",
|
names[SoundIoChannelIdHeadphonesLeft][1] = NULL;
|
||||||
NULL,
|
names[SoundIoChannelIdHeadphonesLeft][2] = NULL;
|
||||||
NULL,
|
names[SoundIoChannelIdHeadphonesRight][0] = "Headphones Right";
|
||||||
},
|
names[SoundIoChannelIdHeadphonesRight][1] = NULL;
|
||||||
[SoundIoChannelIdTopSideLeft] = {
|
names[SoundIoChannelIdHeadphonesRight][2] = NULL;
|
||||||
"Top Side Left",
|
names[SoundIoChannelIdClickTrack][0] = "Click Track";
|
||||||
NULL,
|
names[SoundIoChannelIdClickTrack][1] = NULL;
|
||||||
NULL,
|
names[SoundIoChannelIdClickTrack][2] = NULL;
|
||||||
},
|
names[SoundIoChannelIdForeignLanguage][0] = "Foreign Language";
|
||||||
[SoundIoChannelIdTopSideRight] = {
|
names[SoundIoChannelIdForeignLanguage][1] = NULL;
|
||||||
"Top Side Right",
|
names[SoundIoChannelIdForeignLanguage][2] = NULL;
|
||||||
NULL,
|
names[SoundIoChannelIdHearingImpaired][0] = "Hearing Impaired";
|
||||||
NULL,
|
names[SoundIoChannelIdHearingImpaired][1] = NULL;
|
||||||
},
|
names[SoundIoChannelIdHearingImpaired][2] = NULL;
|
||||||
[SoundIoChannelIdLeftLfe] = {
|
names[SoundIoChannelIdNarration][0] = "Narration";
|
||||||
"Left LFE",
|
names[SoundIoChannelIdNarration][1] = NULL;
|
||||||
NULL,
|
names[SoundIoChannelIdNarration][2] = NULL;
|
||||||
NULL,
|
names[SoundIoChannelIdHaptic][0] = "Haptic";
|
||||||
},
|
names[SoundIoChannelIdHaptic][1] = NULL;
|
||||||
[SoundIoChannelIdRightLfe] = {
|
names[SoundIoChannelIdHaptic][2] = NULL;
|
||||||
"Right LFE",
|
names[SoundIoChannelIdDialogCentricMix][0] = "Dialog Centric Mix";
|
||||||
NULL,
|
names[SoundIoChannelIdDialogCentricMix][1] = NULL;
|
||||||
NULL,
|
names[SoundIoChannelIdDialogCentricMix][2] = NULL;
|
||||||
},
|
names[SoundIoChannelIdAux][0] = "Aux";
|
||||||
[SoundIoChannelIdLfe2] = {
|
names[SoundIoChannelIdAux][1] = NULL;
|
||||||
"LFE 2",
|
names[SoundIoChannelIdAux][2] = NULL;
|
||||||
NULL,
|
names[SoundIoChannelIdAux0][0] = "Aux 0";
|
||||||
NULL,
|
names[SoundIoChannelIdAux0][1] = NULL;
|
||||||
},
|
names[SoundIoChannelIdAux0][2] = NULL;
|
||||||
[SoundIoChannelIdBottomCenter] = {
|
names[SoundIoChannelIdAux1][0] = "Aux 1";
|
||||||
"Bottom Center",
|
names[SoundIoChannelIdAux1][1] = NULL;
|
||||||
NULL,
|
names[SoundIoChannelIdAux1][2] = NULL;
|
||||||
NULL,
|
names[SoundIoChannelIdAux2][0] = "Aux 2";
|
||||||
},
|
names[SoundIoChannelIdAux2][1] = NULL;
|
||||||
[SoundIoChannelIdBottomLeftCenter] = {
|
names[SoundIoChannelIdAux2][2] = NULL;
|
||||||
"Bottom Left Center",
|
names[SoundIoChannelIdAux3][0] = "Aux 3";
|
||||||
NULL,
|
names[SoundIoChannelIdAux3][1] = NULL;
|
||||||
NULL,
|
names[SoundIoChannelIdAux3][2] = NULL;
|
||||||
},
|
names[SoundIoChannelIdAux4][0] = "Aux 4";
|
||||||
[SoundIoChannelIdBottomRightCenter] = {
|
names[SoundIoChannelIdAux4][1] = NULL;
|
||||||
"Bottom Right Center",
|
names[SoundIoChannelIdAux4][2] = NULL;
|
||||||
NULL,
|
names[SoundIoChannelIdAux5][0] = "Aux 5";
|
||||||
NULL,
|
names[SoundIoChannelIdAux5][1] = NULL;
|
||||||
},
|
names[SoundIoChannelIdAux5][2] = NULL;
|
||||||
[SoundIoChannelIdMsMid] = {
|
names[SoundIoChannelIdAux6][0] = "Aux 6";
|
||||||
"Mid/Side Mid",
|
names[SoundIoChannelIdAux6][1] = NULL;
|
||||||
NULL,
|
names[SoundIoChannelIdAux6][2] = NULL;
|
||||||
NULL,
|
names[SoundIoChannelIdAux7][0] = "Aux 7";
|
||||||
},
|
names[SoundIoChannelIdAux7][1] = NULL;
|
||||||
[SoundIoChannelIdMsSide] = {
|
names[SoundIoChannelIdAux7][2] = NULL;
|
||||||
"Mid/Side Side",
|
names[SoundIoChannelIdAux8][0] = "Aux 8";
|
||||||
NULL,
|
names[SoundIoChannelIdAux8][1] = NULL;
|
||||||
NULL,
|
names[SoundIoChannelIdAux8][2] = NULL;
|
||||||
},
|
names[SoundIoChannelIdAux9][0] = "Aux 9";
|
||||||
[SoundIoChannelIdAmbisonicW] = {
|
names[SoundIoChannelIdAux9][1] = NULL;
|
||||||
"Ambisonic W",
|
names[SoundIoChannelIdAux9][2] = NULL;
|
||||||
NULL,
|
names[SoundIoChannelIdAux10][0] = "Aux 10";
|
||||||
NULL,
|
names[SoundIoChannelIdAux10][1] = NULL;
|
||||||
},
|
names[SoundIoChannelIdAux10][2] = NULL;
|
||||||
[SoundIoChannelIdAmbisonicX] = {
|
names[SoundIoChannelIdAux11][0] = "Aux 11";
|
||||||
"Ambisonic X",
|
names[SoundIoChannelIdAux11][1] = NULL;
|
||||||
NULL,
|
names[SoundIoChannelIdAux11][2] = NULL;
|
||||||
NULL,
|
names[SoundIoChannelIdAux12][0] = "Aux 12";
|
||||||
},
|
names[SoundIoChannelIdAux12][1] = NULL;
|
||||||
[SoundIoChannelIdAmbisonicY] = {
|
names[SoundIoChannelIdAux12][2] = NULL;
|
||||||
"Ambisonic Y",
|
names[SoundIoChannelIdAux13][0] = "Aux 13";
|
||||||
NULL,
|
names[SoundIoChannelIdAux13][1] = NULL;
|
||||||
NULL,
|
names[SoundIoChannelIdAux13][2] = NULL;
|
||||||
},
|
names[SoundIoChannelIdAux14][0] = "Aux 14";
|
||||||
[SoundIoChannelIdAmbisonicZ] = {
|
names[SoundIoChannelIdAux14][1] = NULL;
|
||||||
"Ambisonic Z",
|
names[SoundIoChannelIdAux14][2] = NULL;
|
||||||
NULL,
|
names[SoundIoChannelIdAux15][0] = "Aux 15";
|
||||||
NULL,
|
names[SoundIoChannelIdAux15][1] = NULL;
|
||||||
},
|
names[SoundIoChannelIdAux15][2] = NULL;
|
||||||
[SoundIoChannelIdXyX] = {
|
return &names[0];
|
||||||
"X-Y X",
|
|
||||||
NULL,
|
|
||||||
NULL,
|
|
||||||
},
|
|
||||||
[SoundIoChannelIdXyY] = {
|
|
||||||
"X-Y Y",
|
|
||||||
NULL,
|
|
||||||
NULL,
|
|
||||||
},
|
|
||||||
[SoundIoChannelIdHeadphonesLeft] = {
|
|
||||||
"Headphones Left",
|
|
||||||
NULL,
|
|
||||||
NULL,
|
|
||||||
},
|
|
||||||
[SoundIoChannelIdHeadphonesRight] = {
|
|
||||||
"Headphones Right",
|
|
||||||
NULL,
|
|
||||||
NULL,
|
|
||||||
},
|
|
||||||
[SoundIoChannelIdClickTrack] = {
|
|
||||||
"Click Track",
|
|
||||||
NULL,
|
|
||||||
NULL,
|
|
||||||
},
|
|
||||||
[SoundIoChannelIdForeignLanguage] = {
|
|
||||||
"Foreign Language",
|
|
||||||
NULL,
|
|
||||||
NULL,
|
|
||||||
},
|
|
||||||
[SoundIoChannelIdHearingImpaired] = {
|
|
||||||
"Hearing Impaired",
|
|
||||||
NULL,
|
|
||||||
NULL,
|
|
||||||
},
|
|
||||||
[SoundIoChannelIdNarration] = {
|
|
||||||
"Narration",
|
|
||||||
NULL,
|
|
||||||
NULL,
|
|
||||||
},
|
|
||||||
[SoundIoChannelIdHaptic] = {
|
|
||||||
"Haptic",
|
|
||||||
NULL,
|
|
||||||
NULL,
|
|
||||||
},
|
|
||||||
[SoundIoChannelIdDialogCentricMix] = {
|
|
||||||
"Dialog Centric Mix",
|
|
||||||
NULL,
|
|
||||||
NULL,
|
|
||||||
},
|
|
||||||
[SoundIoChannelIdAux] = {
|
|
||||||
"Aux",
|
|
||||||
NULL,
|
|
||||||
NULL,
|
|
||||||
},
|
|
||||||
[SoundIoChannelIdAux0] = {
|
|
||||||
"Aux 0",
|
|
||||||
NULL,
|
|
||||||
NULL,
|
|
||||||
},
|
|
||||||
[SoundIoChannelIdAux1] = {
|
|
||||||
"Aux 1",
|
|
||||||
NULL,
|
|
||||||
NULL,
|
|
||||||
},
|
|
||||||
[SoundIoChannelIdAux2] = {
|
|
||||||
"Aux 2",
|
|
||||||
NULL,
|
|
||||||
NULL,
|
|
||||||
},
|
|
||||||
[SoundIoChannelIdAux3] = {
|
|
||||||
"Aux 3",
|
|
||||||
NULL,
|
|
||||||
NULL,
|
|
||||||
},
|
|
||||||
[SoundIoChannelIdAux4] = {
|
|
||||||
"Aux 4",
|
|
||||||
NULL,
|
|
||||||
NULL,
|
|
||||||
},
|
|
||||||
[SoundIoChannelIdAux5] = {
|
|
||||||
"Aux 5",
|
|
||||||
NULL,
|
|
||||||
NULL,
|
|
||||||
},
|
|
||||||
[SoundIoChannelIdAux6] = {
|
|
||||||
"Aux 6",
|
|
||||||
NULL,
|
|
||||||
NULL,
|
|
||||||
},
|
|
||||||
[SoundIoChannelIdAux7] = {
|
|
||||||
"Aux 7",
|
|
||||||
NULL,
|
|
||||||
NULL,
|
|
||||||
},
|
|
||||||
[SoundIoChannelIdAux8] = {
|
|
||||||
"Aux 8",
|
|
||||||
NULL,
|
|
||||||
NULL,
|
|
||||||
},
|
|
||||||
[SoundIoChannelIdAux9] = {
|
|
||||||
"Aux 9",
|
|
||||||
NULL,
|
|
||||||
NULL,
|
|
||||||
},
|
|
||||||
[SoundIoChannelIdAux10] = {
|
|
||||||
"Aux 10",
|
|
||||||
NULL,
|
|
||||||
NULL,
|
|
||||||
},
|
|
||||||
[SoundIoChannelIdAux11] = {
|
|
||||||
"Aux 11",
|
|
||||||
NULL,
|
|
||||||
NULL,
|
|
||||||
},
|
|
||||||
[SoundIoChannelIdAux12] = {
|
|
||||||
"Aux 12",
|
|
||||||
NULL,
|
|
||||||
NULL,
|
|
||||||
},
|
|
||||||
[SoundIoChannelIdAux13] = {
|
|
||||||
"Aux 13",
|
|
||||||
NULL,
|
|
||||||
NULL,
|
|
||||||
},
|
|
||||||
[SoundIoChannelIdAux14] = {
|
|
||||||
"Aux 14",
|
|
||||||
NULL,
|
|
||||||
NULL,
|
|
||||||
},
|
|
||||||
[SoundIoChannelIdAux15] = {
|
|
||||||
"Aux 15",
|
|
||||||
NULL,
|
|
||||||
NULL,
|
|
||||||
},
|
|
||||||
};
|
};
|
||||||
|
static channel_names_t *channel_names = make_channel_names();
|
||||||
|
|
||||||
const char *soundio_get_channel_name(enum SoundIoChannelId id) {
|
const char *soundio_get_channel_name(enum SoundIoChannelId id) {
|
||||||
if (id >= ARRAY_LENGTH(channel_names))
|
if (id >= ARRAY_LENGTH(channel_names))
|
||||||
|
|
|
@ -33,36 +33,29 @@ static const enum SoundIoBackend available_backends[] = {
|
||||||
SoundIoBackendDummy,
|
SoundIoBackendDummy,
|
||||||
};
|
};
|
||||||
|
|
||||||
static int (*backend_init_fns[])(struct SoundIoPrivate *) = {
|
typedef int (*backend_init_t)(struct SoundIoPrivate *);
|
||||||
[SoundIoBackendNone] = NULL,
|
static backend_init_t *make_backend_init_fns()
|
||||||
|
{
|
||||||
|
static backend_init_t fns[6] = { 0 };
|
||||||
#ifdef SOUNDIO_HAVE_JACK
|
#ifdef SOUNDIO_HAVE_JACK
|
||||||
[SoundIoBackendJack] = soundio_jack_init,
|
fns[SoundIoBackendJack] = soundio_jack_init;
|
||||||
#else
|
|
||||||
[SoundIoBackendJack] = NULL,
|
|
||||||
#endif
|
#endif
|
||||||
#ifdef SOUNDIO_HAVE_PULSEAUDIO
|
#ifdef SOUNDIO_HAVE_PULSEAUDIO
|
||||||
[SoundIoBackendPulseAudio] = soundio_pulseaudio_init,
|
fns[SoundIoBackendPulseAudio] = soundio_pulseaudio_init;
|
||||||
#else
|
|
||||||
[SoundIoBackendPulseAudio] = NULL,
|
|
||||||
#endif
|
#endif
|
||||||
#ifdef SOUNDIO_HAVE_ALSA
|
#ifdef SOUNDIO_HAVE_ALSA
|
||||||
[SoundIoBackendAlsa] = soundio_alsa_init,
|
fns[SoundIoBackendAlsa] = soundio_alsa_init;
|
||||||
#else
|
|
||||||
[SoundIoBackendAlsa] = NULL,
|
|
||||||
#endif
|
#endif
|
||||||
#ifdef SOUNDIO_HAVE_COREAUDIO
|
#ifdef SOUNDIO_HAVE_COREAUDIO
|
||||||
[SoundIoBackendCoreAudio] = soundio_coreaudio_init,
|
fns[SoundIoBackendCoreAudio] = soundio_coreaudio_init;
|
||||||
#else
|
|
||||||
[SoundIoBackendCoreAudio] = NULL,
|
|
||||||
#endif
|
#endif
|
||||||
#ifdef SOUNDIO_HAVE_WASAPI
|
#ifdef SOUNDIO_HAVE_WASAPI
|
||||||
[SoundIoBackendWasapi] = soundio_wasapi_init,
|
fns[SoundIoBackendWasapi] = soundio_wasapi_init;
|
||||||
#else
|
|
||||||
[SoundIoBackendWasapi] = NULL,
|
|
||||||
#endif
|
#endif
|
||||||
[SoundIoBackendDummy] = soundio_dummy_init,
|
fns[SoundIoBackendDummy] = soundio_dummy_init;
|
||||||
};
|
return &fns[0];
|
||||||
|
}
|
||||||
|
static backend_init_t *backend_init_fns = make_backend_init_fns();
|
||||||
|
|
||||||
SOUNDIO_MAKE_LIST_DEF(struct SoundIoDevice*, SoundIoListDevicePtr, SOUNDIO_LIST_NOT_STATIC)
|
SOUNDIO_MAKE_LIST_DEF(struct SoundIoDevice*, SoundIoListDevicePtr, SOUNDIO_LIST_NOT_STATIC)
|
||||||
SOUNDIO_MAKE_LIST_DEF(struct SoundIoSampleRateRange, SoundIoListSampleRateRange, SOUNDIO_LIST_NOT_STATIC)
|
SOUNDIO_MAKE_LIST_DEF(struct SoundIoSampleRateRange, SoundIoListSampleRateRange, SOUNDIO_LIST_NOT_STATIC)
|
||||||
|
|
Loading…
Reference in a new issue