[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH v4 01/14] qapi: qapi for audio backends
From: |
Markus Armbruster |
Subject: |
Re: [Qemu-devel] [PATCH v4 01/14] qapi: qapi for audio backends |
Date: |
Tue, 29 Jan 2019 16:52:41 +0100 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/26.1 (gnu/linux) |
"Kővágó, Zoltán" <address@hidden> writes:
> This patch adds structures into qapi to replace the existing
> configuration structures used by audio backends currently. This qapi
> will be the base of the -audiodev command line parameter (that replaces
> the old environment variables based config).
>
> This is not a 1:1 translation of the old options, I've tried to make
> them much more consistent (e.g. almost every backend had an option to
> specify buffer size, but the name was different for every backend, and
> some backends required usecs, while some other required frames, samples
> or bytes). Also tried to reduce the number of abbreviations used by the
> config keys.
>
> Some of the more important changes:
> * use `in` and `out` instead of `ADC` and `DAC`, as the former is more
> user friendly imho
> * moved buffer settings into the global setting area (so it's the same
> for all backends that support it. Backends that can't change buffer
> size will simply ignore them). Also using usecs, as it's probably more
> user friendly than samples or bytes.
> * try-poll is now an alsa backend specific option (as all other backends
> currently ignore it)
>
> AudiodevPaPerDirectionOptions struct might look pointless right now, but
> later we will have new per-direction options, so it's more future-proof
> this way.
>
> Signed-off-by: Kővágó, Zoltán <address@hidden>
[...]
> diff --git a/qapi/audio.json b/qapi/audio.json
> new file mode 100644
> index 0000000000..bd6e2494bd
> --- /dev/null
> +++ b/qapi/audio.json
[...]
> +##
> +# @AudiodevPerDirectionOptions:
> +#
> +# General audio backend options that are used for both playback and
> recording.
> +#
> +# @fixed-settings: use fixed settings for host input/output. When off,
> +# frequency, channels and format must not be specified
> +# (default on)
> +#
> +# @frequency: frequency to use when using fixed settings (default 44100)
> +#
> +# @channels: number of channels when using fixed settings (default 2)
> +#
> +# @voices: number of voices to use (default 1)
> +#
> +# @format: sample format to use when using fixed settings (default s16)
If I specify any of @frequency, @channels, @voices, @format, then I have
to have "fixed-settings": true. Since true is the default, I don't have
to say it explicitly, which would be redundant and mildly annoying.
However, specifying "fixed-settings": false is *not* redundant, because
it's different from specifying nothing at all, which is the same as
"fixed-settings": true, "frequency": 44100, "channels": 2, "voices": 1,
"format": "s16".
I think I get it.
> +#
> +# @buffer-len: the buffer size in microseconds
> +#
> +# @buffer-count: number of buffers
> +#
> +# Since: 4.0
> +##
[...]
- [Qemu-devel] [PATCH v4 00/14] Audio patches (was: Audio 5.1 patches), Kővágó, Zoltán, 2019/01/28
- [Qemu-devel] [PATCH v4 08/14] noaudio: port to -audiodev config, Kővágó, Zoltán, 2019/01/28
- [Qemu-devel] [PATCH v4 12/14] spiceaudio: port to -audiodev config, Kővágó, Zoltán, 2019/01/28
- [Qemu-devel] [PATCH v4 01/14] qapi: qapi for audio backends, Kővágó, Zoltán, 2019/01/28
- [Qemu-devel] [PATCH v4 03/14] audio: -audiodev command line option: documentation, Kővágó, Zoltán, 2019/01/28
- [Qemu-devel] [PATCH v4 06/14] coreaudio: port to -audiodev config, Kővágó, Zoltán, 2019/01/28
- [Qemu-devel] [PATCH v4 11/14] sdlaudio: port to -audiodev config, Kővágó, Zoltán, 2019/01/28
- [Qemu-devel] [PATCH v4 13/14] wavaudio: port to -audiodev config, Kővágó, Zoltán, 2019/01/28
- [Qemu-devel] [PATCH v4 14/14] audio: -audiodev command line option: cleanup, Kővágó, Zoltán, 2019/01/28
- [Qemu-devel] [PATCH v4 02/14] audio: use qapi AudioFormat instead of audfmt_e, Kővágó, Zoltán, 2019/01/28
- [Qemu-devel] [PATCH v4 09/14] ossaudio: port to -audiodev config, Kővágó, Zoltán, 2019/01/28
- [Qemu-devel] [PATCH v4 04/14] audio: -audiodev command line option basic implementation, Kővágó, Zoltán, 2019/01/28