From: Manos Pitsidianakis <manos.pitsidianakis@linaro.org>
To: qemu-devel@nongnu.org
Cc: "Emmanouil Pitsidianakis" <manos.pitsidianakis@linaro.org>,
"Igor Skalkin" <Igor.Skalkin@opensynergy.com>,
"Anton Yakovlev" <Anton.Yakovlev@opensynergy.com>,
"Paolo Bonzini" <pbonzini@redhat.com>,
"Gerd Hoffmann" <kraxel@redhat.com>,
"Michael S. Tsirkin" <mst@redhat.com>,
"Marcel Apfelbaum" <marcel.apfelbaum@gmail.com>,
"Daniel P. Berrangé" <berrange@redhat.com>,
"Eduardo Habkost" <eduardo@habkost.net>,
"Marc-André Lureau" <marcandre.lureau@redhat.com>,
"Volker Rümelin" <vr_qemu@t-online.de>,
"Kővágó, Zoltán" <DirtY.iCE.hu@gmail.com>,
"Alex Bennée" <alex.bennee@linaro.org>,
"Philippe Mathieu-Daudé" <philmd@linaro.org>,
"Mark Cave-Ayland" <mark.cave-ayland@ilande.co.uk>,
"Stefano Garzarella" <sgarzare@redhat.com>
Subject: [PATCH v11 11/11] docs/system: add basic virtio-snd documentation
Date: Wed, 11 Oct 2023 17:34:56 +0300 [thread overview]
Message-ID: <885b01fe272541fdab5583780d4c3a59bfd8e734.1696935992.git.manos.pitsidianakis@linaro.org> (raw)
In-Reply-To: <cover.1696935992.git.manos.pitsidianakis@linaro.org>
From: Emmanouil Pitsidianakis <manos.pitsidianakis@linaro.org>
This commit adds basic documentation for using virtio-snd.
Signed-off-by: Emmanouil Pitsidianakis <manos.pitsidianakis@linaro.org>
Reviewed-by: Alex Bennée <alex.bennee@linaro.org>
---
MAINTAINERS | 1 +
docs/system/device-emulation.rst | 1 +
docs/system/devices/virtio-snd.rst (new) | 49 ++++++++++++++++++++++++
3 files changed, 51 insertions(+)
diff --git a/MAINTAINERS b/MAINTAINERS
index 701f12026a..a32e512a61 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
@@ -2259,6 +2259,7 @@ M: Manos Pitsidianakis <manos.pitsidianakis@linaro.org>
S: Supported
F: hw/virtio/virtio-snd*.c
F: include/hw/virtio/virtio-snd.h
+F: docs/system/devices/virtio-snd.rst
nvme
M: Keith Busch <kbusch@kernel.org>
diff --git a/docs/system/device-emulation.rst b/docs/system/device-emulation.rst
index 4491c4cbf7..dae19446e5 100644
--- a/docs/system/device-emulation.rst
+++ b/docs/system/device-emulation.rst
@@ -79,20 +79,21 @@ in a PCI slot to the exclusive use of the guest.
Emulated Devices
~~~~~~~~~~~~~~~~
.. toctree::
:maxdepth: 1
devices/can.rst
devices/ccid.rst
devices/cxl.rst
devices/ivshmem.rst
devices/keyboard.rst
devices/net.rst
devices/nvme.rst
devices/usb.rst
devices/vhost-user.rst
devices/virtio-pmem.rst
+ devices/virtio-snd.rst
devices/vhost-user-rng.rst
devices/canokey.rst
devices/usb-u2f.rst
devices/igb.rst
diff --git a/docs/system/devices/virtio-snd.rst b/docs/system/devices/virtio-snd.rst
new file mode 100644
index 0000000000..2a9187fd70
--- /dev/null
+++ b/docs/system/devices/virtio-snd.rst
@@ -0,0 +1,49 @@
+virtio sound
+============
+
+This document explains the setup and usage of the Virtio sound device.
+The Virtio sound device is a paravirtualized sound card device.
+
+Linux kernel support
+--------------------
+
+Virtio sound requires a guest Linux kernel built with the
+``CONFIG_SND_VIRTIO`` option.
+
+Description
+-----------
+
+Virtio sound implements capture and playback from inside a guest using the
+configured audio backend of the host machine.
+
+Device properties
+-----------------
+
+The Virtio sound device can be configured with the following properties:
+
+ * ``jacks`` number of physical jacks (Unimplemented).
+ * ``streams`` number of PCM streams. At the moment, no stream configuration is supported: the first one will always be a playback stream, an optional second will always be a capture stream. Adding more will cycle stream directions from playback to capture.
+ * ``chmaps`` number of channel maps (Unimplemented).
+
+All streams are stereo and have the default channel positions ``Front left, right``.
+
+Examples
+--------
+
+Add an audio device and an audio backend at once with ``-audio`` and ``model=virtio``:
+
+ * pulseaudio: ``-audio driver=pa,model=virtio``
+ or ``-audio driver=pa,model=virtio,server=/run/user/1000/pulse/native``
+ * sdl: ``-audio driver=sdl,model=virtio``
+ * coreaudio: ``-audio driver=coreaudio,model=virtio``
+
+etc.
+
+To specifically add virtualized sound devices, you have to specify a PCI device
+and an audio backend listed with ``-audio driver=help`` that works on your host
+machine, e.g.:
+
+::
+
+ -device virtio-sound-pci,audiodev=my_audiodev \
+ -audiodev alsa,id=my_audiodev
--
2.39.2
next prev parent reply other threads:[~2023-10-11 14:37 UTC|newest]
Thread overview: 17+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-10-11 14:34 [PATCH v11 00/11] Add VIRTIO sound card Manos Pitsidianakis
2023-10-11 14:34 ` [PATCH v11 01/11] Add virtio-sound device stub Manos Pitsidianakis
2023-10-11 14:34 ` [PATCH v11 02/11] Add virtio-sound-pci device Manos Pitsidianakis
2023-10-11 14:34 ` [PATCH v11 03/11] virtio-sound: handle control messages and streams Manos Pitsidianakis
2023-10-11 14:34 ` [PATCH v11 04/11] virtio-sound: handle VIRTIO_SND_R_PCM_INFO request Manos Pitsidianakis
2023-10-11 14:34 ` [PATCH v11 05/11] virtio-sound: handle VIRTIO_SND_R_PCM_{START,STOP} Manos Pitsidianakis
2023-10-11 14:34 ` [PATCH v11 06/11] virtio-sound: handle VIRTIO_SND_R_PCM_SET_PARAMS Manos Pitsidianakis
2023-10-11 14:34 ` [PATCH v11 07/11] virtio-sound: handle VIRTIO_SND_R_PCM_PREPARE Manos Pitsidianakis
2023-10-11 14:34 ` [PATCH v11 08/11] virtio-sound: handle VIRTIO_SND_R_PCM_RELEASE Manos Pitsidianakis
2023-10-11 14:34 ` [PATCH v11 09/11] virtio-sound: implement audio output (TX) Manos Pitsidianakis
2023-10-11 14:34 ` [PATCH v11 10/11] virtio-sound: implement audio capture (RX) Manos Pitsidianakis
2023-10-11 14:34 ` Manos Pitsidianakis [this message]
2023-10-18 8:49 ` [PATCH v11 00/11] Add VIRTIO sound card Manos Pitsidianakis
2023-10-18 9:08 ` Michael S. Tsirkin
2023-10-18 13:44 ` Manos Pitsidianakis
2023-10-18 14:50 ` Michael S. Tsirkin
2023-10-18 16:07 ` Manos Pitsidianakis
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=885b01fe272541fdab5583780d4c3a59bfd8e734.1696935992.git.manos.pitsidianakis@linaro.org \
--to=manos.pitsidianakis@linaro.org \
--cc=Anton.Yakovlev@opensynergy.com \
--cc=DirtY.iCE.hu@gmail.com \
--cc=Igor.Skalkin@opensynergy.com \
--cc=alex.bennee@linaro.org \
--cc=berrange@redhat.com \
--cc=eduardo@habkost.net \
--cc=kraxel@redhat.com \
--cc=marcandre.lureau@redhat.com \
--cc=marcel.apfelbaum@gmail.com \
--cc=mark.cave-ayland@ilande.co.uk \
--cc=mst@redhat.com \
--cc=pbonzini@redhat.com \
--cc=philmd@linaro.org \
--cc=qemu-devel@nongnu.org \
--cc=sgarzare@redhat.com \
--cc=vr_qemu@t-online.de \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).