Fixed high cpu usage with PulseAudio

(cherry picked from commit 11078101db)
This commit is contained in:
Marcelo Fernandez 2018-04-15 11:29:16 -03:00 committed by Your Name
parent 0551c5c2cd
commit 4fe0a8efd8
1 changed files with 5 additions and 1 deletions

View File

@ -177,7 +177,11 @@ Error AudioDriverPulseAudio::init_device() {
pa_buffer_attr attr; pa_buffer_attr attr;
// set to appropriate buffer length (in bytes) from global settings // set to appropriate buffer length (in bytes) from global settings
attr.tlength = pa_buffer_size * sizeof(int16_t); // Note: PulseAudio defaults to 4 fragments, which means that the actual
// latency is tlength / fragments. It seems that the PulseAudio has no way
// to get the fragments number so we're hardcoding this to the default of 4
const int fragments = 4;
attr.tlength = pa_buffer_size * sizeof(int16_t) * fragments;
// set them to be automatically chosen // set them to be automatically chosen
attr.prebuf = (uint32_t)-1; attr.prebuf = (uint32_t)-1;
attr.maxlength = (uint32_t)-1; attr.maxlength = (uint32_t)-1;