qemu git && 4.2: timed audio issues with sb16, gus not working?

Bug #1858488 reported by David Miller
8
This bug affects 1 person
Affects Status Importance Assigned to Milestone
QEMU
Fix Released
Undecided
Unassigned

Bug Description

I have built [both] current git, and 4.2.0, there are issues with audio/soundhw for both.

Specifics:

Linux nullrig 5.3.0-24-generic #26-Ubuntu SMP Thu Nov 14 01:33:18 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux

Out of source build, successful for both:

../configure --prefix=/opt/qemu --target-list=i386-softmmu,mips64el-softmmu ---enable-sdl --enable-sdl-image --enable-lzo --enable-bzip2 --enable-avx2 --enable-kvm --enable-membarrier --enable-plugin

Call:

./qemu -machine pc,accel=kvm,usb=off -cpu pentium -m 64 -rtc base=localtime -parallel none -soundhw sb16,adlib,pcspk -device cirrus-vga,bus=pci.0 -drive id=disk1,file=doom.cow,format=qcow2,if=virtio -audiodev pa,id=pa

Audio for sb16 sounds ok, however if i switch to a timer based audio: -audiodev wav

The output is wrong.. I had assumed it was all timer based audio, however it seems to be limited to sb16.

So I then tried the next popular/compatible audio device for dos games: gravis ultrasound [gus].

I get no output at all for it.
I have tried more than one piece of software, DOOM shareware is any easy example.

I realize there are better solutions for playing DOS games, however I am interested in snapshot support which many of them lack.

I am willing to put the work into fixing it myself if need be, however i'm not very familiar with the audio backend. Specifically, it is already mixed into a single buffer, if 'adlib' driver is already working: (audio_pcm_ops.write() output is correct on timer based output) I failed to see how it affects emulation of the sound blaster.

Revision history for this message
David Miller (zezuspam) wrote :

./qemu is a symlink to qemu/build/i386-softmmu/qemu-system-i386

Revision history for this message
David Miller (zezuspam) wrote :

It seems this might be related to buffer/sample size, spice works and uses timed audio with a larger buffer.
GUS I have not gotten to work.

Revision history for this message
Laurent Vivier (laurent-vivier) wrote :
Changed in qemu:
status: New → Fix Committed
Changed in qemu:
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.