diff --git a/src/audio/switch/SDL_switchaudio.c b/src/audio/switch/SDL_switchaudio.c index 00e1ea53e..b3568a427 100644 --- a/src/audio/switch/SDL_switchaudio.c +++ b/src/audio/switch/SDL_switchaudio.c @@ -74,7 +74,7 @@ SWITCHAUDIO_OpenDevice(_THIS, void *handle, const char *devname, int iscapture) this->hidden->source_buffer[i].next = NULL; this->hidden->source_buffer[i].buffer = this->hidden->buffer[i]; this->hidden->source_buffer[i].buffer_size = - (u64) this->spec.size / this->spec.channels / 2; + (u64) this->spec.size / this->spec.channels / 4; this->hidden->source_buffer[i].data_size = (u64) this->spec.size; this->hidden->source_buffer[i].data_offset = (u64) 0; audoutAppendAudioOutBuffer(&this->hidden->source_buffer[i]); diff --git a/src/thread/switch/SDL_systhread.c b/src/thread/switch/SDL_systhread.c index 4a54e3e4a..3b0f75c8e 100644 --- a/src/thread/switch/SDL_systhread.c +++ b/src/thread/switch/SDL_systhread.c @@ -31,7 +31,7 @@ #include "SDL_thread.h" #include "../SDL_systhread.h" -#define STACK_SIZE 0x2000 +#define STACK_SIZE 0x5000 static void SDL_SYS_RunThread(void *data) @@ -41,7 +41,7 @@ SDL_SYS_RunThread(void *data) int SDL_SYS_CreateThread(SDL_Thread *thread, void *args) { - Result res = threadCreate(&thread->handle, SDL_SYS_RunThread, args, STACK_SIZE, 0x2B, -2); + Result res = threadCreate(&thread->handle, SDL_SYS_RunThread, args, STACK_SIZE, 0x1C, -2); if (res != 0) { return SDL_SetError("threadCreate() failed: 0x%08X", res); }