0
0
mirror of https://github.com/mpv-player/mpv.git synced 2024-09-20 20:03:10 +02:00
mpv/audio/out
wm4 2f5e31cf47 ao_coreaudio_exclusive: port to pull API, fix latency calculations
Instead of maintaining a private ring buffer, use the generic support
for audio APIs with pull callbacks (internally called AO pull API). This
also fixes latency calculations: instead of just returning the
ringbuffer status, the audio playback state is calculated better and
includes interpolation.

The main reason this wasn't done earlier was mid-stream format
switching. The pull API can now handle it (in a way) by destroying and
recreating the AO. This is a bit brutal, but quite simple. It's untested
in this new AO, though. Some details might not be right, like how ot
restores the old format when reloading.
2015-03-10 10:37:05 +01:00
..
ao_alsa.c ao_alsa: reinitialize if device got broken 2015-01-21 19:38:18 +01:00
ao_coreaudio_exclusive.c ao_coreaudio_exclusive: port to pull API, fix latency calculations 2015-03-10 10:37:05 +01:00
ao_coreaudio_properties.c ao_coreaudio: use device UID instead of ID for selection 2015-02-03 00:40:02 +01:00
ao_coreaudio_properties.h ao_coreaudio: report hardware latency to ao_read_data 2014-07-03 20:05:15 +02:00
ao_coreaudio_utils.c ao_coreaudio: move some helpers to utils 2015-03-10 10:13:23 +01:00
ao_coreaudio_utils.h ao_coreaudio: move some helpers to utils 2015-03-10 10:13:23 +01:00
ao_coreaudio.c ao_coreaudio: move some helpers to utils 2015-03-10 10:13:23 +01:00
ao_dsound.c win32: request UTF-16 API variants, Vista+ APIs, and COM C macros 2015-01-07 21:42:44 +01:00
ao_jack.c audio/out/pull: remove race conditions 2014-05-29 02:24:17 +02:00
ao_lavc.c ao_lavc: fix setting up AVFrame pointers 2014-11-21 10:09:25 +01:00
ao_null.c ao_null: add emulation for certain broken behavior 2015-01-30 21:30:54 +01:00
ao_openal.c audio/out: consistently use double return type for get_delay 2014-11-09 11:45:04 +01:00
ao_oss.c Do not call strerror() 2014-11-26 21:21:56 +01:00
ao_pcm.c ao_pcm: add append mode 2015-01-14 22:14:56 +01:00
ao_pulse.c ao_pulse: listen for hotplug events 2015-02-12 17:18:43 +01:00
ao_rsound.c audio/out: consistently use double return type for get_delay 2014-11-09 11:45:04 +01:00
ao_sdl.c Add some missing "const"s 2014-10-10 13:44:08 +02:00
ao_sndio.c audio/out: consistently use double return type for get_delay 2014-11-09 11:45:04 +01:00
ao_wasapi_changenotify.c win32: request UTF-16 API variants, Vista+ APIs, and COM C macros 2015-01-07 21:42:44 +01:00
ao_wasapi_utils.c ao/wasapi: move resume to audio thread 2015-02-23 14:02:08 -08:00
ao_wasapi_utils.h ao/wasapi: use IsEqualGUID and IsEqualPropertyKey 2014-12-16 03:29:51 -08:00
ao_wasapi.c ao/wasapi: move resume to audio thread 2015-02-23 14:02:08 -08:00
ao_wasapi.h ao/wasapi: move resume to audio thread 2015-02-23 14:02:08 -08:00
ao.c ao: fix null dereference 2015-02-14 16:41:08 +01:00
ao.h ao_coreaudio: add support for hotplug notifications 2015-02-14 12:51:15 +01:00
internal.h audio: add device change notification for hotplugging 2015-02-12 17:17:41 +01:00
pull.c audio/out/pull: avoid deadlock if audio callback stops 2014-11-09 15:23:40 +01:00
push.c audio/out/push: fix off-by-one error 2014-11-21 03:50:57 +01:00