summaryrefslogtreecommitdiffstats
path: root/audio/decode
diff options
context:
space:
mode:
authorwm4 <wm4@nowhere>2015-06-02 21:04:40 +0200
committerwm4 <wm4@nowhere>2015-06-02 21:04:40 +0200
commit87a94a56556d44388ea50a69fe46e829a5d87eb8 (patch)
tree1999b4f353660addf18626297afaaba28ec35e02 /audio/decode
parent37d505f36339a3f2130e2fd050206afb1db7a290 (diff)
downloadmpv-87a94a56556d44388ea50a69fe46e829a5d87eb8.tar.bz2
mpv-87a94a56556d44388ea50a69fe46e829a5d87eb8.tar.xz
ao_coreaudio_exclusive: make property listeners event-based
In short, instead of letting the coreaudio property listener set atomic flags (which are then polled), make the property listeners actually active. The format change listener used during audio output now simply calls ao_request_reload() on its own. All code involved is thread-safe, so there's no need to do it during this audio callback (we assumed the callback was never run concurrently with itself). The listener installed temporarily during ca_change_format() is changed to post a semaphore. Get rid of the weird retry logic and replace it with a flat loop + timeout. It appears the maximum wait time could be 2500ms; reduce the total timeout to 500ms instead.
Diffstat (limited to 'audio/decode')
0 files changed, 0 insertions, 0 deletions