Add sound support
This commit is contained in:
parent
7ecf26ca7c
commit
01fbe7125e
1
main.c
1
main.c
@ -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;
|
||||||
|
22
sound.c
Normal file
22
sound.c
Normal file
@ -0,0 +1,22 @@
|
|||||||
|
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) {
|
||||||
|
return 1;
|
||||||
|
} else {
|
||||||
|
SDL_PauseAudio(0);
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
}
|
Loading…
Reference in New Issue
Block a user