Merge pull request #5505 from RoboMage/sdl2_audio_bitset

SDL2 - AudioAllowChangeFlags bit_set
This commit is contained in:
Laytan
2025-08-01 23:46:26 +02:00
committed by GitHub
+9 -7
View File
@@ -74,12 +74,14 @@ when ODIN_ENDIAN == .Little {
AUDIO_F32SYS :: AUDIO_F32MSB AUDIO_F32SYS :: AUDIO_F32MSB
} }
AudioAllowChangeFlags :: distinct bit_set[AudioAllowChangeFlag; c.int]
AUDIO_ALLOW_FREQUENCY_CHANGE :: 0x00000001 AudioAllowChangeFlag :: enum c.int {
AUDIO_ALLOW_FORMAT_CHANGE :: 0x00000002 FREQUENCY = 0,
AUDIO_ALLOW_CHANNELS_CHANGE :: 0x00000004 FORMAT = 1,
AUDIO_ALLOW_SAMPLES_CHANGE :: 0x00000008 CHANNELS = 2,
AUDIO_ALLOW_ANY_CHANGE :: AUDIO_ALLOW_FREQUENCY_CHANGE|AUDIO_ALLOW_FORMAT_CHANGE|AUDIO_ALLOW_CHANNELS_CHANGE|AUDIO_ALLOW_SAMPLES_CHANGE SAMPLES = 3,
}
AUDIO_ALLOW_ANY_CHANGE :: AudioAllowChangeFlags{.FREQUENCY, .FORMAT, .CHANNELS, .SAMPLES}
AudioCallback :: proc "c" (userdata: rawptr, stream: [^]u8, len: c.int) AudioCallback :: proc "c" (userdata: rawptr, stream: [^]u8, len: c.int)
@@ -151,7 +153,7 @@ foreign lib {
iscapture: bool, iscapture: bool,
desired: ^AudioSpec, desired: ^AudioSpec,
obtained: ^AudioSpec, obtained: ^AudioSpec,
allowed_changes: bool) -> AudioDeviceID --- allowed_changes: AudioAllowChangeFlags) -> AudioDeviceID ---
} }