0
0
mirror of https://github.com/mpv-player/mpv.git synced 2024-09-20 03:52:22 +02:00
mpv/audio/out
Thomas Weißschuh 013ec877f6 audio: try to use playback AO as hotplug AO first
When a platform has multiple valid AOs that can provide hotplug events
we should try to use the one that also provides playback.

Concretely this will help when introducing hotplug support for
ao_pipewire.

Currently ao_pulse is probed by ao_hotplug_get_device_list() before
ao_pipewire and on the common setups where both AOs could work pulse
will be selected for hotplug handling.
This means that hotplug_init() of ao_pipewire will never be called and
list_devs() has to do its own initialization.
But if ao_pulse is non-functional or not compiled-in suddenly
ao_pipewire *must* implement hotplug_init() for hotplugging events to
work for all.

Also if the hotplug ao_pulse connects to a PulseAudio instance that is
not emulated by the same PipeWire instance as the playback ao_pipewire
the hotplug events are useless.
2022-09-11 20:24:42 -07:00
..
ao_alsa.c ao_alsa: handle -EPIPE XRUNs from snd_pcm_status 2020-11-09 16:12:49 +01:00
ao_audiotrack.c ao_audiotrack: change buffer sizing logic 2021-10-21 17:20:51 +02:00
ao_audiounit.m audio: remove unused ring.h includes 2020-08-27 11:55:20 +02:00
ao_coreaudio_chmap.c audio/out: add AudioUnit output driver for iOS 2016-11-01 16:25:40 +01:00
ao_coreaudio_chmap.h audio/out: add AudioUnit output driver for iOS 2016-11-01 16:25:40 +01:00
ao_coreaudio_exclusive.c audio: redo internal AO API 2020-06-01 01:08:16 +02:00
ao_coreaudio_properties.c various: fix typos 2022-04-25 09:07:18 -04:00
ao_coreaudio_properties.h ao_coreaudio: change license to LGPL 2017-05-08 13:57:40 +02:00
ao_coreaudio_utils.c ao/audiounit: improve a/v sync 2019-04-05 10:29:44 +07:00
ao_coreaudio_utils.h ao/audiounit: improve a/v sync 2019-04-05 10:29:44 +07:00
ao_coreaudio.c audio: remove unused ring.h includes 2020-08-27 11:55:20 +02:00
ao_jack.c audio: redo internal AO API 2020-06-01 01:08:16 +02:00
ao_lavc.c ao_lavc: switch to AVChannelLayout when available 2022-06-12 21:05:59 +03:00
ao_null.c audio: fix inefficient behavior with ao_alsa, remove period_size field 2020-08-29 16:27:56 +02:00
ao_openal.c ao_openal: enable AL_SOFT_direct_channels_remix extension by default 2021-11-29 11:27:39 +01:00
ao_opensles.c ao_opensles: add guards for sample rate to use 2021-11-19 14:27:52 +01:00
ao_oss.c ao_oss: define PATH_DEV_MIXER as it is an internal define 2021-11-10 17:08:16 +01:00
ao_pcm.c audio: redo internal AO API 2020-06-01 01:08:16 +02:00
ao_pipewire.c ao_pipewire: handle AOCONTROL_UPDATE_MEDIA_ROLE 2022-09-10 12:32:52 -07:00
ao_pulse.c ao/pulse: fix incorrect state reported after reset 2021-04-29 17:06:29 +02:00
ao_sdl.c audio: redo internal AO API 2020-06-01 01:08:16 +02:00
ao_sndio.c various: remove trailing whitespace 2022-05-14 14:51:34 +00:00
ao_wasapi_changenotify.c ao_wasapi_changenotify: use %ls instead of %S for wchar_t 2017-04-20 07:38:03 +02:00
ao_wasapi_utils.c ao_wasapi: try mix format except for chmap 2020-03-19 20:39:44 +02:00
ao_wasapi.c audio: redo internal AO API 2020-06-01 01:08:16 +02:00
ao_wasapi.h ao_wasapi: reorganize wasapi.h 2017-08-07 14:33:03 -07:00
ao.c audio: try to use playback AO as hotplug AO first 2022-09-11 20:24:42 -07:00
ao.h audio: try to use playback AO as hotplug AO first 2022-09-11 20:24:42 -07:00
buffer.c audio: fix lack of reinitialization on format change with pull AOs 2022-08-23 11:01:52 -07:00
internal.h ao: remove unused field 2020-08-31 20:23:44 +02:00