Refactor to the PulseAudio backend.

* The main loop is now handled properly by pa_threaded_mainloop.
  * Rather than waiting for operations to complete inline, the main
    loop is now iterated on a separate thread.
  * Data is now written and read to and from the relevant stream via
    callbacks rather than a hacky loop.
  * Code overall has been simplified.
  * Includes a rant about bad API design in PulseAudio.

This should hopefully address these public issues:

  * https://github.com/mackron/miniaudio/issues/106
  * https://github.com/mackron/miniaudio/issues/187
This commit is contained in:
David Reid
2020-11-01 14:30:06 +10:00
parent 3018ba3ee5
commit e808a67777
+597 -568
View File
File diff suppressed because it is too large Load Diff