diff --git a/src/qemu/qemu_command.c b/src/qemu/qemu_command.c
index ceddf1fb34..bca1888dff 100644
--- a/src/qemu/qemu_command.c
+++ b/src/qemu/qemu_command.c
@@ -7587,6 +7587,34 @@ qemuBuildMemoryDeviceCommandLine(virCommandPtr cmd,
return 0;
}
+static void
+qemuBuildAudioCommonArg(virBufferPtr buf,
+ const char *prefix,
+ virDomainAudioIOCommonPtr def)
+{
+ if (def->mixingEngine)
+ virBufferAsprintf(buf, ",%s.mixing-engine=%s", prefix,
+ virTristateSwitchTypeToString(def->mixingEngine));
+ if (def->fixedSettings)
+ virBufferAsprintf(buf, ",%s.fixed-settings=%s", prefix,
+ virTristateSwitchTypeToString(def->fixedSettings));
+
+ if (def->voices)
+ virBufferAsprintf(buf, ",%s.voices=%u", prefix, def->voices);
+ if (def->bufferLength)
+ virBufferAsprintf(buf, ",%s.buffer-length=%u", prefix, def->bufferLength);
+
+ if (def->fixedSettings) {
+ if (def->frequency)
+ virBufferAsprintf(buf, ",%s.frequency=%u", prefix, def->frequency);
+ if (def->channels)
+ virBufferAsprintf(buf, ",%s.channels=%u", prefix, def->channels);
+ if (def->format)
+ virBufferAsprintf(buf, ",%s.format=%s", prefix,
+ virDomainAudioFormatTypeToString(def->format));
+ }
+}
+
static void
qemuBuildAudioOSSArg(virBufferPtr buf,
const char *prefix,
@@ -7608,6 +7636,9 @@ qemuBuildAudioCommandLineArg(virCommandPtr cmd,
def->id,
qemuAudioDriverTypeToString(def->type));
+ qemuBuildAudioCommonArg(&buf, "in", &def->input);
+ qemuBuildAudioCommonArg(&buf, "out", &def->output);
+
switch ((virDomainAudioType)def->type) {
case VIR_DOMAIN_AUDIO_TYPE_NONE:
break;
@@ -7672,6 +7703,34 @@ qemuBuildAudioCommandLineArgs(virCommandPtr cmd,
return 0;
}
+static void
+qemuBuildAudioCommonEnv(virCommandPtr cmd,
+ const char *prefix,
+ virDomainAudioIOCommonPtr def)
+{
+ if (def->fixedSettings)
+ virCommandAddEnvFormat(cmd, "%sFIXED_SETTINGS=%s",
+ prefix,
+ virTristateSwitchTypeToString(def->fixedSettings));
+
+ if (def->voices)
+ virCommandAddEnvFormat(cmd, "%sVOICES=%u",
+ prefix, def->voices);
+
+ if (def->fixedSettings) {
+ if (def->frequency)
+ virCommandAddEnvFormat(cmd, "%sFIXED_FREQ=%u",
+ prefix, def->frequency);
+ if (def->channels)
+ virCommandAddEnvFormat(cmd, "%sFIXED_CHANNELS=%u",
+ prefix, def->channels);
+ if (def->format)
+ virCommandAddEnvFormat(cmd, "%sFIXED_FMT=%s",
+ prefix,
+ virDomainAudioFormatTypeToString(def->format));
+ }
+}
+
static void
qemuBuildAudioOSSEnv(virCommandPtr cmd,
const char *prefix,
@@ -7694,6 +7753,9 @@ qemuBuildAudioCommandLineEnv(virCommandPtr cmd,
virCommandAddEnvPair(cmd, "QEMU_AUDIO_DRV",
qemuAudioDriverTypeToString(audio->type));
+ qemuBuildAudioCommonEnv(cmd, "QEMU_AUDIO_ADC_", &audio->input);
+ qemuBuildAudioCommonEnv(cmd, "QEMU_AUDIO_DAC_", &audio->output);
+
switch ((virDomainAudioType)audio->type) {
case VIR_DOMAIN_AUDIO_TYPE_NONE:
break;
diff --git a/src/qemu/qemu_validate.c b/src/qemu/qemu_validate.c
index a2cf30210e..ee9592aa34 100644
--- a/src/qemu/qemu_validate.c
+++ b/src/qemu/qemu_validate.c
@@ -4176,6 +4176,25 @@ static int
qemuValidateDomainDeviceDefAudio(virDomainAudioDefPtr audio,
virQEMUCapsPtr qemuCaps G_GNUC_UNUSED)
{
+ if (!virQEMUCapsGet(qemuCaps, QEMU_CAPS_AUDIODEV)) {
+ if (audio->input.mixingEngine == VIR_TRISTATE_BOOL_NO ||
+ audio->output.mixingEngine == VIR_TRISTATE_BOOL_NO) {
+ virReportError(VIR_ERR_CONFIG_UNSUPPORTED, "%s",
+ _("disabling audio mixing engine is not supported with this QEMU"));
+ return -1;
+ }
+
+ if ((audio->input.bufferLength ||
+ audio->output.bufferLength) &&
+ (audio->type != VIR_DOMAIN_AUDIO_TYPE_PULSEAUDIO &&
+ audio->type != VIR_DOMAIN_AUDIO_TYPE_COREAUDIO &&
+ audio->type != VIR_DOMAIN_AUDIO_TYPE_SDL)) {
+ virReportError(VIR_ERR_CONFIG_UNSUPPORTED, "%s",
+ _("setting audio buffer length is not supported with this QEMU"));
+ return -1;
+ }
+ }
+
switch ((virDomainAudioType)audio->type) {
case VIR_DOMAIN_AUDIO_TYPE_NONE:
break;
@@ -4184,6 +4203,13 @@ qemuValidateDomainDeviceDefAudio(virDomainAudioDefPtr audio,
break;
case VIR_DOMAIN_AUDIO_TYPE_COREAUDIO:
+ if (!virQEMUCapsGet(qemuCaps, QEMU_CAPS_AUDIODEV)) {
+ if (audio->input.bufferLength) {
+ virReportError(VIR_ERR_CONFIG_UNSUPPORTED, "%s",
+ _("setting audio buffer length is not supported with this QEMU"));
+ return -1;
+ }
+ }
break;
case VIR_DOMAIN_AUDIO_TYPE_JACK:
@@ -4198,9 +4224,23 @@ qemuValidateDomainDeviceDefAudio(virDomainAudioDefPtr audio,
break;
case VIR_DOMAIN_AUDIO_TYPE_PULSEAUDIO:
+ if (!virQEMUCapsGet(qemuCaps, QEMU_CAPS_AUDIODEV)) {
+ if (audio->input.bufferLength != audio->output.bufferLength) {
+ virReportError(VIR_ERR_CONFIG_UNSUPPORTED, "%s",
+ _("setting audio buffer length is not supported with this QEMU"));
+ return -1;
+ }
+ }
break;
case VIR_DOMAIN_AUDIO_TYPE_SDL:
+ if (!virQEMUCapsGet(qemuCaps, QEMU_CAPS_AUDIODEV)) {
+ if (audio->input.bufferLength) {
+ virReportError(VIR_ERR_CONFIG_UNSUPPORTED, "%s",
+ _("setting audio buffer length is not supported with this QEMU"));
+ return -1;
+ }
+ }
break;
case VIR_DOMAIN_AUDIO_TYPE_SPICE:
diff --git a/tests/qemuxml2argvdata/audio-alsa-best.args b/tests/qemuxml2argvdata/audio-alsa-best.args
new file mode 100644
index 0000000000..4461fc670c
--- /dev/null
+++ b/tests/qemuxml2argvdata/audio-alsa-best.args
@@ -0,0 +1,39 @@
+LC_ALL=C \
+PATH=/bin \
+HOME=/tmp/lib/domain--1-QEMUGuest1 \
+USER=test \
+LOGNAME=test \
+XDG_DATA_HOME=/tmp/lib/domain--1-QEMUGuest1/.local/share \
+XDG_CACHE_HOME=/tmp/lib/domain--1-QEMUGuest1/.cache \
+XDG_CONFIG_HOME=/tmp/lib/domain--1-QEMUGuest1/.config \
+QEMU_AUDIO_DRV=alsa \
+QEMU_AUDIO_ADC_FIXED_SETTINGS=on \
+QEMU_AUDIO_ADC_VOICES=1 \
+QEMU_AUDIO_ADC_FIXED_FREQ=44100 \
+QEMU_AUDIO_ADC_FIXED_CHANNELS=2 \
+QEMU_AUDIO_ADC_FIXED_FMT=s16 \
+QEMU_AUDIO_DAC_FIXED_SETTINGS=on \
+QEMU_AUDIO_DAC_VOICES=2 \
+QEMU_AUDIO_DAC_FIXED_FREQ=22050 \
+QEMU_AUDIO_DAC_FIXED_CHANNELS=4 \
+QEMU_AUDIO_DAC_FIXED_FMT=f32 \
+/usr/bin/qemu-system-i386 \
+-name QEMUGuest1 \
+-S \
+-machine pc,accel=tcg,usb=off,dump-guest-core=off \
+-m 214 \
+-realtime mlock=off \
+-smp 1,sockets=1,cores=1,threads=1 \
+-uuid c7a5fdbd-edaf-9455-926a-d65c16db1809 \
+-display none \
+-no-user-config \
+-nodefaults \
+-chardev socket,id=charmonitor,path=/tmp/lib/domain--1-QEMUGuest1/monitor.sock,\
+server=on,wait=off \
+-mon chardev=charmonitor,id=monitor,mode=control \
+-rtc base=utc \
+-no-shutdown \
+-no-acpi \
+-usb \
+-drive file=/dev/cdrom,format=raw,if=none,id=drive-ide0-1-0,readonly=on \
+-device ide-cd,bus=ide.1,unit=0,drive=drive-ide0-1-0,id=ide0-1-0,bootindex=1
diff --git a/tests/qemuxml2argvdata/audio-alsa-best.x86_64-latest.args b/tests/qemuxml2argvdata/audio-alsa-best.x86_64-latest.args
new file mode 100644
index 0000000000..5f84dcca72
--- /dev/null
+++ b/tests/qemuxml2argvdata/audio-alsa-best.x86_64-latest.args
@@ -0,0 +1,42 @@
+LC_ALL=C \
+PATH=/bin \
+HOME=/tmp/lib/domain--1-QEMUGuest1 \
+USER=test \
+LOGNAME=test \
+XDG_DATA_HOME=/tmp/lib/domain--1-QEMUGuest1/.local/share \
+XDG_CACHE_HOME=/tmp/lib/domain--1-QEMUGuest1/.cache \
+XDG_CONFIG_HOME=/tmp/lib/domain--1-QEMUGuest1/.config \
+/usr/bin/qemu-system-i386 \
+-name guest=QEMUGuest1,debug-threads=on \
+-S \
+-object secret,id=masterKey0,format=raw,\
+file=/tmp/lib/domain--1-QEMUGuest1/master-key.aes \
+-machine pc,accel=tcg,usb=off,dump-guest-core=off,memory-backend=pc.ram \
+-cpu qemu64 \
+-m 214 \
+-object memory-backend-ram,id=pc.ram,size=224395264 \
+-overcommit mem-lock=off \
+-smp 1,sockets=1,cores=1,threads=1 \
+-uuid c7a5fdbd-edaf-9455-926a-d65c16db1809 \
+-display none \
+-no-user-config \
+-nodefaults \
+-chardev socket,id=charmonitor,fd=1729,server=on,wait=off \
+-mon chardev=charmonitor,id=monitor,mode=control \
+-rtc base=utc \
+-no-shutdown \
+-no-acpi \
+-boot strict=on \
+-device piix3-usb-uhci,id=usb,bus=pci.0,addr=0x1.0x2 \
+-blockdev '{"driver":"host_cdrom","filename":"/dev/cdrom",\
+"node-name":"libvirt-1-storage","auto-read-only":true,"discard":"unmap"}' \
+-blockdev '{"node-name":"libvirt-1-format","read-only":true,"driver":"raw",\
+"file":"libvirt-1-storage"}' \
+-device ide-cd,bus=ide.1,unit=0,drive=libvirt-1-format,id=ide0-1-0,bootindex=1 \
+-audiodev id=audio1,driver=alsa,in.mixing-engine=on,in.fixed-settings=on,\
+in.voices=1,in.frequency=44100,in.channels=2,in.format=s16,\
+out.mixing-engine=on,out.fixed-settings=on,out.voices=2,out.frequency=22050,\
+out.channels=4,out.format=f32 \
+-sandbox on,obsolete=deny,elevateprivileges=deny,spawn=deny,\
+resourcecontrol=deny \
+-msg timestamp=on
diff --git a/tests/qemuxml2argvdata/audio-alsa-best.xml b/tests/qemuxml2argvdata/audio-alsa-best.xml
new file mode 100644
index 0000000000..cefcc47027
--- /dev/null
+++ b/tests/qemuxml2argvdata/audio-alsa-best.xml
@@ -0,0 +1,43 @@
+
+ QEMUGuest1
+ c7a5fdbd-edaf-9455-926a-d65c16db1809
+ 219100
+ 219100
+ 1
+
+ hvm
+
+
+
+ destroy
+ restart
+ destroy
+
+ /usr/bin/qemu-system-i386
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/tests/qemuxml2argvdata/audio-alsa-full.args b/tests/qemuxml2argvdata/audio-alsa-full.args
new file mode 100644
index 0000000000..01fe6e2beb
--- /dev/null
+++ b/tests/qemuxml2argvdata/audio-alsa-full.args
@@ -0,0 +1,29 @@
+LC_ALL=C \
+PATH=/bin \
+HOME=/tmp/lib/domain--1-QEMUGuest1 \
+USER=test \
+LOGNAME=test \
+XDG_DATA_HOME=/tmp/lib/domain--1-QEMUGuest1/.local/share \
+XDG_CACHE_HOME=/tmp/lib/domain--1-QEMUGuest1/.cache \
+XDG_CONFIG_HOME=/tmp/lib/domain--1-QEMUGuest1/.config \
+QEMU_AUDIO_DRV=alsa \
+/usr/bin/qemu-system-i386 \
+-name QEMUGuest1 \
+-S \
+-machine pc,accel=tcg,usb=off,dump-guest-core=off \
+-m 214 \
+-realtime mlock=off \
+-smp 1,sockets=1,cores=1,threads=1 \
+-uuid c7a5fdbd-edaf-9455-926a-d65c16db1809 \
+-display none \
+-no-user-config \
+-nodefaults \
+-chardev socket,id=charmonitor,path=/tmp/lib/domain--1-QEMUGuest1/monitor.sock,\
+server=on,wait=off \
+-mon chardev=charmonitor,id=monitor,mode=control \
+-rtc base=utc \
+-no-shutdown \
+-no-acpi \
+-usb \
+-drive file=/dev/cdrom,format=raw,if=none,id=drive-ide0-1-0,readonly=on \
+-device ide-cd,bus=ide.1,unit=0,drive=drive-ide0-1-0,id=ide0-1-0,bootindex=1
diff --git a/tests/qemuxml2argvdata/audio-alsa-full.err b/tests/qemuxml2argvdata/audio-alsa-full.err
new file mode 100644
index 0000000000..d9ceac7226
--- /dev/null
+++ b/tests/qemuxml2argvdata/audio-alsa-full.err
@@ -0,0 +1 @@
+unsupported configuration: setting audio buffer length is not supported with this QEMU
diff --git a/tests/qemuxml2argvdata/audio-alsa-full.x86_64-latest.args b/tests/qemuxml2argvdata/audio-alsa-full.x86_64-latest.args
new file mode 100644
index 0000000000..6ade7ef069
--- /dev/null
+++ b/tests/qemuxml2argvdata/audio-alsa-full.x86_64-latest.args
@@ -0,0 +1,42 @@
+LC_ALL=C \
+PATH=/bin \
+HOME=/tmp/lib/domain--1-QEMUGuest1 \
+USER=test \
+LOGNAME=test \
+XDG_DATA_HOME=/tmp/lib/domain--1-QEMUGuest1/.local/share \
+XDG_CACHE_HOME=/tmp/lib/domain--1-QEMUGuest1/.cache \
+XDG_CONFIG_HOME=/tmp/lib/domain--1-QEMUGuest1/.config \
+/usr/bin/qemu-system-i386 \
+-name guest=QEMUGuest1,debug-threads=on \
+-S \
+-object secret,id=masterKey0,format=raw,\
+file=/tmp/lib/domain--1-QEMUGuest1/master-key.aes \
+-machine pc,accel=tcg,usb=off,dump-guest-core=off,memory-backend=pc.ram \
+-cpu qemu64 \
+-m 214 \
+-object memory-backend-ram,id=pc.ram,size=224395264 \
+-overcommit mem-lock=off \
+-smp 1,sockets=1,cores=1,threads=1 \
+-uuid c7a5fdbd-edaf-9455-926a-d65c16db1809 \
+-display none \
+-no-user-config \
+-nodefaults \
+-chardev socket,id=charmonitor,fd=1729,server=on,wait=off \
+-mon chardev=charmonitor,id=monitor,mode=control \
+-rtc base=utc \
+-no-shutdown \
+-no-acpi \
+-boot strict=on \
+-device piix3-usb-uhci,id=usb,bus=pci.0,addr=0x1.0x2 \
+-blockdev '{"driver":"host_cdrom","filename":"/dev/cdrom",\
+"node-name":"libvirt-1-storage","auto-read-only":true,"discard":"unmap"}' \
+-blockdev '{"node-name":"libvirt-1-format","read-only":true,"driver":"raw",\
+"file":"libvirt-1-storage"}' \
+-device ide-cd,bus=ide.1,unit=0,drive=libvirt-1-format,id=ide0-1-0,bootindex=1 \
+-audiodev id=audio1,driver=alsa,in.mixing-engine=on,in.fixed-settings=on,\
+in.voices=1,in.buffer-length=100,in.frequency=44100,in.channels=2,\
+in.format=s16,out.mixing-engine=on,out.fixed-settings=on,out.voices=2,\
+out.buffer-length=200,out.frequency=22050,out.channels=4,out.format=f32 \
+-sandbox on,obsolete=deny,elevateprivileges=deny,spawn=deny,\
+resourcecontrol=deny \
+-msg timestamp=on
diff --git a/tests/qemuxml2argvdata/audio-alsa-full.xml b/tests/qemuxml2argvdata/audio-alsa-full.xml
new file mode 100644
index 0000000000..2cd488a3a5
--- /dev/null
+++ b/tests/qemuxml2argvdata/audio-alsa-full.xml
@@ -0,0 +1,43 @@
+
+ QEMUGuest1
+ c7a5fdbd-edaf-9455-926a-d65c16db1809
+ 219100
+ 219100
+ 1
+
+ hvm
+
+
+
+ destroy
+ restart
+ destroy
+
+ /usr/bin/qemu-system-i386
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/tests/qemuxml2argvdata/audio-coreaudio-best.args b/tests/qemuxml2argvdata/audio-coreaudio-best.args
new file mode 100644
index 0000000000..f8250df5cb
--- /dev/null
+++ b/tests/qemuxml2argvdata/audio-coreaudio-best.args
@@ -0,0 +1,39 @@
+LC_ALL=C \
+PATH=/bin \
+HOME=/tmp/lib/domain--1-QEMUGuest1 \
+USER=test \
+LOGNAME=test \
+XDG_DATA_HOME=/tmp/lib/domain--1-QEMUGuest1/.local/share \
+XDG_CACHE_HOME=/tmp/lib/domain--1-QEMUGuest1/.cache \
+XDG_CONFIG_HOME=/tmp/lib/domain--1-QEMUGuest1/.config \
+QEMU_AUDIO_DRV=coreaudio \
+QEMU_AUDIO_ADC_FIXED_SETTINGS=on \
+QEMU_AUDIO_ADC_VOICES=1 \
+QEMU_AUDIO_ADC_FIXED_FREQ=44100 \
+QEMU_AUDIO_ADC_FIXED_CHANNELS=2 \
+QEMU_AUDIO_ADC_FIXED_FMT=s16 \
+QEMU_AUDIO_DAC_FIXED_SETTINGS=on \
+QEMU_AUDIO_DAC_VOICES=2 \
+QEMU_AUDIO_DAC_FIXED_FREQ=22050 \
+QEMU_AUDIO_DAC_FIXED_CHANNELS=4 \
+QEMU_AUDIO_DAC_FIXED_FMT=f32 \
+/usr/bin/qemu-system-i386 \
+-name QEMUGuest1 \
+-S \
+-machine pc,accel=tcg,usb=off,dump-guest-core=off \
+-m 214 \
+-realtime mlock=off \
+-smp 1,sockets=1,cores=1,threads=1 \
+-uuid c7a5fdbd-edaf-9455-926a-d65c16db1809 \
+-display none \
+-no-user-config \
+-nodefaults \
+-chardev socket,id=charmonitor,path=/tmp/lib/domain--1-QEMUGuest1/monitor.sock,\
+server=on,wait=off \
+-mon chardev=charmonitor,id=monitor,mode=control \
+-rtc base=utc \
+-no-shutdown \
+-no-acpi \
+-usb \
+-drive file=/dev/cdrom,format=raw,if=none,id=drive-ide0-1-0,readonly=on \
+-device ide-cd,bus=ide.1,unit=0,drive=drive-ide0-1-0,id=ide0-1-0,bootindex=1
diff --git a/tests/qemuxml2argvdata/audio-coreaudio-best.x86_64-latest.args b/tests/qemuxml2argvdata/audio-coreaudio-best.x86_64-latest.args
new file mode 100644
index 0000000000..93166f27de
--- /dev/null
+++ b/tests/qemuxml2argvdata/audio-coreaudio-best.x86_64-latest.args
@@ -0,0 +1,42 @@
+LC_ALL=C \
+PATH=/bin \
+HOME=/tmp/lib/domain--1-QEMUGuest1 \
+USER=test \
+LOGNAME=test \
+XDG_DATA_HOME=/tmp/lib/domain--1-QEMUGuest1/.local/share \
+XDG_CACHE_HOME=/tmp/lib/domain--1-QEMUGuest1/.cache \
+XDG_CONFIG_HOME=/tmp/lib/domain--1-QEMUGuest1/.config \
+/usr/bin/qemu-system-i386 \
+-name guest=QEMUGuest1,debug-threads=on \
+-S \
+-object secret,id=masterKey0,format=raw,\
+file=/tmp/lib/domain--1-QEMUGuest1/master-key.aes \
+-machine pc,accel=tcg,usb=off,dump-guest-core=off,memory-backend=pc.ram \
+-cpu qemu64 \
+-m 214 \
+-object memory-backend-ram,id=pc.ram,size=224395264 \
+-overcommit mem-lock=off \
+-smp 1,sockets=1,cores=1,threads=1 \
+-uuid c7a5fdbd-edaf-9455-926a-d65c16db1809 \
+-display none \
+-no-user-config \
+-nodefaults \
+-chardev socket,id=charmonitor,fd=1729,server=on,wait=off \
+-mon chardev=charmonitor,id=monitor,mode=control \
+-rtc base=utc \
+-no-shutdown \
+-no-acpi \
+-boot strict=on \
+-device piix3-usb-uhci,id=usb,bus=pci.0,addr=0x1.0x2 \
+-blockdev '{"driver":"host_cdrom","filename":"/dev/cdrom",\
+"node-name":"libvirt-1-storage","auto-read-only":true,"discard":"unmap"}' \
+-blockdev '{"node-name":"libvirt-1-format","read-only":true,"driver":"raw",\
+"file":"libvirt-1-storage"}' \
+-device ide-cd,bus=ide.1,unit=0,drive=libvirt-1-format,id=ide0-1-0,bootindex=1 \
+-audiodev id=audio1,driver=coreaudio,in.mixing-engine=on,in.fixed-settings=on,\
+in.voices=1,in.frequency=44100,in.channels=2,in.format=s16,\
+out.mixing-engine=on,out.fixed-settings=on,out.voices=2,out.frequency=22050,\
+out.channels=4,out.format=f32 \
+-sandbox on,obsolete=deny,elevateprivileges=deny,spawn=deny,\
+resourcecontrol=deny \
+-msg timestamp=on
diff --git a/tests/qemuxml2argvdata/audio-coreaudio-best.xml b/tests/qemuxml2argvdata/audio-coreaudio-best.xml
new file mode 100644
index 0000000000..8a79404fde
--- /dev/null
+++ b/tests/qemuxml2argvdata/audio-coreaudio-best.xml
@@ -0,0 +1,43 @@
+
+ QEMUGuest1
+ c7a5fdbd-edaf-9455-926a-d65c16db1809
+ 219100
+ 219100
+ 1
+
+ hvm
+
+
+
+ destroy
+ restart
+ destroy
+
+ /usr/bin/qemu-system-i386
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/tests/qemuxml2argvdata/audio-coreaudio-full.args b/tests/qemuxml2argvdata/audio-coreaudio-full.args
new file mode 100644
index 0000000000..c4d502b889
--- /dev/null
+++ b/tests/qemuxml2argvdata/audio-coreaudio-full.args
@@ -0,0 +1,29 @@
+LC_ALL=C \
+PATH=/bin \
+HOME=/tmp/lib/domain--1-QEMUGuest1 \
+USER=test \
+LOGNAME=test \
+XDG_DATA_HOME=/tmp/lib/domain--1-QEMUGuest1/.local/share \
+XDG_CACHE_HOME=/tmp/lib/domain--1-QEMUGuest1/.cache \
+XDG_CONFIG_HOME=/tmp/lib/domain--1-QEMUGuest1/.config \
+QEMU_AUDIO_DRV=coreaudio \
+/usr/bin/qemu-system-i386 \
+-name QEMUGuest1 \
+-S \
+-machine pc,accel=tcg,usb=off,dump-guest-core=off \
+-m 214 \
+-realtime mlock=off \
+-smp 1,sockets=1,cores=1,threads=1 \
+-uuid c7a5fdbd-edaf-9455-926a-d65c16db1809 \
+-display none \
+-no-user-config \
+-nodefaults \
+-chardev socket,id=charmonitor,path=/tmp/lib/domain--1-QEMUGuest1/monitor.sock,\
+server=on,wait=off \
+-mon chardev=charmonitor,id=monitor,mode=control \
+-rtc base=utc \
+-no-shutdown \
+-no-acpi \
+-usb \
+-drive file=/dev/cdrom,format=raw,if=none,id=drive-ide0-1-0,readonly=on \
+-device ide-cd,bus=ide.1,unit=0,drive=drive-ide0-1-0,id=ide0-1-0,bootindex=1
diff --git a/tests/qemuxml2argvdata/audio-coreaudio-full.err b/tests/qemuxml2argvdata/audio-coreaudio-full.err
new file mode 100644
index 0000000000..d9ceac7226
--- /dev/null
+++ b/tests/qemuxml2argvdata/audio-coreaudio-full.err
@@ -0,0 +1 @@
+unsupported configuration: setting audio buffer length is not supported with this QEMU
diff --git a/tests/qemuxml2argvdata/audio-coreaudio-full.x86_64-latest.args b/tests/qemuxml2argvdata/audio-coreaudio-full.x86_64-latest.args
new file mode 100644
index 0000000000..bc6c9e9241
--- /dev/null
+++ b/tests/qemuxml2argvdata/audio-coreaudio-full.x86_64-latest.args
@@ -0,0 +1,42 @@
+LC_ALL=C \
+PATH=/bin \
+HOME=/tmp/lib/domain--1-QEMUGuest1 \
+USER=test \
+LOGNAME=test \
+XDG_DATA_HOME=/tmp/lib/domain--1-QEMUGuest1/.local/share \
+XDG_CACHE_HOME=/tmp/lib/domain--1-QEMUGuest1/.cache \
+XDG_CONFIG_HOME=/tmp/lib/domain--1-QEMUGuest1/.config \
+/usr/bin/qemu-system-i386 \
+-name guest=QEMUGuest1,debug-threads=on \
+-S \
+-object secret,id=masterKey0,format=raw,\
+file=/tmp/lib/domain--1-QEMUGuest1/master-key.aes \
+-machine pc,accel=tcg,usb=off,dump-guest-core=off,memory-backend=pc.ram \
+-cpu qemu64 \
+-m 214 \
+-object memory-backend-ram,id=pc.ram,size=224395264 \
+-overcommit mem-lock=off \
+-smp 1,sockets=1,cores=1,threads=1 \
+-uuid c7a5fdbd-edaf-9455-926a-d65c16db1809 \
+-display none \
+-no-user-config \
+-nodefaults \
+-chardev socket,id=charmonitor,fd=1729,server=on,wait=off \
+-mon chardev=charmonitor,id=monitor,mode=control \
+-rtc base=utc \
+-no-shutdown \
+-no-acpi \
+-boot strict=on \
+-device piix3-usb-uhci,id=usb,bus=pci.0,addr=0x1.0x2 \
+-blockdev '{"driver":"host_cdrom","filename":"/dev/cdrom",\
+"node-name":"libvirt-1-storage","auto-read-only":true,"discard":"unmap"}' \
+-blockdev '{"node-name":"libvirt-1-format","read-only":true,"driver":"raw",\
+"file":"libvirt-1-storage"}' \
+-device ide-cd,bus=ide.1,unit=0,drive=libvirt-1-format,id=ide0-1-0,bootindex=1 \
+-audiodev id=audio1,driver=coreaudio,in.mixing-engine=on,in.fixed-settings=on,\
+in.voices=1,in.buffer-length=100,in.frequency=44100,in.channels=2,\
+in.format=s16,out.mixing-engine=on,out.fixed-settings=on,out.voices=2,\
+out.buffer-length=200,out.frequency=22050,out.channels=4,out.format=f32 \
+-sandbox on,obsolete=deny,elevateprivileges=deny,spawn=deny,\
+resourcecontrol=deny \
+-msg timestamp=on
diff --git a/tests/qemuxml2argvdata/audio-coreaudio-full.xml b/tests/qemuxml2argvdata/audio-coreaudio-full.xml
new file mode 100644
index 0000000000..671497986e
--- /dev/null
+++ b/tests/qemuxml2argvdata/audio-coreaudio-full.xml
@@ -0,0 +1,43 @@
+
+ QEMUGuest1
+ c7a5fdbd-edaf-9455-926a-d65c16db1809
+ 219100
+ 219100
+ 1
+
+ hvm
+
+
+
+ destroy
+ restart
+ destroy
+
+ /usr/bin/qemu-system-i386
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/tests/qemuxml2argvdata/audio-file-best.args b/tests/qemuxml2argvdata/audio-file-best.args
new file mode 100644
index 0000000000..bd73a5b26f
--- /dev/null
+++ b/tests/qemuxml2argvdata/audio-file-best.args
@@ -0,0 +1,39 @@
+LC_ALL=C \
+PATH=/bin \
+HOME=/tmp/lib/domain--1-QEMUGuest1 \
+USER=test \
+LOGNAME=test \
+XDG_DATA_HOME=/tmp/lib/domain--1-QEMUGuest1/.local/share \
+XDG_CACHE_HOME=/tmp/lib/domain--1-QEMUGuest1/.cache \
+XDG_CONFIG_HOME=/tmp/lib/domain--1-QEMUGuest1/.config \
+QEMU_AUDIO_DRV=wav \
+QEMU_AUDIO_ADC_FIXED_SETTINGS=on \
+QEMU_AUDIO_ADC_VOICES=1 \
+QEMU_AUDIO_ADC_FIXED_FREQ=44100 \
+QEMU_AUDIO_ADC_FIXED_CHANNELS=2 \
+QEMU_AUDIO_ADC_FIXED_FMT=s16 \
+QEMU_AUDIO_DAC_FIXED_SETTINGS=on \
+QEMU_AUDIO_DAC_VOICES=2 \
+QEMU_AUDIO_DAC_FIXED_FREQ=22050 \
+QEMU_AUDIO_DAC_FIXED_CHANNELS=4 \
+QEMU_AUDIO_DAC_FIXED_FMT=f32 \
+/usr/bin/qemu-system-i386 \
+-name QEMUGuest1 \
+-S \
+-machine pc,accel=tcg,usb=off,dump-guest-core=off \
+-m 214 \
+-realtime mlock=off \
+-smp 1,sockets=1,cores=1,threads=1 \
+-uuid c7a5fdbd-edaf-9455-926a-d65c16db1809 \
+-display none \
+-no-user-config \
+-nodefaults \
+-chardev socket,id=charmonitor,path=/tmp/lib/domain--1-QEMUGuest1/monitor.sock,\
+server=on,wait=off \
+-mon chardev=charmonitor,id=monitor,mode=control \
+-rtc base=utc \
+-no-shutdown \
+-no-acpi \
+-usb \
+-drive file=/dev/cdrom,format=raw,if=none,id=drive-ide0-1-0,readonly=on \
+-device ide-cd,bus=ide.1,unit=0,drive=drive-ide0-1-0,id=ide0-1-0,bootindex=1
diff --git a/tests/qemuxml2argvdata/audio-file-best.x86_64-latest.args b/tests/qemuxml2argvdata/audio-file-best.x86_64-latest.args
new file mode 100644
index 0000000000..546e4debe8
--- /dev/null
+++ b/tests/qemuxml2argvdata/audio-file-best.x86_64-latest.args
@@ -0,0 +1,42 @@
+LC_ALL=C \
+PATH=/bin \
+HOME=/tmp/lib/domain--1-QEMUGuest1 \
+USER=test \
+LOGNAME=test \
+XDG_DATA_HOME=/tmp/lib/domain--1-QEMUGuest1/.local/share \
+XDG_CACHE_HOME=/tmp/lib/domain--1-QEMUGuest1/.cache \
+XDG_CONFIG_HOME=/tmp/lib/domain--1-QEMUGuest1/.config \
+/usr/bin/qemu-system-i386 \
+-name guest=QEMUGuest1,debug-threads=on \
+-S \
+-object secret,id=masterKey0,format=raw,\
+file=/tmp/lib/domain--1-QEMUGuest1/master-key.aes \
+-machine pc,accel=tcg,usb=off,dump-guest-core=off,memory-backend=pc.ram \
+-cpu qemu64 \
+-m 214 \
+-object memory-backend-ram,id=pc.ram,size=224395264 \
+-overcommit mem-lock=off \
+-smp 1,sockets=1,cores=1,threads=1 \
+-uuid c7a5fdbd-edaf-9455-926a-d65c16db1809 \
+-display none \
+-no-user-config \
+-nodefaults \
+-chardev socket,id=charmonitor,fd=1729,server=on,wait=off \
+-mon chardev=charmonitor,id=monitor,mode=control \
+-rtc base=utc \
+-no-shutdown \
+-no-acpi \
+-boot strict=on \
+-device piix3-usb-uhci,id=usb,bus=pci.0,addr=0x1.0x2 \
+-blockdev '{"driver":"host_cdrom","filename":"/dev/cdrom",\
+"node-name":"libvirt-1-storage","auto-read-only":true,"discard":"unmap"}' \
+-blockdev '{"node-name":"libvirt-1-format","read-only":true,"driver":"raw",\
+"file":"libvirt-1-storage"}' \
+-device ide-cd,bus=ide.1,unit=0,drive=libvirt-1-format,id=ide0-1-0,bootindex=1 \
+-audiodev id=audio1,driver=wav,in.mixing-engine=on,in.fixed-settings=on,\
+in.voices=1,in.frequency=44100,in.channels=2,in.format=s16,\
+out.mixing-engine=on,out.fixed-settings=on,out.voices=2,out.frequency=22050,\
+out.channels=4,out.format=f32 \
+-sandbox on,obsolete=deny,elevateprivileges=deny,spawn=deny,\
+resourcecontrol=deny \
+-msg timestamp=on
diff --git a/tests/qemuxml2argvdata/audio-file-best.xml b/tests/qemuxml2argvdata/audio-file-best.xml
new file mode 100644
index 0000000000..0617dbbc0b
--- /dev/null
+++ b/tests/qemuxml2argvdata/audio-file-best.xml
@@ -0,0 +1,43 @@
+
+ QEMUGuest1
+ c7a5fdbd-edaf-9455-926a-d65c16db1809
+ 219100
+ 219100
+ 1
+
+ hvm
+
+
+
+ destroy
+ restart
+ destroy
+
+ /usr/bin/qemu-system-i386
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/tests/qemuxml2argvdata/audio-file-full.args b/tests/qemuxml2argvdata/audio-file-full.args
new file mode 100644
index 0000000000..fd504f50e7
--- /dev/null
+++ b/tests/qemuxml2argvdata/audio-file-full.args
@@ -0,0 +1,29 @@
+LC_ALL=C \
+PATH=/bin \
+HOME=/tmp/lib/domain--1-QEMUGuest1 \
+USER=test \
+LOGNAME=test \
+XDG_DATA_HOME=/tmp/lib/domain--1-QEMUGuest1/.local/share \
+XDG_CACHE_HOME=/tmp/lib/domain--1-QEMUGuest1/.cache \
+XDG_CONFIG_HOME=/tmp/lib/domain--1-QEMUGuest1/.config \
+QEMU_AUDIO_DRV=wav \
+/usr/bin/qemu-system-i386 \
+-name QEMUGuest1 \
+-S \
+-machine pc,accel=tcg,usb=off,dump-guest-core=off \
+-m 214 \
+-realtime mlock=off \
+-smp 1,sockets=1,cores=1,threads=1 \
+-uuid c7a5fdbd-edaf-9455-926a-d65c16db1809 \
+-display none \
+-no-user-config \
+-nodefaults \
+-chardev socket,id=charmonitor,path=/tmp/lib/domain--1-QEMUGuest1/monitor.sock,\
+server=on,wait=off \
+-mon chardev=charmonitor,id=monitor,mode=control \
+-rtc base=utc \
+-no-shutdown \
+-no-acpi \
+-usb \
+-drive file=/dev/cdrom,format=raw,if=none,id=drive-ide0-1-0,readonly=on \
+-device ide-cd,bus=ide.1,unit=0,drive=drive-ide0-1-0,id=ide0-1-0,bootindex=1
diff --git a/tests/qemuxml2argvdata/audio-file-full.err b/tests/qemuxml2argvdata/audio-file-full.err
new file mode 100644
index 0000000000..d9ceac7226
--- /dev/null
+++ b/tests/qemuxml2argvdata/audio-file-full.err
@@ -0,0 +1 @@
+unsupported configuration: setting audio buffer length is not supported with this QEMU
diff --git a/tests/qemuxml2argvdata/audio-file-full.x86_64-latest.args b/tests/qemuxml2argvdata/audio-file-full.x86_64-latest.args
new file mode 100644
index 0000000000..1f1f05b39c
--- /dev/null
+++ b/tests/qemuxml2argvdata/audio-file-full.x86_64-latest.args
@@ -0,0 +1,42 @@
+LC_ALL=C \
+PATH=/bin \
+HOME=/tmp/lib/domain--1-QEMUGuest1 \
+USER=test \
+LOGNAME=test \
+XDG_DATA_HOME=/tmp/lib/domain--1-QEMUGuest1/.local/share \
+XDG_CACHE_HOME=/tmp/lib/domain--1-QEMUGuest1/.cache \
+XDG_CONFIG_HOME=/tmp/lib/domain--1-QEMUGuest1/.config \
+/usr/bin/qemu-system-i386 \
+-name guest=QEMUGuest1,debug-threads=on \
+-S \
+-object secret,id=masterKey0,format=raw,\
+file=/tmp/lib/domain--1-QEMUGuest1/master-key.aes \
+-machine pc,accel=tcg,usb=off,dump-guest-core=off,memory-backend=pc.ram \
+-cpu qemu64 \
+-m 214 \
+-object memory-backend-ram,id=pc.ram,size=224395264 \
+-overcommit mem-lock=off \
+-smp 1,sockets=1,cores=1,threads=1 \
+-uuid c7a5fdbd-edaf-9455-926a-d65c16db1809 \
+-display none \
+-no-user-config \
+-nodefaults \
+-chardev socket,id=charmonitor,fd=1729,server=on,wait=off \
+-mon chardev=charmonitor,id=monitor,mode=control \
+-rtc base=utc \
+-no-shutdown \
+-no-acpi \
+-boot strict=on \
+-device piix3-usb-uhci,id=usb,bus=pci.0,addr=0x1.0x2 \
+-blockdev '{"driver":"host_cdrom","filename":"/dev/cdrom",\
+"node-name":"libvirt-1-storage","auto-read-only":true,"discard":"unmap"}' \
+-blockdev '{"node-name":"libvirt-1-format","read-only":true,"driver":"raw",\
+"file":"libvirt-1-storage"}' \
+-device ide-cd,bus=ide.1,unit=0,drive=libvirt-1-format,id=ide0-1-0,bootindex=1 \
+-audiodev id=audio1,driver=wav,in.mixing-engine=on,in.fixed-settings=on,\
+in.voices=1,in.buffer-length=100,in.frequency=44100,in.channels=2,\
+in.format=s16,out.mixing-engine=on,out.fixed-settings=on,out.voices=2,\
+out.buffer-length=200,out.frequency=22050,out.channels=4,out.format=f32 \
+-sandbox on,obsolete=deny,elevateprivileges=deny,spawn=deny,\
+resourcecontrol=deny \
+-msg timestamp=on
diff --git a/tests/qemuxml2argvdata/audio-file-full.xml b/tests/qemuxml2argvdata/audio-file-full.xml
new file mode 100644
index 0000000000..c695a1715e
--- /dev/null
+++ b/tests/qemuxml2argvdata/audio-file-full.xml
@@ -0,0 +1,43 @@
+
+ QEMUGuest1
+ c7a5fdbd-edaf-9455-926a-d65c16db1809
+ 219100
+ 219100
+ 1
+
+ hvm
+
+
+
+ destroy
+ restart
+ destroy
+
+ /usr/bin/qemu-system-i386
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/tests/qemuxml2argvdata/audio-jack-full.err b/tests/qemuxml2argvdata/audio-jack-full.err
new file mode 100644
index 0000000000..d9ceac7226
--- /dev/null
+++ b/tests/qemuxml2argvdata/audio-jack-full.err
@@ -0,0 +1 @@
+unsupported configuration: setting audio buffer length is not supported with this QEMU
diff --git a/tests/qemuxml2argvdata/audio-jack-full.x86_64-latest.args b/tests/qemuxml2argvdata/audio-jack-full.x86_64-latest.args
new file mode 100644
index 0000000000..96856cd3d5
--- /dev/null
+++ b/tests/qemuxml2argvdata/audio-jack-full.x86_64-latest.args
@@ -0,0 +1,42 @@
+LC_ALL=C \
+PATH=/bin \
+HOME=/tmp/lib/domain--1-QEMUGuest1 \
+USER=test \
+LOGNAME=test \
+XDG_DATA_HOME=/tmp/lib/domain--1-QEMUGuest1/.local/share \
+XDG_CACHE_HOME=/tmp/lib/domain--1-QEMUGuest1/.cache \
+XDG_CONFIG_HOME=/tmp/lib/domain--1-QEMUGuest1/.config \
+/usr/bin/qemu-system-i386 \
+-name guest=QEMUGuest1,debug-threads=on \
+-S \
+-object secret,id=masterKey0,format=raw,\
+file=/tmp/lib/domain--1-QEMUGuest1/master-key.aes \
+-machine pc,accel=tcg,usb=off,dump-guest-core=off,memory-backend=pc.ram \
+-cpu qemu64 \
+-m 214 \
+-object memory-backend-ram,id=pc.ram,size=224395264 \
+-overcommit mem-lock=off \
+-smp 1,sockets=1,cores=1,threads=1 \
+-uuid c7a5fdbd-edaf-9455-926a-d65c16db1809 \
+-display none \
+-no-user-config \
+-nodefaults \
+-chardev socket,id=charmonitor,fd=1729,server=on,wait=off \
+-mon chardev=charmonitor,id=monitor,mode=control \
+-rtc base=utc \
+-no-shutdown \
+-no-acpi \
+-boot strict=on \
+-device piix3-usb-uhci,id=usb,bus=pci.0,addr=0x1.0x2 \
+-blockdev '{"driver":"host_cdrom","filename":"/dev/cdrom",\
+"node-name":"libvirt-1-storage","auto-read-only":true,"discard":"unmap"}' \
+-blockdev '{"node-name":"libvirt-1-format","read-only":true,"driver":"raw",\
+"file":"libvirt-1-storage"}' \
+-device ide-cd,bus=ide.1,unit=0,drive=libvirt-1-format,id=ide0-1-0,bootindex=1 \
+-audiodev id=audio1,driver=jack,in.mixing-engine=on,in.fixed-settings=on,\
+in.voices=1,in.buffer-length=100,in.frequency=44100,in.channels=2,\
+in.format=s16,out.mixing-engine=on,out.fixed-settings=on,out.voices=2,\
+out.buffer-length=200,out.frequency=22050,out.channels=4,out.format=f32 \
+-sandbox on,obsolete=deny,elevateprivileges=deny,spawn=deny,\
+resourcecontrol=deny \
+-msg timestamp=on
diff --git a/tests/qemuxml2argvdata/audio-jack-full.xml b/tests/qemuxml2argvdata/audio-jack-full.xml
new file mode 100644
index 0000000000..129bf509a0
--- /dev/null
+++ b/tests/qemuxml2argvdata/audio-jack-full.xml
@@ -0,0 +1,43 @@
+
+ QEMUGuest1
+ c7a5fdbd-edaf-9455-926a-d65c16db1809
+ 219100
+ 219100
+ 1
+
+ hvm
+
+
+
+ destroy
+ restart
+ destroy
+
+ /usr/bin/qemu-system-i386
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/tests/qemuxml2argvdata/audio-none-best.args b/tests/qemuxml2argvdata/audio-none-best.args
new file mode 100644
index 0000000000..6116734e4a
--- /dev/null
+++ b/tests/qemuxml2argvdata/audio-none-best.args
@@ -0,0 +1,39 @@
+LC_ALL=C \
+PATH=/bin \
+HOME=/tmp/lib/domain--1-QEMUGuest1 \
+USER=test \
+LOGNAME=test \
+XDG_DATA_HOME=/tmp/lib/domain--1-QEMUGuest1/.local/share \
+XDG_CACHE_HOME=/tmp/lib/domain--1-QEMUGuest1/.cache \
+XDG_CONFIG_HOME=/tmp/lib/domain--1-QEMUGuest1/.config \
+QEMU_AUDIO_DRV=none \
+QEMU_AUDIO_ADC_FIXED_SETTINGS=on \
+QEMU_AUDIO_ADC_VOICES=1 \
+QEMU_AUDIO_ADC_FIXED_FREQ=44100 \
+QEMU_AUDIO_ADC_FIXED_CHANNELS=2 \
+QEMU_AUDIO_ADC_FIXED_FMT=s16 \
+QEMU_AUDIO_DAC_FIXED_SETTINGS=on \
+QEMU_AUDIO_DAC_VOICES=2 \
+QEMU_AUDIO_DAC_FIXED_FREQ=22050 \
+QEMU_AUDIO_DAC_FIXED_CHANNELS=4 \
+QEMU_AUDIO_DAC_FIXED_FMT=f32 \
+/usr/bin/qemu-system-i386 \
+-name QEMUGuest1 \
+-S \
+-machine pc,accel=tcg,usb=off,dump-guest-core=off \
+-m 214 \
+-realtime mlock=off \
+-smp 1,sockets=1,cores=1,threads=1 \
+-uuid c7a5fdbd-edaf-9455-926a-d65c16db1809 \
+-display none \
+-no-user-config \
+-nodefaults \
+-chardev socket,id=charmonitor,path=/tmp/lib/domain--1-QEMUGuest1/monitor.sock,\
+server=on,wait=off \
+-mon chardev=charmonitor,id=monitor,mode=control \
+-rtc base=utc \
+-no-shutdown \
+-no-acpi \
+-usb \
+-drive file=/dev/cdrom,format=raw,if=none,id=drive-ide0-1-0,readonly=on \
+-device ide-cd,bus=ide.1,unit=0,drive=drive-ide0-1-0,id=ide0-1-0,bootindex=1
diff --git a/tests/qemuxml2argvdata/audio-none-best.x86_64-latest.args b/tests/qemuxml2argvdata/audio-none-best.x86_64-latest.args
new file mode 100644
index 0000000000..005f26dded
--- /dev/null
+++ b/tests/qemuxml2argvdata/audio-none-best.x86_64-latest.args
@@ -0,0 +1,42 @@
+LC_ALL=C \
+PATH=/bin \
+HOME=/tmp/lib/domain--1-QEMUGuest1 \
+USER=test \
+LOGNAME=test \
+XDG_DATA_HOME=/tmp/lib/domain--1-QEMUGuest1/.local/share \
+XDG_CACHE_HOME=/tmp/lib/domain--1-QEMUGuest1/.cache \
+XDG_CONFIG_HOME=/tmp/lib/domain--1-QEMUGuest1/.config \
+/usr/bin/qemu-system-i386 \
+-name guest=QEMUGuest1,debug-threads=on \
+-S \
+-object secret,id=masterKey0,format=raw,\
+file=/tmp/lib/domain--1-QEMUGuest1/master-key.aes \
+-machine pc,accel=tcg,usb=off,dump-guest-core=off,memory-backend=pc.ram \
+-cpu qemu64 \
+-m 214 \
+-object memory-backend-ram,id=pc.ram,size=224395264 \
+-overcommit mem-lock=off \
+-smp 1,sockets=1,cores=1,threads=1 \
+-uuid c7a5fdbd-edaf-9455-926a-d65c16db1809 \
+-display none \
+-no-user-config \
+-nodefaults \
+-chardev socket,id=charmonitor,fd=1729,server=on,wait=off \
+-mon chardev=charmonitor,id=monitor,mode=control \
+-rtc base=utc \
+-no-shutdown \
+-no-acpi \
+-boot strict=on \
+-device piix3-usb-uhci,id=usb,bus=pci.0,addr=0x1.0x2 \
+-blockdev '{"driver":"host_cdrom","filename":"/dev/cdrom",\
+"node-name":"libvirt-1-storage","auto-read-only":true,"discard":"unmap"}' \
+-blockdev '{"node-name":"libvirt-1-format","read-only":true,"driver":"raw",\
+"file":"libvirt-1-storage"}' \
+-device ide-cd,bus=ide.1,unit=0,drive=libvirt-1-format,id=ide0-1-0,bootindex=1 \
+-audiodev id=audio1,driver=none,in.mixing-engine=on,in.fixed-settings=on,\
+in.voices=1,in.frequency=44100,in.channels=2,in.format=s16,\
+out.mixing-engine=on,out.fixed-settings=on,out.voices=2,out.frequency=22050,\
+out.channels=4,out.format=f32 \
+-sandbox on,obsolete=deny,elevateprivileges=deny,spawn=deny,\
+resourcecontrol=deny \
+-msg timestamp=on
diff --git a/tests/qemuxml2argvdata/audio-none-best.xml b/tests/qemuxml2argvdata/audio-none-best.xml
new file mode 100644
index 0000000000..df79f705ac
--- /dev/null
+++ b/tests/qemuxml2argvdata/audio-none-best.xml
@@ -0,0 +1,43 @@
+
+ QEMUGuest1
+ c7a5fdbd-edaf-9455-926a-d65c16db1809
+ 219100
+ 219100
+ 1
+
+ hvm
+
+
+
+ destroy
+ restart
+ destroy
+
+ /usr/bin/qemu-system-i386
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/tests/qemuxml2argvdata/audio-none-full.args b/tests/qemuxml2argvdata/audio-none-full.args
new file mode 100644
index 0000000000..00c6e37ccc
--- /dev/null
+++ b/tests/qemuxml2argvdata/audio-none-full.args
@@ -0,0 +1,29 @@
+LC_ALL=C \
+PATH=/bin \
+HOME=/tmp/lib/domain--1-QEMUGuest1 \
+USER=test \
+LOGNAME=test \
+XDG_DATA_HOME=/tmp/lib/domain--1-QEMUGuest1/.local/share \
+XDG_CACHE_HOME=/tmp/lib/domain--1-QEMUGuest1/.cache \
+XDG_CONFIG_HOME=/tmp/lib/domain--1-QEMUGuest1/.config \
+QEMU_AUDIO_DRV=none \
+/usr/bin/qemu-system-i386 \
+-name QEMUGuest1 \
+-S \
+-machine pc,accel=tcg,usb=off,dump-guest-core=off \
+-m 214 \
+-realtime mlock=off \
+-smp 1,sockets=1,cores=1,threads=1 \
+-uuid c7a5fdbd-edaf-9455-926a-d65c16db1809 \
+-display none \
+-no-user-config \
+-nodefaults \
+-chardev socket,id=charmonitor,path=/tmp/lib/domain--1-QEMUGuest1/monitor.sock,\
+server=on,wait=off \
+-mon chardev=charmonitor,id=monitor,mode=control \
+-rtc base=utc \
+-no-shutdown \
+-no-acpi \
+-usb \
+-drive file=/dev/cdrom,format=raw,if=none,id=drive-ide0-1-0,readonly=on \
+-device ide-cd,bus=ide.1,unit=0,drive=drive-ide0-1-0,id=ide0-1-0,bootindex=1
diff --git a/tests/qemuxml2argvdata/audio-none-full.err b/tests/qemuxml2argvdata/audio-none-full.err
new file mode 100644
index 0000000000..d9ceac7226
--- /dev/null
+++ b/tests/qemuxml2argvdata/audio-none-full.err
@@ -0,0 +1 @@
+unsupported configuration: setting audio buffer length is not supported with this QEMU
diff --git a/tests/qemuxml2argvdata/audio-none-full.x86_64-latest.args b/tests/qemuxml2argvdata/audio-none-full.x86_64-latest.args
new file mode 100644
index 0000000000..d303a161f8
--- /dev/null
+++ b/tests/qemuxml2argvdata/audio-none-full.x86_64-latest.args
@@ -0,0 +1,42 @@
+LC_ALL=C \
+PATH=/bin \
+HOME=/tmp/lib/domain--1-QEMUGuest1 \
+USER=test \
+LOGNAME=test \
+XDG_DATA_HOME=/tmp/lib/domain--1-QEMUGuest1/.local/share \
+XDG_CACHE_HOME=/tmp/lib/domain--1-QEMUGuest1/.cache \
+XDG_CONFIG_HOME=/tmp/lib/domain--1-QEMUGuest1/.config \
+/usr/bin/qemu-system-i386 \
+-name guest=QEMUGuest1,debug-threads=on \
+-S \
+-object secret,id=masterKey0,format=raw,\
+file=/tmp/lib/domain--1-QEMUGuest1/master-key.aes \
+-machine pc,accel=tcg,usb=off,dump-guest-core=off,memory-backend=pc.ram \
+-cpu qemu64 \
+-m 214 \
+-object memory-backend-ram,id=pc.ram,size=224395264 \
+-overcommit mem-lock=off \
+-smp 1,sockets=1,cores=1,threads=1 \
+-uuid c7a5fdbd-edaf-9455-926a-d65c16db1809 \
+-display none \
+-no-user-config \
+-nodefaults \
+-chardev socket,id=charmonitor,fd=1729,server=on,wait=off \
+-mon chardev=charmonitor,id=monitor,mode=control \
+-rtc base=utc \
+-no-shutdown \
+-no-acpi \
+-boot strict=on \
+-device piix3-usb-uhci,id=usb,bus=pci.0,addr=0x1.0x2 \
+-blockdev '{"driver":"host_cdrom","filename":"/dev/cdrom",\
+"node-name":"libvirt-1-storage","auto-read-only":true,"discard":"unmap"}' \
+-blockdev '{"node-name":"libvirt-1-format","read-only":true,"driver":"raw",\
+"file":"libvirt-1-storage"}' \
+-device ide-cd,bus=ide.1,unit=0,drive=libvirt-1-format,id=ide0-1-0,bootindex=1 \
+-audiodev id=audio1,driver=none,in.mixing-engine=on,in.fixed-settings=on,\
+in.voices=1,in.buffer-length=100,in.frequency=44100,in.channels=2,\
+in.format=s16,out.mixing-engine=on,out.fixed-settings=on,out.voices=2,\
+out.buffer-length=200,out.frequency=22050,out.channels=4,out.format=f32 \
+-sandbox on,obsolete=deny,elevateprivileges=deny,spawn=deny,\
+resourcecontrol=deny \
+-msg timestamp=on
diff --git a/tests/qemuxml2argvdata/audio-none-full.xml b/tests/qemuxml2argvdata/audio-none-full.xml
new file mode 100644
index 0000000000..f795a24be1
--- /dev/null
+++ b/tests/qemuxml2argvdata/audio-none-full.xml
@@ -0,0 +1,43 @@
+
+ QEMUGuest1
+ c7a5fdbd-edaf-9455-926a-d65c16db1809
+ 219100
+ 219100
+ 1
+
+ hvm
+
+
+
+ destroy
+ restart
+ destroy
+
+ /usr/bin/qemu-system-i386
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/tests/qemuxml2argvdata/audio-oss-best.args b/tests/qemuxml2argvdata/audio-oss-best.args
index e6a7bb4af8..054222992f 100644
--- a/tests/qemuxml2argvdata/audio-oss-best.args
+++ b/tests/qemuxml2argvdata/audio-oss-best.args
@@ -7,8 +7,16 @@ XDG_DATA_HOME=/tmp/lib/domain--1-QEMUGuest1/.local/share \
XDG_CACHE_HOME=/tmp/lib/domain--1-QEMUGuest1/.cache \
XDG_CONFIG_HOME=/tmp/lib/domain--1-QEMUGuest1/.config \
QEMU_AUDIO_DRV=oss \
-QEMU_OSS_ADC_DEV=/dev/dsp0 \
-QEMU_OSS_DAC_DEV=/dev/dsp1 \
+QEMU_AUDIO_ADC_FIXED_SETTINGS=on \
+QEMU_AUDIO_ADC_VOICES=1 \
+QEMU_AUDIO_ADC_FIXED_FREQ=44100 \
+QEMU_AUDIO_ADC_FIXED_CHANNELS=2 \
+QEMU_AUDIO_ADC_FIXED_FMT=s16 \
+QEMU_AUDIO_DAC_FIXED_SETTINGS=on \
+QEMU_AUDIO_DAC_VOICES=2 \
+QEMU_AUDIO_DAC_FIXED_FREQ=22050 \
+QEMU_AUDIO_DAC_FIXED_CHANNELS=4 \
+QEMU_AUDIO_DAC_FIXED_FMT=f32 \
/usr/bin/qemu-system-i386 \
-name QEMUGuest1 \
-S \
diff --git a/tests/qemuxml2argvdata/audio-oss-best.x86_64-latest.args b/tests/qemuxml2argvdata/audio-oss-best.x86_64-latest.args
index fe78b3a738..3cff02e1ba 100644
--- a/tests/qemuxml2argvdata/audio-oss-best.x86_64-latest.args
+++ b/tests/qemuxml2argvdata/audio-oss-best.x86_64-latest.args
@@ -33,7 +33,10 @@ file=/tmp/lib/domain--1-QEMUGuest1/master-key.aes \
-blockdev '{"node-name":"libvirt-1-format","read-only":true,"driver":"raw",\
"file":"libvirt-1-storage"}' \
-device ide-cd,bus=ide.1,unit=0,drive=libvirt-1-format,id=ide0-1-0,bootindex=1 \
--audiodev id=audio1,driver=oss,in.dev=/dev/dsp0,out.dev=/dev/dsp1 \
+-audiodev id=audio1,driver=oss,in.mixing-engine=on,in.fixed-settings=on,\
+in.voices=1,in.frequency=44100,in.channels=2,in.format=s16,\
+out.mixing-engine=on,out.fixed-settings=on,out.voices=2,out.frequency=22050,\
+out.channels=4,out.format=f32 \
-sandbox on,obsolete=deny,elevateprivileges=deny,spawn=deny,\
resourcecontrol=deny \
-msg timestamp=on
diff --git a/tests/qemuxml2argvdata/audio-oss-best.xml b/tests/qemuxml2argvdata/audio-oss-best.xml
index 0947bd6def..6904bcc93b 100644
--- a/tests/qemuxml2argvdata/audio-oss-best.xml
+++ b/tests/qemuxml2argvdata/audio-oss-best.xml
@@ -31,8 +31,12 @@
diff --git a/tests/qemuxml2argvdata/audio-oss-full.args b/tests/qemuxml2argvdata/audio-oss-full.args
new file mode 100644
index 0000000000..e6a7bb4af8
--- /dev/null
+++ b/tests/qemuxml2argvdata/audio-oss-full.args
@@ -0,0 +1,31 @@
+LC_ALL=C \
+PATH=/bin \
+HOME=/tmp/lib/domain--1-QEMUGuest1 \
+USER=test \
+LOGNAME=test \
+XDG_DATA_HOME=/tmp/lib/domain--1-QEMUGuest1/.local/share \
+XDG_CACHE_HOME=/tmp/lib/domain--1-QEMUGuest1/.cache \
+XDG_CONFIG_HOME=/tmp/lib/domain--1-QEMUGuest1/.config \
+QEMU_AUDIO_DRV=oss \
+QEMU_OSS_ADC_DEV=/dev/dsp0 \
+QEMU_OSS_DAC_DEV=/dev/dsp1 \
+/usr/bin/qemu-system-i386 \
+-name QEMUGuest1 \
+-S \
+-machine pc,accel=tcg,usb=off,dump-guest-core=off \
+-m 214 \
+-realtime mlock=off \
+-smp 1,sockets=1,cores=1,threads=1 \
+-uuid c7a5fdbd-edaf-9455-926a-d65c16db1809 \
+-display none \
+-no-user-config \
+-nodefaults \
+-chardev socket,id=charmonitor,path=/tmp/lib/domain--1-QEMUGuest1/monitor.sock,\
+server=on,wait=off \
+-mon chardev=charmonitor,id=monitor,mode=control \
+-rtc base=utc \
+-no-shutdown \
+-no-acpi \
+-usb \
+-drive file=/dev/cdrom,format=raw,if=none,id=drive-ide0-1-0,readonly=on \
+-device ide-cd,bus=ide.1,unit=0,drive=drive-ide0-1-0,id=ide0-1-0,bootindex=1
diff --git a/tests/qemuxml2argvdata/audio-oss-full.err b/tests/qemuxml2argvdata/audio-oss-full.err
new file mode 100644
index 0000000000..d9ceac7226
--- /dev/null
+++ b/tests/qemuxml2argvdata/audio-oss-full.err
@@ -0,0 +1 @@
+unsupported configuration: setting audio buffer length is not supported with this QEMU
diff --git a/tests/qemuxml2argvdata/audio-oss-full.x86_64-latest.args b/tests/qemuxml2argvdata/audio-oss-full.x86_64-latest.args
new file mode 100644
index 0000000000..cf9f5077d1
--- /dev/null
+++ b/tests/qemuxml2argvdata/audio-oss-full.x86_64-latest.args
@@ -0,0 +1,42 @@
+LC_ALL=C \
+PATH=/bin \
+HOME=/tmp/lib/domain--1-QEMUGuest1 \
+USER=test \
+LOGNAME=test \
+XDG_DATA_HOME=/tmp/lib/domain--1-QEMUGuest1/.local/share \
+XDG_CACHE_HOME=/tmp/lib/domain--1-QEMUGuest1/.cache \
+XDG_CONFIG_HOME=/tmp/lib/domain--1-QEMUGuest1/.config \
+/usr/bin/qemu-system-i386 \
+-name guest=QEMUGuest1,debug-threads=on \
+-S \
+-object secret,id=masterKey0,format=raw,\
+file=/tmp/lib/domain--1-QEMUGuest1/master-key.aes \
+-machine pc,accel=tcg,usb=off,dump-guest-core=off,memory-backend=pc.ram \
+-cpu qemu64 \
+-m 214 \
+-object memory-backend-ram,id=pc.ram,size=224395264 \
+-overcommit mem-lock=off \
+-smp 1,sockets=1,cores=1,threads=1 \
+-uuid c7a5fdbd-edaf-9455-926a-d65c16db1809 \
+-display none \
+-no-user-config \
+-nodefaults \
+-chardev socket,id=charmonitor,fd=1729,server=on,wait=off \
+-mon chardev=charmonitor,id=monitor,mode=control \
+-rtc base=utc \
+-no-shutdown \
+-no-acpi \
+-boot strict=on \
+-device piix3-usb-uhci,id=usb,bus=pci.0,addr=0x1.0x2 \
+-blockdev '{"driver":"host_cdrom","filename":"/dev/cdrom",\
+"node-name":"libvirt-1-storage","auto-read-only":true,"discard":"unmap"}' \
+-blockdev '{"node-name":"libvirt-1-format","read-only":true,"driver":"raw",\
+"file":"libvirt-1-storage"}' \
+-device ide-cd,bus=ide.1,unit=0,drive=libvirt-1-format,id=ide0-1-0,bootindex=1 \
+-audiodev id=audio1,driver=oss,in.mixing-engine=on,in.fixed-settings=on,\
+in.voices=1,in.buffer-length=100,in.frequency=44100,in.channels=2,\
+in.format=s16,out.mixing-engine=on,out.fixed-settings=on,out.voices=2,\
+out.buffer-length=200,out.frequency=22050,out.channels=4,out.format=f32 \
+-sandbox on,obsolete=deny,elevateprivileges=deny,spawn=deny,\
+resourcecontrol=deny \
+-msg timestamp=on
diff --git a/tests/qemuxml2argvdata/audio-oss-full.xml b/tests/qemuxml2argvdata/audio-oss-full.xml
new file mode 100644
index 0000000000..52d8810650
--- /dev/null
+++ b/tests/qemuxml2argvdata/audio-oss-full.xml
@@ -0,0 +1,43 @@
+
+ QEMUGuest1
+ c7a5fdbd-edaf-9455-926a-d65c16db1809
+ 219100
+ 219100
+ 1
+
+ hvm
+
+
+
+ destroy
+ restart
+ destroy
+
+ /usr/bin/qemu-system-i386
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/tests/qemuxml2argvdata/audio-pulseaudio-best.args b/tests/qemuxml2argvdata/audio-pulseaudio-best.args
new file mode 100644
index 0000000000..ad5718b242
--- /dev/null
+++ b/tests/qemuxml2argvdata/audio-pulseaudio-best.args
@@ -0,0 +1,39 @@
+LC_ALL=C \
+PATH=/bin \
+HOME=/tmp/lib/domain--1-QEMUGuest1 \
+USER=test \
+LOGNAME=test \
+XDG_DATA_HOME=/tmp/lib/domain--1-QEMUGuest1/.local/share \
+XDG_CACHE_HOME=/tmp/lib/domain--1-QEMUGuest1/.cache \
+XDG_CONFIG_HOME=/tmp/lib/domain--1-QEMUGuest1/.config \
+QEMU_AUDIO_DRV=pa \
+QEMU_AUDIO_ADC_FIXED_SETTINGS=on \
+QEMU_AUDIO_ADC_VOICES=1 \
+QEMU_AUDIO_ADC_FIXED_FREQ=44100 \
+QEMU_AUDIO_ADC_FIXED_CHANNELS=2 \
+QEMU_AUDIO_ADC_FIXED_FMT=s16 \
+QEMU_AUDIO_DAC_FIXED_SETTINGS=on \
+QEMU_AUDIO_DAC_VOICES=2 \
+QEMU_AUDIO_DAC_FIXED_FREQ=22050 \
+QEMU_AUDIO_DAC_FIXED_CHANNELS=4 \
+QEMU_AUDIO_DAC_FIXED_FMT=f32 \
+/usr/bin/qemu-system-i386 \
+-name QEMUGuest1 \
+-S \
+-machine pc,accel=tcg,usb=off,dump-guest-core=off \
+-m 214 \
+-realtime mlock=off \
+-smp 1,sockets=1,cores=1,threads=1 \
+-uuid c7a5fdbd-edaf-9455-926a-d65c16db1809 \
+-display none \
+-no-user-config \
+-nodefaults \
+-chardev socket,id=charmonitor,path=/tmp/lib/domain--1-QEMUGuest1/monitor.sock,\
+server=on,wait=off \
+-mon chardev=charmonitor,id=monitor,mode=control \
+-rtc base=utc \
+-no-shutdown \
+-no-acpi \
+-usb \
+-drive file=/dev/cdrom,format=raw,if=none,id=drive-ide0-1-0,readonly=on \
+-device ide-cd,bus=ide.1,unit=0,drive=drive-ide0-1-0,id=ide0-1-0,bootindex=1
diff --git a/tests/qemuxml2argvdata/audio-pulseaudio-best.x86_64-latest.args b/tests/qemuxml2argvdata/audio-pulseaudio-best.x86_64-latest.args
new file mode 100644
index 0000000000..f6ccde6d59
--- /dev/null
+++ b/tests/qemuxml2argvdata/audio-pulseaudio-best.x86_64-latest.args
@@ -0,0 +1,42 @@
+LC_ALL=C \
+PATH=/bin \
+HOME=/tmp/lib/domain--1-QEMUGuest1 \
+USER=test \
+LOGNAME=test \
+XDG_DATA_HOME=/tmp/lib/domain--1-QEMUGuest1/.local/share \
+XDG_CACHE_HOME=/tmp/lib/domain--1-QEMUGuest1/.cache \
+XDG_CONFIG_HOME=/tmp/lib/domain--1-QEMUGuest1/.config \
+/usr/bin/qemu-system-i386 \
+-name guest=QEMUGuest1,debug-threads=on \
+-S \
+-object secret,id=masterKey0,format=raw,\
+file=/tmp/lib/domain--1-QEMUGuest1/master-key.aes \
+-machine pc,accel=tcg,usb=off,dump-guest-core=off,memory-backend=pc.ram \
+-cpu qemu64 \
+-m 214 \
+-object memory-backend-ram,id=pc.ram,size=224395264 \
+-overcommit mem-lock=off \
+-smp 1,sockets=1,cores=1,threads=1 \
+-uuid c7a5fdbd-edaf-9455-926a-d65c16db1809 \
+-display none \
+-no-user-config \
+-nodefaults \
+-chardev socket,id=charmonitor,fd=1729,server=on,wait=off \
+-mon chardev=charmonitor,id=monitor,mode=control \
+-rtc base=utc \
+-no-shutdown \
+-no-acpi \
+-boot strict=on \
+-device piix3-usb-uhci,id=usb,bus=pci.0,addr=0x1.0x2 \
+-blockdev '{"driver":"host_cdrom","filename":"/dev/cdrom",\
+"node-name":"libvirt-1-storage","auto-read-only":true,"discard":"unmap"}' \
+-blockdev '{"node-name":"libvirt-1-format","read-only":true,"driver":"raw",\
+"file":"libvirt-1-storage"}' \
+-device ide-cd,bus=ide.1,unit=0,drive=libvirt-1-format,id=ide0-1-0,bootindex=1 \
+-audiodev id=audio1,driver=pa,in.mixing-engine=on,in.fixed-settings=on,\
+in.voices=1,in.frequency=44100,in.channels=2,in.format=s16,\
+out.mixing-engine=on,out.fixed-settings=on,out.voices=2,out.frequency=22050,\
+out.channels=4,out.format=f32 \
+-sandbox on,obsolete=deny,elevateprivileges=deny,spawn=deny,\
+resourcecontrol=deny \
+-msg timestamp=on
diff --git a/tests/qemuxml2argvdata/audio-pulseaudio-best.xml b/tests/qemuxml2argvdata/audio-pulseaudio-best.xml
new file mode 100644
index 0000000000..b75e336db3
--- /dev/null
+++ b/tests/qemuxml2argvdata/audio-pulseaudio-best.xml
@@ -0,0 +1,43 @@
+
+ QEMUGuest1
+ c7a5fdbd-edaf-9455-926a-d65c16db1809
+ 219100
+ 219100
+ 1
+
+ hvm
+
+
+
+ destroy
+ restart
+ destroy
+
+ /usr/bin/qemu-system-i386
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/tests/qemuxml2argvdata/audio-pulseaudio-full.args b/tests/qemuxml2argvdata/audio-pulseaudio-full.args
new file mode 100644
index 0000000000..af274e4328
--- /dev/null
+++ b/tests/qemuxml2argvdata/audio-pulseaudio-full.args
@@ -0,0 +1,29 @@
+LC_ALL=C \
+PATH=/bin \
+HOME=/tmp/lib/domain--1-QEMUGuest1 \
+USER=test \
+LOGNAME=test \
+XDG_DATA_HOME=/tmp/lib/domain--1-QEMUGuest1/.local/share \
+XDG_CACHE_HOME=/tmp/lib/domain--1-QEMUGuest1/.cache \
+XDG_CONFIG_HOME=/tmp/lib/domain--1-QEMUGuest1/.config \
+QEMU_AUDIO_DRV=pa \
+/usr/bin/qemu-system-i386 \
+-name QEMUGuest1 \
+-S \
+-machine pc,accel=tcg,usb=off,dump-guest-core=off \
+-m 214 \
+-realtime mlock=off \
+-smp 1,sockets=1,cores=1,threads=1 \
+-uuid c7a5fdbd-edaf-9455-926a-d65c16db1809 \
+-display none \
+-no-user-config \
+-nodefaults \
+-chardev socket,id=charmonitor,path=/tmp/lib/domain--1-QEMUGuest1/monitor.sock,\
+server=on,wait=off \
+-mon chardev=charmonitor,id=monitor,mode=control \
+-rtc base=utc \
+-no-shutdown \
+-no-acpi \
+-usb \
+-drive file=/dev/cdrom,format=raw,if=none,id=drive-ide0-1-0,readonly=on \
+-device ide-cd,bus=ide.1,unit=0,drive=drive-ide0-1-0,id=ide0-1-0,bootindex=1
diff --git a/tests/qemuxml2argvdata/audio-pulseaudio-full.err b/tests/qemuxml2argvdata/audio-pulseaudio-full.err
new file mode 100644
index 0000000000..d9ceac7226
--- /dev/null
+++ b/tests/qemuxml2argvdata/audio-pulseaudio-full.err
@@ -0,0 +1 @@
+unsupported configuration: setting audio buffer length is not supported with this QEMU
diff --git a/tests/qemuxml2argvdata/audio-pulseaudio-full.x86_64-latest.args b/tests/qemuxml2argvdata/audio-pulseaudio-full.x86_64-latest.args
new file mode 100644
index 0000000000..493945e608
--- /dev/null
+++ b/tests/qemuxml2argvdata/audio-pulseaudio-full.x86_64-latest.args
@@ -0,0 +1,42 @@
+LC_ALL=C \
+PATH=/bin \
+HOME=/tmp/lib/domain--1-QEMUGuest1 \
+USER=test \
+LOGNAME=test \
+XDG_DATA_HOME=/tmp/lib/domain--1-QEMUGuest1/.local/share \
+XDG_CACHE_HOME=/tmp/lib/domain--1-QEMUGuest1/.cache \
+XDG_CONFIG_HOME=/tmp/lib/domain--1-QEMUGuest1/.config \
+/usr/bin/qemu-system-i386 \
+-name guest=QEMUGuest1,debug-threads=on \
+-S \
+-object secret,id=masterKey0,format=raw,\
+file=/tmp/lib/domain--1-QEMUGuest1/master-key.aes \
+-machine pc,accel=tcg,usb=off,dump-guest-core=off,memory-backend=pc.ram \
+-cpu qemu64 \
+-m 214 \
+-object memory-backend-ram,id=pc.ram,size=224395264 \
+-overcommit mem-lock=off \
+-smp 1,sockets=1,cores=1,threads=1 \
+-uuid c7a5fdbd-edaf-9455-926a-d65c16db1809 \
+-display none \
+-no-user-config \
+-nodefaults \
+-chardev socket,id=charmonitor,fd=1729,server=on,wait=off \
+-mon chardev=charmonitor,id=monitor,mode=control \
+-rtc base=utc \
+-no-shutdown \
+-no-acpi \
+-boot strict=on \
+-device piix3-usb-uhci,id=usb,bus=pci.0,addr=0x1.0x2 \
+-blockdev '{"driver":"host_cdrom","filename":"/dev/cdrom",\
+"node-name":"libvirt-1-storage","auto-read-only":true,"discard":"unmap"}' \
+-blockdev '{"node-name":"libvirt-1-format","read-only":true,"driver":"raw",\
+"file":"libvirt-1-storage"}' \
+-device ide-cd,bus=ide.1,unit=0,drive=libvirt-1-format,id=ide0-1-0,bootindex=1 \
+-audiodev id=audio1,driver=pa,in.mixing-engine=on,in.fixed-settings=on,\
+in.voices=1,in.buffer-length=100,in.frequency=44100,in.channels=2,\
+in.format=s16,out.mixing-engine=on,out.fixed-settings=on,out.voices=2,\
+out.buffer-length=200,out.frequency=22050,out.channels=4,out.format=f32 \
+-sandbox on,obsolete=deny,elevateprivileges=deny,spawn=deny,\
+resourcecontrol=deny \
+-msg timestamp=on
diff --git a/tests/qemuxml2argvdata/audio-pulseaudio-full.xml b/tests/qemuxml2argvdata/audio-pulseaudio-full.xml
new file mode 100644
index 0000000000..87ceefbab0
--- /dev/null
+++ b/tests/qemuxml2argvdata/audio-pulseaudio-full.xml
@@ -0,0 +1,43 @@
+
+ QEMUGuest1
+ c7a5fdbd-edaf-9455-926a-d65c16db1809
+ 219100
+ 219100
+ 1
+
+ hvm
+
+
+
+ destroy
+ restart
+ destroy
+
+ /usr/bin/qemu-system-i386
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/tests/qemuxml2argvdata/audio-sdl-best.args b/tests/qemuxml2argvdata/audio-sdl-best.args
index 6aca7037a8..abdf655fe1 100644
--- a/tests/qemuxml2argvdata/audio-sdl-best.args
+++ b/tests/qemuxml2argvdata/audio-sdl-best.args
@@ -7,6 +7,16 @@ XDG_DATA_HOME=/tmp/lib/domain--1-QEMUGuest1/.local/share \
XDG_CACHE_HOME=/tmp/lib/domain--1-QEMUGuest1/.cache \
XDG_CONFIG_HOME=/tmp/lib/domain--1-QEMUGuest1/.config \
QEMU_AUDIO_DRV=sdl \
+QEMU_AUDIO_ADC_FIXED_SETTINGS=on \
+QEMU_AUDIO_ADC_VOICES=1 \
+QEMU_AUDIO_ADC_FIXED_FREQ=44100 \
+QEMU_AUDIO_ADC_FIXED_CHANNELS=2 \
+QEMU_AUDIO_ADC_FIXED_FMT=s16 \
+QEMU_AUDIO_DAC_FIXED_SETTINGS=on \
+QEMU_AUDIO_DAC_VOICES=2 \
+QEMU_AUDIO_DAC_FIXED_FREQ=22050 \
+QEMU_AUDIO_DAC_FIXED_CHANNELS=4 \
+QEMU_AUDIO_DAC_FIXED_FMT=f32 \
SDL_AUDIODRIVER=pulseaudio \
/usr/bin/qemu-system-i386 \
-name QEMUGuest1 \
diff --git a/tests/qemuxml2argvdata/audio-sdl-best.x86_64-latest.args b/tests/qemuxml2argvdata/audio-sdl-best.x86_64-latest.args
index 53b29b9843..d8893a7a4b 100644
--- a/tests/qemuxml2argvdata/audio-sdl-best.x86_64-latest.args
+++ b/tests/qemuxml2argvdata/audio-sdl-best.x86_64-latest.args
@@ -34,7 +34,10 @@ file=/tmp/lib/domain--1-QEMUGuest1/master-key.aes \
-blockdev '{"node-name":"libvirt-1-format","read-only":true,"driver":"raw",\
"file":"libvirt-1-storage"}' \
-device ide-cd,bus=ide.1,unit=0,drive=libvirt-1-format,id=ide0-1-0,bootindex=1 \
--audiodev id=audio1,driver=sdl \
+-audiodev id=audio1,driver=sdl,in.mixing-engine=on,in.fixed-settings=on,\
+in.voices=1,in.frequency=44100,in.channels=2,in.format=s16,\
+out.mixing-engine=on,out.fixed-settings=on,out.voices=2,out.frequency=22050,\
+out.channels=4,out.format=f32 \
-sandbox on,obsolete=deny,elevateprivileges=deny,spawn=deny,\
resourcecontrol=deny \
-msg timestamp=on
diff --git a/tests/qemuxml2argvdata/audio-sdl-best.xml b/tests/qemuxml2argvdata/audio-sdl-best.xml
index d6835a22bc..4e3f8a5c61 100644
--- a/tests/qemuxml2argvdata/audio-sdl-best.xml
+++ b/tests/qemuxml2argvdata/audio-sdl-best.xml
@@ -30,7 +30,14 @@
-
+
diff --git a/tests/qemuxml2argvdata/audio-sdl-full.args b/tests/qemuxml2argvdata/audio-sdl-full.args
new file mode 100644
index 0000000000..6aca7037a8
--- /dev/null
+++ b/tests/qemuxml2argvdata/audio-sdl-full.args
@@ -0,0 +1,30 @@
+LC_ALL=C \
+PATH=/bin \
+HOME=/tmp/lib/domain--1-QEMUGuest1 \
+USER=test \
+LOGNAME=test \
+XDG_DATA_HOME=/tmp/lib/domain--1-QEMUGuest1/.local/share \
+XDG_CACHE_HOME=/tmp/lib/domain--1-QEMUGuest1/.cache \
+XDG_CONFIG_HOME=/tmp/lib/domain--1-QEMUGuest1/.config \
+QEMU_AUDIO_DRV=sdl \
+SDL_AUDIODRIVER=pulseaudio \
+/usr/bin/qemu-system-i386 \
+-name QEMUGuest1 \
+-S \
+-machine pc,accel=tcg,usb=off,dump-guest-core=off \
+-m 214 \
+-realtime mlock=off \
+-smp 1,sockets=1,cores=1,threads=1 \
+-uuid c7a5fdbd-edaf-9455-926a-d65c16db1809 \
+-display none \
+-no-user-config \
+-nodefaults \
+-chardev socket,id=charmonitor,path=/tmp/lib/domain--1-QEMUGuest1/monitor.sock,\
+server=on,wait=off \
+-mon chardev=charmonitor,id=monitor,mode=control \
+-rtc base=utc \
+-no-shutdown \
+-no-acpi \
+-usb \
+-drive file=/dev/cdrom,format=raw,if=none,id=drive-ide0-1-0,readonly=on \
+-device ide-cd,bus=ide.1,unit=0,drive=drive-ide0-1-0,id=ide0-1-0,bootindex=1
diff --git a/tests/qemuxml2argvdata/audio-sdl-full.err b/tests/qemuxml2argvdata/audio-sdl-full.err
new file mode 100644
index 0000000000..d9ceac7226
--- /dev/null
+++ b/tests/qemuxml2argvdata/audio-sdl-full.err
@@ -0,0 +1 @@
+unsupported configuration: setting audio buffer length is not supported with this QEMU
diff --git a/tests/qemuxml2argvdata/audio-sdl-full.x86_64-latest.args b/tests/qemuxml2argvdata/audio-sdl-full.x86_64-latest.args
new file mode 100644
index 0000000000..722aa33fa4
--- /dev/null
+++ b/tests/qemuxml2argvdata/audio-sdl-full.x86_64-latest.args
@@ -0,0 +1,43 @@
+LC_ALL=C \
+PATH=/bin \
+HOME=/tmp/lib/domain--1-QEMUGuest1 \
+USER=test \
+LOGNAME=test \
+XDG_DATA_HOME=/tmp/lib/domain--1-QEMUGuest1/.local/share \
+XDG_CACHE_HOME=/tmp/lib/domain--1-QEMUGuest1/.cache \
+XDG_CONFIG_HOME=/tmp/lib/domain--1-QEMUGuest1/.config \
+SDL_AUDIODRIVER=pulseaudio \
+/usr/bin/qemu-system-i386 \
+-name guest=QEMUGuest1,debug-threads=on \
+-S \
+-object secret,id=masterKey0,format=raw,\
+file=/tmp/lib/domain--1-QEMUGuest1/master-key.aes \
+-machine pc,accel=tcg,usb=off,dump-guest-core=off,memory-backend=pc.ram \
+-cpu qemu64 \
+-m 214 \
+-object memory-backend-ram,id=pc.ram,size=224395264 \
+-overcommit mem-lock=off \
+-smp 1,sockets=1,cores=1,threads=1 \
+-uuid c7a5fdbd-edaf-9455-926a-d65c16db1809 \
+-display none \
+-no-user-config \
+-nodefaults \
+-chardev socket,id=charmonitor,fd=1729,server=on,wait=off \
+-mon chardev=charmonitor,id=monitor,mode=control \
+-rtc base=utc \
+-no-shutdown \
+-no-acpi \
+-boot strict=on \
+-device piix3-usb-uhci,id=usb,bus=pci.0,addr=0x1.0x2 \
+-blockdev '{"driver":"host_cdrom","filename":"/dev/cdrom",\
+"node-name":"libvirt-1-storage","auto-read-only":true,"discard":"unmap"}' \
+-blockdev '{"node-name":"libvirt-1-format","read-only":true,"driver":"raw",\
+"file":"libvirt-1-storage"}' \
+-device ide-cd,bus=ide.1,unit=0,drive=libvirt-1-format,id=ide0-1-0,bootindex=1 \
+-audiodev id=audio1,driver=sdl,in.mixing-engine=on,in.fixed-settings=on,\
+in.voices=1,in.buffer-length=100,in.frequency=44100,in.channels=2,\
+in.format=s16,out.mixing-engine=on,out.fixed-settings=on,out.voices=2,\
+out.buffer-length=200,out.frequency=22050,out.channels=4,out.format=f32 \
+-sandbox on,obsolete=deny,elevateprivileges=deny,spawn=deny,\
+resourcecontrol=deny \
+-msg timestamp=on
diff --git a/tests/qemuxml2argvdata/audio-sdl-full.xml b/tests/qemuxml2argvdata/audio-sdl-full.xml
new file mode 100644
index 0000000000..519cda12e3
--- /dev/null
+++ b/tests/qemuxml2argvdata/audio-sdl-full.xml
@@ -0,0 +1,43 @@
+
+ QEMUGuest1
+ c7a5fdbd-edaf-9455-926a-d65c16db1809
+ 219100
+ 219100
+ 1
+
+ hvm
+
+
+
+ destroy
+ restart
+ destroy
+
+ /usr/bin/qemu-system-i386
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/tests/qemuxml2argvdata/audio-spice-best.args b/tests/qemuxml2argvdata/audio-spice-best.args
new file mode 100644
index 0000000000..6e2ffc9e1e
--- /dev/null
+++ b/tests/qemuxml2argvdata/audio-spice-best.args
@@ -0,0 +1,39 @@
+LC_ALL=C \
+PATH=/bin \
+HOME=/tmp/lib/domain--1-QEMUGuest1 \
+USER=test \
+LOGNAME=test \
+XDG_DATA_HOME=/tmp/lib/domain--1-QEMUGuest1/.local/share \
+XDG_CACHE_HOME=/tmp/lib/domain--1-QEMUGuest1/.cache \
+XDG_CONFIG_HOME=/tmp/lib/domain--1-QEMUGuest1/.config \
+QEMU_AUDIO_DRV=spice \
+QEMU_AUDIO_ADC_FIXED_SETTINGS=on \
+QEMU_AUDIO_ADC_VOICES=1 \
+QEMU_AUDIO_ADC_FIXED_FREQ=44100 \
+QEMU_AUDIO_ADC_FIXED_CHANNELS=2 \
+QEMU_AUDIO_ADC_FIXED_FMT=s16 \
+QEMU_AUDIO_DAC_FIXED_SETTINGS=on \
+QEMU_AUDIO_DAC_VOICES=2 \
+QEMU_AUDIO_DAC_FIXED_FREQ=22050 \
+QEMU_AUDIO_DAC_FIXED_CHANNELS=4 \
+QEMU_AUDIO_DAC_FIXED_FMT=f32 \
+/usr/bin/qemu-system-i386 \
+-name QEMUGuest1 \
+-S \
+-machine pc,accel=tcg,usb=off,dump-guest-core=off \
+-m 214 \
+-realtime mlock=off \
+-smp 1,sockets=1,cores=1,threads=1 \
+-uuid c7a5fdbd-edaf-9455-926a-d65c16db1809 \
+-display none \
+-no-user-config \
+-nodefaults \
+-chardev socket,id=charmonitor,path=/tmp/lib/domain--1-QEMUGuest1/monitor.sock,\
+server=on,wait=off \
+-mon chardev=charmonitor,id=monitor,mode=control \
+-rtc base=utc \
+-no-shutdown \
+-no-acpi \
+-usb \
+-drive file=/dev/cdrom,format=raw,if=none,id=drive-ide0-1-0,readonly=on \
+-device ide-cd,bus=ide.1,unit=0,drive=drive-ide0-1-0,id=ide0-1-0,bootindex=1
diff --git a/tests/qemuxml2argvdata/audio-spice-best.x86_64-latest.args b/tests/qemuxml2argvdata/audio-spice-best.x86_64-latest.args
new file mode 100644
index 0000000000..b23ff38f23
--- /dev/null
+++ b/tests/qemuxml2argvdata/audio-spice-best.x86_64-latest.args
@@ -0,0 +1,42 @@
+LC_ALL=C \
+PATH=/bin \
+HOME=/tmp/lib/domain--1-QEMUGuest1 \
+USER=test \
+LOGNAME=test \
+XDG_DATA_HOME=/tmp/lib/domain--1-QEMUGuest1/.local/share \
+XDG_CACHE_HOME=/tmp/lib/domain--1-QEMUGuest1/.cache \
+XDG_CONFIG_HOME=/tmp/lib/domain--1-QEMUGuest1/.config \
+/usr/bin/qemu-system-i386 \
+-name guest=QEMUGuest1,debug-threads=on \
+-S \
+-object secret,id=masterKey0,format=raw,\
+file=/tmp/lib/domain--1-QEMUGuest1/master-key.aes \
+-machine pc,accel=tcg,usb=off,dump-guest-core=off,memory-backend=pc.ram \
+-cpu qemu64 \
+-m 214 \
+-object memory-backend-ram,id=pc.ram,size=224395264 \
+-overcommit mem-lock=off \
+-smp 1,sockets=1,cores=1,threads=1 \
+-uuid c7a5fdbd-edaf-9455-926a-d65c16db1809 \
+-display none \
+-no-user-config \
+-nodefaults \
+-chardev socket,id=charmonitor,fd=1729,server=on,wait=off \
+-mon chardev=charmonitor,id=monitor,mode=control \
+-rtc base=utc \
+-no-shutdown \
+-no-acpi \
+-boot strict=on \
+-device piix3-usb-uhci,id=usb,bus=pci.0,addr=0x1.0x2 \
+-blockdev '{"driver":"host_cdrom","filename":"/dev/cdrom",\
+"node-name":"libvirt-1-storage","auto-read-only":true,"discard":"unmap"}' \
+-blockdev '{"node-name":"libvirt-1-format","read-only":true,"driver":"raw",\
+"file":"libvirt-1-storage"}' \
+-device ide-cd,bus=ide.1,unit=0,drive=libvirt-1-format,id=ide0-1-0,bootindex=1 \
+-audiodev id=audio1,driver=spice,in.mixing-engine=on,in.fixed-settings=on,\
+in.voices=1,in.frequency=44100,in.channels=2,in.format=s16,\
+out.mixing-engine=on,out.fixed-settings=on,out.voices=2,out.frequency=22050,\
+out.channels=4,out.format=f32 \
+-sandbox on,obsolete=deny,elevateprivileges=deny,spawn=deny,\
+resourcecontrol=deny \
+-msg timestamp=on
diff --git a/tests/qemuxml2argvdata/audio-spice-best.xml b/tests/qemuxml2argvdata/audio-spice-best.xml
new file mode 100644
index 0000000000..a53586032a
--- /dev/null
+++ b/tests/qemuxml2argvdata/audio-spice-best.xml
@@ -0,0 +1,43 @@
+
+ QEMUGuest1
+ c7a5fdbd-edaf-9455-926a-d65c16db1809
+ 219100
+ 219100
+ 1
+
+ hvm
+
+
+
+ destroy
+ restart
+ destroy
+
+ /usr/bin/qemu-system-i386
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/tests/qemuxml2argvdata/audio-spice-full.args b/tests/qemuxml2argvdata/audio-spice-full.args
new file mode 100644
index 0000000000..a7a85959d6
--- /dev/null
+++ b/tests/qemuxml2argvdata/audio-spice-full.args
@@ -0,0 +1,29 @@
+LC_ALL=C \
+PATH=/bin \
+HOME=/tmp/lib/domain--1-QEMUGuest1 \
+USER=test \
+LOGNAME=test \
+XDG_DATA_HOME=/tmp/lib/domain--1-QEMUGuest1/.local/share \
+XDG_CACHE_HOME=/tmp/lib/domain--1-QEMUGuest1/.cache \
+XDG_CONFIG_HOME=/tmp/lib/domain--1-QEMUGuest1/.config \
+QEMU_AUDIO_DRV=spice \
+/usr/bin/qemu-system-i386 \
+-name QEMUGuest1 \
+-S \
+-machine pc,accel=tcg,usb=off,dump-guest-core=off \
+-m 214 \
+-realtime mlock=off \
+-smp 1,sockets=1,cores=1,threads=1 \
+-uuid c7a5fdbd-edaf-9455-926a-d65c16db1809 \
+-display none \
+-no-user-config \
+-nodefaults \
+-chardev socket,id=charmonitor,path=/tmp/lib/domain--1-QEMUGuest1/monitor.sock,\
+server=on,wait=off \
+-mon chardev=charmonitor,id=monitor,mode=control \
+-rtc base=utc \
+-no-shutdown \
+-no-acpi \
+-usb \
+-drive file=/dev/cdrom,format=raw,if=none,id=drive-ide0-1-0,readonly=on \
+-device ide-cd,bus=ide.1,unit=0,drive=drive-ide0-1-0,id=ide0-1-0,bootindex=1
diff --git a/tests/qemuxml2argvdata/audio-spice-full.err b/tests/qemuxml2argvdata/audio-spice-full.err
new file mode 100644
index 0000000000..d9ceac7226
--- /dev/null
+++ b/tests/qemuxml2argvdata/audio-spice-full.err
@@ -0,0 +1 @@
+unsupported configuration: setting audio buffer length is not supported with this QEMU
diff --git a/tests/qemuxml2argvdata/audio-spice-full.x86_64-latest.args b/tests/qemuxml2argvdata/audio-spice-full.x86_64-latest.args
new file mode 100644
index 0000000000..4419ad2cdb
--- /dev/null
+++ b/tests/qemuxml2argvdata/audio-spice-full.x86_64-latest.args
@@ -0,0 +1,42 @@
+LC_ALL=C \
+PATH=/bin \
+HOME=/tmp/lib/domain--1-QEMUGuest1 \
+USER=test \
+LOGNAME=test \
+XDG_DATA_HOME=/tmp/lib/domain--1-QEMUGuest1/.local/share \
+XDG_CACHE_HOME=/tmp/lib/domain--1-QEMUGuest1/.cache \
+XDG_CONFIG_HOME=/tmp/lib/domain--1-QEMUGuest1/.config \
+/usr/bin/qemu-system-i386 \
+-name guest=QEMUGuest1,debug-threads=on \
+-S \
+-object secret,id=masterKey0,format=raw,\
+file=/tmp/lib/domain--1-QEMUGuest1/master-key.aes \
+-machine pc,accel=tcg,usb=off,dump-guest-core=off,memory-backend=pc.ram \
+-cpu qemu64 \
+-m 214 \
+-object memory-backend-ram,id=pc.ram,size=224395264 \
+-overcommit mem-lock=off \
+-smp 1,sockets=1,cores=1,threads=1 \
+-uuid c7a5fdbd-edaf-9455-926a-d65c16db1809 \
+-display none \
+-no-user-config \
+-nodefaults \
+-chardev socket,id=charmonitor,fd=1729,server=on,wait=off \
+-mon chardev=charmonitor,id=monitor,mode=control \
+-rtc base=utc \
+-no-shutdown \
+-no-acpi \
+-boot strict=on \
+-device piix3-usb-uhci,id=usb,bus=pci.0,addr=0x1.0x2 \
+-blockdev '{"driver":"host_cdrom","filename":"/dev/cdrom",\
+"node-name":"libvirt-1-storage","auto-read-only":true,"discard":"unmap"}' \
+-blockdev '{"node-name":"libvirt-1-format","read-only":true,"driver":"raw",\
+"file":"libvirt-1-storage"}' \
+-device ide-cd,bus=ide.1,unit=0,drive=libvirt-1-format,id=ide0-1-0,bootindex=1 \
+-audiodev id=audio1,driver=spice,in.mixing-engine=on,in.fixed-settings=on,\
+in.voices=1,in.buffer-length=100,in.frequency=44100,in.channels=2,\
+in.format=s16,out.mixing-engine=on,out.fixed-settings=on,out.voices=2,\
+out.buffer-length=200,out.frequency=22050,out.channels=4,out.format=f32 \
+-sandbox on,obsolete=deny,elevateprivileges=deny,spawn=deny,\
+resourcecontrol=deny \
+-msg timestamp=on
diff --git a/tests/qemuxml2argvdata/audio-spice-full.xml b/tests/qemuxml2argvdata/audio-spice-full.xml
new file mode 100644
index 0000000000..3ef3e431ac
--- /dev/null
+++ b/tests/qemuxml2argvdata/audio-spice-full.xml
@@ -0,0 +1,43 @@
+
+ QEMUGuest1
+ c7a5fdbd-edaf-9455-926a-d65c16db1809
+ 219100
+ 219100
+ 1
+
+ hvm
+
+
+
+ destroy
+ restart
+ destroy
+
+ /usr/bin/qemu-system-i386
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/tests/qemuxml2argvtest.c b/tests/qemuxml2argvtest.c
index 468c69e55f..29054ba168 100644
--- a/tests/qemuxml2argvtest.c
+++ b/tests/qemuxml2argvtest.c
@@ -1065,11 +1065,44 @@ mymain(void)
DO_TEST_CAPS_LATEST("audio-file-minimal");
/* Best