Add sound support

This commit is contained in:
Fierelier 2024-10-16 03:08:12 +02:00
parent c8c4d1497e
commit 3e2db99227
2 changed files with 24 additions and 0 deletions

1
main.c
View File

@ -6,6 +6,7 @@
#include "time.c" #include "time.c"
#include "events.c" #include "events.c"
#include "input.c" #include "input.c"
#include "sound.c"
unigi_type_error unigi_init() { unigi_type_error unigi_init() {
return 0; return 0;

23
sound.c Normal file
View File

@ -0,0 +1,23 @@
SDL_AudioSpec unigi_platform_audio_spec;
void unigi_platform_audio_callback(void * userdata, uint8_t * stream, int len) {
void (* callback)(uint8_t *, size_t) = userdata;
callback(stream, len);
}
unigi_type_error unigi_sound_init(void (* callback)(uint8_t *, size_t)) {
SDL_AudioSpec desired;
desired.freq = 44100;
desired.channels = 2;
desired.samples = 1024;
desired.callback = unigi_platform_audio_callback;
desired.userdata = callback;
if (SDL_OpenAudio(&desired, &unigi_platform_audio_spec) < 0) {
printf("Could not initialize audio: %s\n",SDL_GetError());
return 1;
} else {
SDL_PauseAudio(0);
return 0;
}
}