Index: uspace/lib/drv/generic/remote_audio_pcm.c
===================================================================
--- uspace/lib/drv/generic/remote_audio_pcm.c	(revision 92b59c75e99c75924f485a9b71dece3141406bb8)
+++ uspace/lib/drv/generic/remote_audio_pcm.c	(revision 6606378f95713c7db8f7b4c99d6126e8a0b47885)
@@ -94,4 +94,33 @@
  */
 
+/**
+ * Open audio session with the first registered device.
+ *
+ * @return Pointer to a new audio device session, NULL on failure.
+ */
+audio_pcm_sess_t *audio_pcm_open_default(void)
+{
+	static bool resolved = false;
+	static category_id_t pcm_id = 0;
+	if (!resolved) {
+		const int ret = loc_category_get_id("audio-pcm", &pcm_id,
+		    IPC_FLAG_BLOCKING);
+		if (ret != EOK)
+			return NULL;
+		resolved = true;
+	}
+
+	service_id_t *svcs = NULL;
+	size_t count = 0;
+	const int ret = loc_category_get_svcs(pcm_id, &svcs, &count);
+	if (ret != EOK)
+		return NULL;
+
+	audio_pcm_sess_t *session = NULL;
+	if (count)
+		session = audio_pcm_open_service(svcs[0]);
+	free(svcs);
+	return session;
+}
 /**
  * Open audio session with device identified by location service string.
Index: uspace/lib/drv/include/audio_pcm_iface.h
===================================================================
--- uspace/lib/drv/include/audio_pcm_iface.h	(revision 92b59c75e99c75924f485a9b71dece3141406bb8)
+++ uspace/lib/drv/include/audio_pcm_iface.h	(revision 6606378f95713c7db8f7b4c99d6126e8a0b47885)
@@ -69,4 +69,5 @@
 
 audio_pcm_sess_t *audio_pcm_open(const char *);
+audio_pcm_sess_t *audio_pcm_open_default(void);
 audio_pcm_sess_t *audio_pcm_open_service(service_id_t service);
 void audio_pcm_close(audio_pcm_sess_t *);
