* [Qemu-devel] What is the status of the QEMU sound rework?
@ 2017-10-07 2:58 Zir Blazer
2017-10-09 5:49 ` Markus Armbruster
0 siblings, 1 reply; 5+ messages in thread
From: Zir Blazer @ 2017-10-07 2:58 UTC (permalink / raw)
To: qemu-devel@nongnu.org
I'm a VGA Passthrough user that uses a QEMU VM to fully replace a Windows native install as the main OS.
Currently, one of the biggest hazzles for many users is that sound is hard to get working properly with the emulated AC'97 and Intel HDA Sound Cards due to crackle or latency issues (Latency issues heavily affects recording scenarios, like voice chat applications in a VM). An example here, through there are far more: https://www.reddit.com/r/VFIO/comments/746t4h/getting_rid_of_audio_crackling_once_and_for_all/
Some people managed to get sound working at acceptable levels by meddling with the environmental variables, but most of the solutions come from a trial-and-error esoteric procedure instead of structured troubleshooting, as each user has to figure out which settings makes the emulated Sound Cards work decently in his system. For those that failed getting the desired results with emulation, they have to throw Hardware at the issue by using PCI Passthrough of a Sound Card, or an USB Sound Card via USB Passthrough (Or even have it plugged to an USB Controller passed to the VM via PCI Passthrough), or using the passthroughed Video Card HDMI with a Monitor with speakers, just to solve the sound issues. The problem is that this complicates this type of setups a lot, and it makes impossible a typical use case that would be that all the VMs output the sound to the host, which has control of the Motherboard integrated Sound Card, and it mixes it to use a single set of speakers for the entire system.
I have been googling around and found that at several times, there were ideas and proposal, and even some code, that were intended to overhaul QEMU sound system. Examples includes:
GSoC 2011 Xen PV Audio, a paravirtualized Sound Card https://wiki.xenproject.org/wiki/Archived/GSoc_2011_Ideas
GSoC 2015 QEMU rework of the sound environmental variables https://wiki.qemu.org/Google_Summer_of_Code_2015#QEMU_audio_backend
GSoC 2017 QEMU rework a patch series that did precisely that https://wiki.qemu.org/Google_Summer_of_Code_2017#QEMU_audio_backend
https://lists.nongnu.org/archive/html/qemu-devel/2016-01/msg02451.html
Basically, what happened with all the previous ideas and proposals? Did any of that work ever get into upstream QEMU?
Is anyone tinkering with the idea of making a paravirtualized Sound Card and its associated Drivers for the mainstream OSes to try to fix once and for all the sound issues?
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [Qemu-devel] What is the status of the QEMU sound rework?
2017-10-07 2:58 [Qemu-devel] What is the status of the QEMU sound rework? Zir Blazer
@ 2017-10-09 5:49 ` Markus Armbruster
2017-10-09 7:33 ` Gerd Hoffmann
0 siblings, 1 reply; 5+ messages in thread
From: Markus Armbruster @ 2017-10-09 5:49 UTC (permalink / raw)
To: Zir Blazer; +Cc: qemu-devel@nongnu.org, Gerd Hoffmann
Copying Gerd...
Zir Blazer <zir_blazer@hotmail.com> writes:
> I'm a VGA Passthrough user that uses a QEMU VM to fully replace a Windows native install as the main OS.
>
>
> Currently, one of the biggest hazzles for many users is that sound is hard to get working properly with the emulated AC'97 and Intel HDA Sound Cards due to crackle or latency issues (Latency issues heavily affects recording scenarios, like voice chat applications in a VM). An example here, through there are far more: https://www.reddit.com/r/VFIO/comments/746t4h/getting_rid_of_audio_crackling_once_and_for_all/
>
>
> Some people managed to get sound working at acceptable levels by meddling with the environmental variables, but most of the solutions come from a trial-and-error esoteric procedure instead of structured troubleshooting, as each user has to figure out which settings makes the emulated Sound Cards work decently in his system. For those that failed getting the desired results with emulation, they have to throw Hardware at the issue by using PCI Passthrough of a Sound Card, or an USB Sound Card via USB Passthrough (Or even have it plugged to an USB Controller passed to the VM via PCI Passthrough), or using the passthroughed Video Card HDMI with a Monitor with speakers, just to solve the sound issues. The problem is that this complicates this type of setups a lot, and it makes impossible a typical use case that would be that all the VMs output the sound to the host, which has control of the Motherboard integrated Sound Card, and it mixes it to use a single set of speakers for the entire system.
>
>
>
> I have been googling around and found that at several times, there were ideas and proposal, and even some code, that were intended to overhaul QEMU sound system. Examples includes:
>
> GSoC 2011 Xen PV Audio, a paravirtualized Sound Card https://wiki.xenproject.org/wiki/Archived/GSoc_2011_Ideas
> GSoC 2015 QEMU rework of the sound environmental variables https://wiki.qemu.org/Google_Summer_of_Code_2015#QEMU_audio_backend
> GSoC 2017 QEMU rework a patch series that did precisely that https://wiki.qemu.org/Google_Summer_of_Code_2017#QEMU_audio_backend
> https://lists.nongnu.org/archive/html/qemu-devel/2016-01/msg02451.html
>
>
>
> Basically, what happened with all the previous ideas and proposals? Did any of that work ever get into upstream QEMU?
> Is anyone tinkering with the idea of making a paravirtualized Sound Card and its associated Drivers for the mainstream OSes to try to fix once and for all the sound issues?
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [Qemu-devel] What is the status of the QEMU sound rework?
2017-10-09 5:49 ` Markus Armbruster
@ 2017-10-09 7:33 ` Gerd Hoffmann
2017-10-09 8:25 ` Zir Blazer
0 siblings, 1 reply; 5+ messages in thread
From: Gerd Hoffmann @ 2017-10-09 7:33 UTC (permalink / raw)
To: Markus Armbruster, Zir Blazer; +Cc: qemu-devel@nongnu.org
Hi,
> > GSoC 2015 QEMU rework of the sound environmental variables
> > https://wiki.qemu.org/Google_Summer_of_Code_2015#QEMU_audio_backend
Code is here:
https://www.kraxel.org/cgit/qemu/log/?h=testing/audio.gsoc
Merge was blocked back then due to depending on a QAPI updates. Those
QAPI updates are merged meanwhile, even though it took quite a while
(merged late 2016 IIRC).
So, this series basically needs a rebase. I suspect that is a multi-
week project minimum. May well expand to be multiple months. Which
leads us to ...
> > GSoC 2017 QEMU rework a patch series that did precisely that
> > https://wiki.qemu.org/Google_Summer_of_Code_2017#QEMU_audio_backend
... this one. But no student was interested in this project.
Fundamental issue is that right now there is not really someone paying
attention to audio in qemu.
I'm currently the maintainer, but due to also being busy with other
stuff I hardly find time to do anything beyond picking up fixes from
the mailing list, maybe do some basic testing (depending on the kind of
patches) and do a audio pull request now and then.
> > Is anyone tinkering with the idea of making a paravirtualized Sound
> > Card and its associated Drivers for the mainstream OSes to try to
> > fix once and for all the sound issues?
I suspect the problems are more in the qemu audio backends. The issues
seem to be different depending on which backend you use. So creating a
paravirtual sound card may not be the solution for that problem ...
cheers,
Gerd
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [Qemu-devel] What is the status of the QEMU sound rework?
2017-10-09 7:33 ` Gerd Hoffmann
@ 2017-10-09 8:25 ` Zir Blazer
2017-10-09 9:37 ` Gerd Hoffmann
0 siblings, 1 reply; 5+ messages in thread
From: Zir Blazer @ 2017-10-09 8:25 UTC (permalink / raw)
To: Gerd Hoffmann, Markus Armbruster; +Cc: qemu-devel@nongnu.org
> > Fundamental issue is that right now there is not really someone paying
> > attention to audio in qemu.
> >
> > I'm currently the maintainer, but due to also being busy with other
> > stuff I hardly find time to do anything beyond picking up fixes from
> > the mailing list, maybe do some basic testing (depending on the kind of
> > patches) and do a audio pull request now and then.
> >
> >
> >
> > I suspect the problems are more in the qemu audio backends. The issues
> > seem to be different depending on which backend you use. So creating a
> > paravirtual sound card may not be the solution for that problem ...
Thanks for your reply.
The guy from reddit whose Thread I linked in the previous mail has done a bit more work, and his current status is this:
https://www.reddit.com/r/VFIO/comments/74vokw/improved_pulse_audio_driver_for_qemu/
He identified some issues with the QEMU audio backend, and according to the testers, his fixes seems to be working.
As it is probable that he eventually upstreams something, you may want to be interesed in checking his work. I know that you just said that you don't have time, but since audio improvements for QEMU seems to have been stuck for some years, it may be important to be proactive now that there is people interesed and working in the issue, as to not lose this rare momentum.
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [Qemu-devel] What is the status of the QEMU sound rework?
2017-10-09 8:25 ` Zir Blazer
@ 2017-10-09 9:37 ` Gerd Hoffmann
0 siblings, 0 replies; 5+ messages in thread
From: Gerd Hoffmann @ 2017-10-09 9:37 UTC (permalink / raw)
To: Zir Blazer, Markus Armbruster; +Cc: qemu-devel@nongnu.org
Hi,
> The guy from reddit whose Thread I linked in the previous mail has
> done a bit more work, and his current status is this:
> https://www.reddit.com/r/VFIO/comments/74vokw/improved_pulse_audio_dr
> iver_for_qemu/
>
> He identified some issues with the QEMU audio backend, and according
> to the testers, his fixes seems to be working.
>
> As it is probable that he eventually upstreams something, you may
> want to be interesed in checking his work.
He asked me a few questions already and has the intention to send his
work upstream.
> I know that you just said that you don't have time, but since audio
> improvements for QEMU seems to have been stuck for some years, it may
> be important to be proactive now that there is people interesed
> and working in the issue, as to not lose this rare momentum.
Sure. Typically I try hard to set aside time for helping people, this
often pays off long-term.
cheers,
Gerd
^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2017-10-09 9:37 UTC | newest]
Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2017-10-07 2:58 [Qemu-devel] What is the status of the QEMU sound rework? Zir Blazer
2017-10-09 5:49 ` Markus Armbruster
2017-10-09 7:33 ` Gerd Hoffmann
2017-10-09 8:25 ` Zir Blazer
2017-10-09 9:37 ` Gerd Hoffmann
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).