Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add Virtio sound as a guest sound device option (requires QEMU 8.2.0) #6404

Closed
volkert-fastned opened this issue Jun 3, 2024 · 4 comments
Closed
Labels
enhancement New feature or request qemu QEMU related
Milestone

Comments

@volkert-fastned
Copy link

QEMU 8.2.0 added support for Virtio sound (a.k.a. virtio-snd), a paravirtualized sound device.

With UTM already supporting Virtio for graphics, storage, networking, and memory ballooning, sound support is the only remaining missing thing from the "Virtio suite" that is preventing us from running Linux guests with completely paravirtualized I/O, without the need for hardware emulation (well, except for maybe keyboard and mouse support).

QEMU only recently added host support for the Virtio sound device, namely in version 8.2.0.

It would be nice if UTM could be upgraded to use (at least) this QEMU version and add Virtio sound as a guest sound option. This would potentialy eliminate emulation overhead and lead to smoother audio recording, playback, as well as future-proofing and increased compatibility with QEMU VM images imported from other host systems.

I already performed a search in existing GitHub issues for Virtio sound, and the only thing that came up was this discussion that mentioned the kernel config option CONFIG_SND_VIRTIO, and I believe that the participants of that discussion may not have been aware of the fact that QEMU and UTM did not yet support Virtio sound on the host-side. It did provide a link that implies that Apple's Hypervisor.framework apparently already does have host support for Virtio sound.

@volkert-fastned volkert-fastned added the enhancement New feature or request label Jun 3, 2024
@ideologysec
Copy link

ideologysec commented Jun 11, 2024

I believe that QEMU was held back from upgrading due to some issues with display in Windows guests in versions of QEMU >= v8. I am unclear if that was ever resolved, or if there is a plan to upgrade the internal version of QEMU at some point.

However, there is a slightly different issue here as well, which is that UTM uses two different backends, QEMU and Apple Virtualization. Which are you trying to use?

@volkert-fastned
Copy link
Author

I'm using the QEMU backend, since the Apple Hypervisor.framework backend was mentioned as being experimental.

QEMU only gained support for Virtio sound in version 8.2.0, whereas Apple's hypervisor/virtualization framework apparently already supports it.

Thanks for mentioning the reason why UTM is still stuck at QEMU 7.2.0. I found the issue and I'm linking it here for reference: #5516

@osy osy added the qemu QEMU related label Aug 20, 2024
@keldonin
Copy link

+1

QEMU is currently at version 9.1.0. It would be great to consider an upgrade.

@osy osy added this to the v4.6 milestone Oct 1, 2024
@osy
Copy link
Contributor

osy commented Oct 4, 2024

Completed in 241ab25

@osy osy closed this as completed Oct 4, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request qemu QEMU related
Projects
None yet
Development

No branches or pull requests

4 participants