summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--DOCS/interface-changes.rst2
-rw-r--r--DOCS/man/input.rst5
-rw-r--r--audio/out/ao.c2
3 files changed, 7 insertions, 2 deletions
diff --git a/DOCS/interface-changes.rst b/DOCS/interface-changes.rst
index 1e27edfe03..726668cced 100644
--- a/DOCS/interface-changes.rst
+++ b/DOCS/interface-changes.rst
@@ -95,6 +95,8 @@ Interface changes
--terminal, --osc, --ytdl, can all be enable/disabled after
mpv_initialize() - this can be extended to other still fixed options
on user requests)
+ - the "audio-device-list" property now sets empty device description to the
+ device name as a fallback
--- mpv 0.20.0 ---
- add --image-display-duration option - this also means that image duration
is not influenced by --mf-fps anymore in the general case (this is an
diff --git a/DOCS/man/input.rst b/DOCS/man/input.rst
index d15aa41903..508e7dd252 100644
--- a/DOCS/man/input.rst
+++ b/DOCS/man/input.rst
@@ -1912,8 +1912,9 @@ Property list
The ``name`` is what is to be passed to the ``--audio-device`` option (and
often a rather cryptic audio API-specific ID), while ``description`` is
- human readable free form text. The description is an empty string if none
- was received.
+ human readable free form text. The description is set to the device name
+ (minus mpv-specific ``<driver>/`` prefix) if no description is available
+ or the description would have been an empty string.
The special entry with the name set to ``auto`` selects the default audio
output driver and the default device.
diff --git a/audio/out/ao.c b/audio/out/ao.c
index e1a3eda9dd..9846869f2c 100644
--- a/audio/out/ao.c
+++ b/audio/out/ao.c
@@ -599,6 +599,8 @@ void ao_device_list_add(struct ao_device_list *list, struct ao *ao,
{
struct ao_device_desc c = *e;
const char *dname = ao->driver->name;
+ if ((!c.desc || !c.desc[0]) && c.name)
+ c.desc = c.name;
c.name = c.name[0] ? talloc_asprintf(list, "%s/%s", dname, c.name)
: talloc_strdup(list, dname);
c.desc = talloc_strdup(list, c.desc);