[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH 00/25] audio: -audiodev option, multiple options
From: |
Kővágó, Zoltán |
Subject: |
[Qemu-devel] [PATCH 00/25] audio: -audiodev option, multiple options |
Date: |
Thu, 6 Aug 2015 20:28:12 +0200 |
This patch series adds support to multiple audio backends. The first
part of the series (until -audiodev command line option) was submitted
multiple times, see
http://lists.nongnu.org/archive/html/qemu-devel/2015-06/msg05037.html
and
http://lists.nongnu.org/archive/html/qemu-devel/2015-07/msg00920.html
Afterwards I add support to multiple backends. Audio fronteds gain a
new audiodev option to specify the id of the audiodev to use. The
audiodev= option is required, unless you use the old environment
variable based configuration, in that case it must not used (and you
can't use multiple backends).
Finally I also make mixeng usage optional, it can save us some useless
format converting when not needed. Also makes easier to support formats
currently not supported by qemu (as only the backend has to support it,
not the mixeng).
For easier testing pull https://github.com/DirtYiCE/qemu.git tag
audio-multi-v1.
Please review.
Kővágó, Zoltán (25):
qapi: support implicit structs in OptsVisitor
qapi: convert NumaOptions into a flat union
net: remove NetLegacy struct
net: use Netdev instead of NetClientOptions in client init
qapi: change Netdev into a flat union
qapi: reorder NetdevBase and Netdev
qapi: qapi for audio backends
qapi: support nested structs in OptsVisitor
audio: use qapi AudioFormat instead of audfmt_e
audio: -audiodev command line option
audio: reduce glob_audio_state usage
audio: basic support for multi backend audio
audio: add audiodev properties to frontends
audio: audiodev= parameters no longer optional when -audiodev present
paaudio: do not create multiple connections to the same server
paaudio: properly disconnect streams in fini_*
audio: remove gcc specific audio_MIN, audio_MAX
audio: do not run each backend in audio_run
paaudio: fix playback glitches
audio: remove mixeng specific code from backends
audio: common rate control code for timer based outputs
audio: add mixeng option (documentation)
audio: make mixeng optional
paaudio: get/put_buffer functions
audio: split ctl_* functions into enable_* and volume_*
Makefile | 4 +-
audio/Makefile.objs | 3 +-
audio/alsaaudio.c | 739 +++++-----------
audio/audio.c | 1436 +++++++++++++++----------------
audio/audio.h | 67 +-
audio/audio_int.h | 121 +--
audio/audio_legacy.c | 328 +++++++
audio/audio_pt_int.c | 173 ----
audio/audio_pt_int.h | 22 -
audio/audio_template.h | 99 +--
audio/audio_win_int.c | 18 +-
audio/coreaudio.c | 198 ++---
audio/dsound_template.h | 59 +-
audio/dsoundaudio.c | 444 +++-------
audio/mixeng.h | 11 +-
audio/noaudio.c | 98 +--
audio/ossaudio.c | 589 +++++--------
audio/paaudio.c | 860 ++++++++----------
audio/rate_template.h | 2 +-
audio/sdlaudio.c | 183 ++--
audio/spiceaudio.c | 283 ++----
audio/wavaudio.c | 156 +---
audio/wavcapture.c | 8 +-
configure | 5 -
hmp-commands.hx | 11 +-
hw/arm/musicpal.c | 2 +-
hw/arm/omap2.c | 2 +-
hw/audio/ac97.c | 3 +-
hw/audio/adlib.c | 3 +-
hw/audio/cs4231a.c | 7 +-
hw/audio/es1370.c | 11 +-
hw/audio/gus.c | 3 +-
hw/audio/hda-codec.c | 19 +-
hw/audio/lm4549.c | 6 +-
hw/audio/milkymist-ac97.c | 8 +-
hw/audio/pcspk.c | 3 +-
hw/audio/pl041.c | 1 +
hw/audio/sb16.c | 15 +-
hw/audio/wm8750.c | 10 +-
hw/core/qdev-properties-system.c | 59 +-
hw/input/tsc210x.c | 2 +-
hw/net/allwinner_emac.c | 2 +-
hw/net/cadence_gem.c | 2 +-
hw/net/dp8393x.c | 2 +-
hw/net/e1000.c | 2 +-
hw/net/eepro100.c | 2 +-
hw/net/etraxfs_eth.c | 2 +-
hw/net/fsl_etsec/etsec.c | 2 +-
hw/net/lan9118.c | 2 +-
hw/net/lance.c | 2 +-
hw/net/mcf_fec.c | 2 +-
hw/net/milkymist-minimac2.c | 2 +-
hw/net/mipsnet.c | 2 +-
hw/net/ne2000-isa.c | 2 +-
hw/net/ne2000.c | 2 +-
hw/net/opencores_eth.c | 2 +-
hw/net/pcnet-pci.c | 2 +-
hw/net/rocker/rocker_fp.c | 2 +-
hw/net/rtl8139.c | 2 +-
hw/net/smc91c111.c | 2 +-
hw/net/spapr_llan.c | 2 +-
hw/net/stellaris_enet.c | 2 +-
hw/net/vhost_net.c | 18 +-
hw/net/virtio-net.c | 6 +-
hw/net/vmxnet3.c | 2 +-
hw/net/xen_nic.c | 2 +-
hw/net/xgmac.c | 2 +-
hw/net/xilinx_axienet.c | 2 +-
hw/net/xilinx_ethlite.c | 2 +-
hw/usb/dev-audio.c | 3 +-
hw/usb/dev-network.c | 2 +-
include/hw/qdev-properties.h | 3 +
include/net/net.h | 4 +-
monitor.c | 26 +-
net/clients.h | 20 +-
net/dump.c | 8 +-
net/hub.c | 24 +-
net/l2tpv3.c | 8 +-
net/net.c | 129 ++-
net/netmap.c | 6 +-
net/slirp.c | 8 +-
net/socket.c | 10 +-
net/tap-win32.c | 8 +-
net/tap.c | 28 +-
net/vde.c | 8 +-
net/vhost-user.c | 14 +-
numa.c | 2 +-
qapi-schema.json | 132 +--
qapi/audio.json | 268 ++++++
qapi/opts-visitor.c | 129 ++-
qemu-options.hx | 237 ++++-
tests/qapi-schema/qapi-schema-test.json | 9 +-
tests/test-opts-visitor.c | 34 +
ui/vnc.c | 29 +-
ui/vnc.h | 2 +
vl.c | 11 +-
96 files changed, 3553 insertions(+), 3756 deletions(-)
create mode 100644 audio/audio_legacy.c
delete mode 100644 audio/audio_pt_int.c
delete mode 100644 audio/audio_pt_int.h
create mode 100644 qapi/audio.json
--
2.4.5
- [Qemu-devel] [PATCH 00/25] audio: -audiodev option, multiple options,
Kővágó, Zoltán <=
- [Qemu-devel] [PATCH 02/25] qapi: convert NumaOptions into a flat union, Kővágó, Zoltán, 2015/08/06
- [Qemu-devel] [PATCH 01/25] qapi: support implicit structs in OptsVisitor, Kővágó, Zoltán, 2015/08/06
- [Qemu-devel] [PATCH 04/25] net: use Netdev instead of NetClientOptions in client init, Kővágó, Zoltán, 2015/08/06
- [Qemu-devel] [PATCH 03/25] net: remove NetLegacy struct, Kővágó, Zoltán, 2015/08/06
- [Qemu-devel] [PATCH 20/25] audio: remove mixeng specific code from backends, Kővágó, Zoltán, 2015/08/06
- [Qemu-devel] [PATCH 10/25] audio: -audiodev command line option, Kővágó, Zoltán, 2015/08/06
- [Qemu-devel] [PATCH 16/25] paaudio: properly disconnect streams in fini_*, Kővágó, Zoltán, 2015/08/06