fd69382e37
This should work way better than the old code, as it makes use of the buffer queue callback to do Enqueue(), which might be the only nice/right way to use OpenSLES on Android. CPU usage is low and RAM usage seems reasonable. No memory leak noticed. Tested with mpv on my Oreo phone (wired and Bluetooth). The latency was chosen base on Bluetooth audio requirement on Oreo. Shouldn't be hard to make it configurable as a module param in the future. The new code has a known downside though, that is it doesn't really support sink suspension, as in, silence will kept being written to the audio device even when the sink is suspended, which may have certain impact to battery time. It's probably possible to catch the state change of the sink and notify the buffer queue about it. It's just I don't want to bother digging further at the moment. |
||
---|---|---|
.. | ||
build.sh | ||
daemon.conf.in.patch | ||
makefile.am.patch | ||
module-sles-sink.c | ||
pulseaudio.subpackage.sh | ||
tmpdir.patch |