diff options
author | 2018-07-21 03:48:45 +0800 | |
---|---|---|
committer | 2018-08-05 17:52:01 +0200 | |
commit | e1bd5288b7050fe34016f4f01c8d3be49a1d7d01 (patch) | |
tree | 2bc862893e76ed8ffe3571b346ca156810529982 /audio/out/ao_pulse.c | |
parent | 8baad91e7b4383d4bf5176b2711614f79446b5f6 (diff) |
ao_opensles: rework the heuristic of buffer/enqueue size setting
ao->device_buffer will only affect the enqueue size if the latter
is not specified. In other word, its intended purpose will solely
be setting/guarding the soft buffer size.
This guarantees that the soft buffer size will be consistent no
matter a specific enqueue size is set or not. (In the past it
would drop to the default of the generic audio-buffer option.)
opensles-frames-per-buffer has been renamed to opensles-frames-per
-enqueue, as it was never purposed to set the soft buffer size. It
will only make sure the size is never smaller than itself, just as
before.
opensles-buffer-size-in-ms is introduced to allow easy tuning of
the relative (i.e. in time) soft buffer size (and enqueue size,
unless the aforementioned option is set). As "device buffer" never
really made sense in this AO, this option OVERRIDES audio-buffer
whenever its value (including the default) is larger than 0.
Setting opensl-buffer-size-in-ms to 1 allows you to equate the soft
buffer size to the absolute enqueue size set with opensl-frames-per
-enqueue conveniently (unless it is less than 1ms).
When both are set to 0, audio-buffer will be the ultimate fallback.
If audio-buffer is also 0, the AO errors out.
Diffstat (limited to 'audio/out/ao_pulse.c')
0 files changed, 0 insertions, 0 deletions