/ mumble Public
Revamp JackAudio implementation #3826
Add this suggestion to a batch that can be applied as a single commit. This suggestion is invalid because no changes were made to the code. Suggestions cannot be applied while the pull request is closed. Suggestions cannot be applied while viewing a subset of changes. Only one suggestion per line can be applied in a batch. Add this suggestion to a batch that can be applied as a single commit. Applying suggestions on deleted lines is not supported. You must change the existing code in this line in order to create a valid suggestion. Outdated suggestions cannot be applied. This suggestion has been applied or marked resolved. Suggestions cannot be applied from pending reviews. Suggestions cannot be applied on multi-line comments. Suggestions cannot be applied while the pull request is queued to merge.
Some users were encountering issues such as the client taking ~8 seconds to start when
jackdcould not be run, due to the library attempting many times to connect to the JACK server (#3822).
While working on a fix I corrected the many warnings emitted by Clang-Tidy and I realized that there were many things that could be improved.
This commit almost entirely rewrites the implementation, but here are some of the changes:
JackAudioOutputstart running). The initialization code has been moved to a dedicated function, the constructor doesn't execute it anymore. This is what fixes [Linux] jackd support without jackd installed causes Mumble client startup delay #3822.
JackAudioOutputare not running.
JackAudioSystemto the corresponding section (
JackAudioSystemhave been replaced with functions which retrieve the corresponding value from the JACK server.
delete, raw pointers have been replaced with