Cleanup sound code

This commit is contained in:
Mateusz Faderewski 2023-08-18 20:19:20 +02:00
parent f1649c2436
commit 20275f5b21

View File

@ -13,21 +13,7 @@
static bool sound_initialized = false; static bool sound_initialized = false;
void sound_init_default (void) { static void sound_reconfigure (int frequency) {
if (audio_get_frequency() != DEFAULT_FREQUENCY) {
if (sound_initialized) {
mixer_close();
audio_close();
}
audio_init(DEFAULT_FREQUENCY, NUM_BUFFERS);
mixer_init(NUM_CHANNELS);
mp3player_mixer_init();
sound_initialized = true;
}
}
void sound_init_mp3_playback (void) {
int frequency = mp3player_get_samplerate();
if ((frequency > 0) && (audio_get_frequency() != frequency)) { if ((frequency > 0) && (audio_get_frequency() != frequency)) {
if (sound_initialized) { if (sound_initialized) {
mixer_close(); mixer_close();
@ -40,6 +26,15 @@ void sound_init_mp3_playback (void) {
} }
} }
void sound_init_default (void) {
sound_reconfigure(DEFAULT_FREQUENCY);
}
void sound_init_mp3_playback (void) {
sound_reconfigure(mp3player_get_samplerate());
}
void sound_poll (void) { void sound_poll (void) {
if (sound_initialized && audio_can_write()) { if (sound_initialized && audio_can_write()) {
short *audio_buffer = audio_write_begin(); short *audio_buffer = audio_write_begin();