Increase audio thread priority
The audio demuxer thread is the one filling the audio buffer read by the SDL audio thread. It is time critical to avoid buffer underflow.
This commit is contained in:
parent
5ee59e0f13
commit
aa450ffc3f
1 changed files with 8 additions and 0 deletions
|
@ -382,6 +382,14 @@ sc_audio_player_frame_sink_open(struct sc_frame_sink *sink,
|
||||||
ap->received = false;
|
ap->received = false;
|
||||||
ap->played = false;
|
ap->played = false;
|
||||||
|
|
||||||
|
// The thread calling open() is the thread calling push(), which fills the
|
||||||
|
// audio buffer consumed by the SDL audio thread.
|
||||||
|
ok = sc_thread_set_priority(SC_THREAD_PRIORITY_TIME_CRITICAL);
|
||||||
|
if (!ok) {
|
||||||
|
ok = sc_thread_set_priority(SC_THREAD_PRIORITY_HIGH);
|
||||||
|
(void) ok; // We don't care if it worked, at least we tried
|
||||||
|
}
|
||||||
|
|
||||||
SDL_PauseAudioDevice(ap->device, 0);
|
SDL_PauseAudioDevice(ap->device, 0);
|
||||||
|
|
||||||
return true;
|
return true;
|
||||||
|
|
Loading…
Reference in a new issue