mirror of
https://github.com/Ryujinx/libsoundio.git
synced 2024-12-23 02:45:29 +00:00
PulseAudio: fix using 100% CPU
soundio_wait_events wasn't blocking but now it is.
This commit is contained in:
parent
0dee34a84e
commit
d3cf8f02db
|
@ -245,8 +245,7 @@ view `coverage/index.html` in a browser.
|
||||||
0. implement CoreAudio (OSX) backend, get examples working
|
0. implement CoreAudio (OSX) backend, get examples working
|
||||||
0. implement WASAPI (Windows) backend, get examples working
|
0. implement WASAPI (Windows) backend, get examples working
|
||||||
0. implement ASIO (Windows) backend, get examples working
|
0. implement ASIO (Windows) backend, get examples working
|
||||||
0. JACK: implement prebuffering
|
0. JACK: implement prebuffering ...or delete prebuffering as a concept
|
||||||
0. why does pulseaudio microphone use up all the CPU?
|
|
||||||
0. Avoid calling `soundio_panic` in PulseAudio.
|
0. Avoid calling `soundio_panic` in PulseAudio.
|
||||||
0. Figure out a way to test prebuf. I suspect prebuf not working for ALSA
|
0. Figure out a way to test prebuf. I suspect prebuf not working for ALSA
|
||||||
which is why we have to pre-fill the ring buffer with silence for
|
which is why we have to pre-fill the ring buffer with silence for
|
||||||
|
|
|
@ -460,7 +460,9 @@ static void flush_events(SoundIoPrivate *si) {
|
||||||
static void wait_events(SoundIoPrivate *si) {
|
static void wait_events(SoundIoPrivate *si) {
|
||||||
SoundIoPulseAudio *sipa = &si->backend_data.pulseaudio;
|
SoundIoPulseAudio *sipa = &si->backend_data.pulseaudio;
|
||||||
flush_events(si);
|
flush_events(si);
|
||||||
|
pa_threaded_mainloop_lock(sipa->main_loop);
|
||||||
pa_threaded_mainloop_wait(sipa->main_loop);
|
pa_threaded_mainloop_wait(sipa->main_loop);
|
||||||
|
pa_threaded_mainloop_unlock(sipa->main_loop);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void wakeup(SoundIoPrivate *si) {
|
static void wakeup(SoundIoPrivate *si) {
|
||||||
|
|
Loading…
Reference in a new issue