[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PATCH 1/2] audio: remove qemu_spice_audio_init()
From: |
Gerd Hoffmann |
Subject: |
[PATCH 1/2] audio: remove qemu_spice_audio_init() |
Date: |
Wed, 16 Sep 2020 10:41:16 +0200 |
Handle the spice special case in audio_init instead.
With the qemu_spice_audio_init() symbol dependency being
gone we can build spiceaudio as module.
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
---
include/ui/qemu-spice.h | 1 -
audio/audio.c | 16 ++++++++++++++++
audio/spiceaudio.c | 5 -----
ui/spice-core.c | 1 -
4 files changed, 16 insertions(+), 7 deletions(-)
diff --git a/include/ui/qemu-spice.h b/include/ui/qemu-spice.h
index 8c23dfe71797..12474d88f40e 100644
--- a/include/ui/qemu-spice.h
+++ b/include/ui/qemu-spice.h
@@ -29,7 +29,6 @@ extern int using_spice;
void qemu_spice_init(void);
void qemu_spice_input_init(void);
-void qemu_spice_audio_init(void);
void qemu_spice_display_init(void);
int qemu_spice_display_add_client(int csock, int skipauth, int tls);
int qemu_spice_add_interface(SpiceBaseInstance *sin);
diff --git a/audio/audio.c b/audio/audio.c
index ce8c6dec5f47..76cdba0943d1 100644
--- a/audio/audio.c
+++ b/audio/audio.c
@@ -34,6 +34,7 @@
#include "qemu/module.h"
#include "sysemu/replay.h"
#include "sysemu/runstate.h"
+#include "ui/qemu-spice.h"
#include "trace.h"
#define AUDIO_CAP "audio"
@@ -1658,6 +1659,21 @@ static AudioState *audio_init(Audiodev *dev, const char
*name)
/* silence gcc warning about uninitialized variable */
AudiodevListHead head = QSIMPLEQ_HEAD_INITIALIZER(head);
+ if (using_spice) {
+ /*
+ * When using spice allow the spice audio driver being picked
+ * as default.
+ *
+ * Temporary hack. Using audio devices without explicit
+ * audiodev= property is already deprecated. Same goes for
+ * the -soundhw switch. Once this support gets finally
+ * removed we can also drop the concept of a default audio
+ * backend and this can go away.
+ */
+ driver = audio_driver_lookup("spice");
+ driver->can_be_default = 1;
+ }
+
if (dev) {
/* -audiodev option */
legacy_config = false;
diff --git a/audio/spiceaudio.c b/audio/spiceaudio.c
index b6b5da4812f2..aae420cff997 100644
--- a/audio/spiceaudio.c
+++ b/audio/spiceaudio.c
@@ -310,11 +310,6 @@ static struct audio_driver spice_audio_driver = {
.voice_size_in = sizeof (SpiceVoiceIn),
};
-void qemu_spice_audio_init (void)
-{
- spice_audio_driver.can_be_default = 1;
-}
-
static void register_audio_spice(void)
{
audio_driver_register(&spice_audio_driver);
diff --git a/ui/spice-core.c b/ui/spice-core.c
index ecc2ec2c55c2..10aa309f78f7 100644
--- a/ui/spice-core.c
+++ b/ui/spice-core.c
@@ -804,7 +804,6 @@ void qemu_spice_init(void)
qemu_spice_add_interface(&spice_migrate.base);
qemu_spice_input_init();
- qemu_spice_audio_init();
qemu_add_vm_change_state_handler(vm_change_state_handler, NULL);
qemu_spice_display_stop();
--
2.27.0