[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH v4] audio/pwaudio.c: Add Pipewire audio backend for QEMU
From: |
Christian Schoenebeck |
Subject: |
Re: [PATCH v4] audio/pwaudio.c: Add Pipewire audio backend for QEMU |
Date: |
Wed, 22 Feb 2023 16:02:55 +0100 |
On Friday, February 17, 2023 6:07:32 PM CET Dorinda Bassey wrote:
> This commit adds a new audiodev backend to allow QEMU to use Pipewire as
> both an audio sink and source. This backend is available on most systems
>
> Add Pipewire entry points for QEMU Pipewire audio backend
> Add wrappers for QEMU Pipewire audio backend in qpw_pcm_ops()
> qpw_write function returns the current state of the stream to pwaudio
> and Writes some data to the server for playback streams using pipewire
> spa_ringbuffer implementation.
> qpw_read function returns the current state of the stream to pwaudio and
> reads some data from the server for capture streams using pipewire
> spa_ringbuffer implementation. These functions qpw_write and qpw_read
> are called during playback and capture.
> Added some functions that convert pw audio formats to QEMU audio format
> and vice versa which would be needed in the pipewire audio sink and
> source functions qpw_init_in() & qpw_init_out().
> These methods that implement playback and recording will create streams
> for playback and capture that will start processing and will result in
> the on_process callbacks to be called.
> Built a connection to the Pipewire sound system server in the
> qpw_audio_init() method.
>
> Signed-off-by: Dorinda Bassey <dbassey@redhat.com>
Acked-by: Christian Schoenebeck <qemu_oss@crudebyte.com>
> ---
> fix typo
> raise version dependency
>
> audio/audio.c | 3 +
> audio/audio_template.h | 4 +
> audio/meson.build | 1 +
> audio/pwaudio.c | 827 ++++++++++++++++++++++++++++++++++
> meson.build | 8 +
> meson_options.txt | 4 +-
> qapi/audio.json | 45 ++
> qemu-options.hx | 17 +
> scripts/meson-buildoptions.sh | 8 +-
> 9 files changed, 914 insertions(+), 3 deletions(-)
> create mode 100644 audio/pwaudio.c