]> git.sesse.net Git - vlc/commitdiff
waveout: copy ALSA fake hotplug code (fixes #8482)
authorRémi Denis-Courmont <remi@remlab.net>
Tue, 23 Apr 2013 20:22:30 +0000 (23:22 +0300)
committerRémi Denis-Courmont <remi@remlab.net>
Tue, 23 Apr 2013 20:22:30 +0000 (23:22 +0300)
modules/audio_output/waveout.c

index 9a805a563ad3a50c6e559aef5f9d57579f2db7b8..98bb9ab9a4c62b71a18ebd6560b22925aef99458 100644 (file)
@@ -795,6 +795,21 @@ static int Open(vlc_object_t *obj)
     vlc_mutex_init( &sys->lock );
     vlc_cond_init( &sys->cond );
 
+    /* WaveOut does not support hot-plug events so list devices at startup */
+    char **ids, **names;
+    int count = ReloadWaveoutDevices(VLC_OBJECT(aout), NULL, &ids, &names);
+    if (count >= 0)
+    {
+        for (int i = 0; i < count; i++)
+        {
+            aout_HotplugReport(aout, ids[i], names[i]);
+            free(names[i]);
+            free(ids[i]);
+        }
+        free(names);
+        free(ids);
+    }
+
     return VLC_SUCCESS;
 }