SOLVED: RE: Garbled audio - Windows 7 64 bit guest on Debian

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



> -----Original Message-----
> From: kvm-owner@xxxxxxxxxxxxxxx [mailto:kvm-owner@xxxxxxxxxxxxxxx] On Behalf Of Jimmy Crossley
> Sent: Friday, June 08, 2012 17:29
> To: kvm@xxxxxxxxxxxxxxx
> Subject: Garbled audio - Windows 7 64 bit guest on Debian
> 
> I am experiencing garbled sound on a Windows 7 64 bit guest running under 64 bit Debian.  I have
> searched many discussion groups, etc. on the net and could find nothing useful, so I thought I would
> post this here, hoping someone with a deeper understanding could help out.
> 
> I am running 64 bit Debian GNU/Linux "testing" on a Lenovo Thinkpad T420s, 8GB RAM, Crucial m4 512GB
> disk.  Using ALSA, the sound works perfectly when playing all kinds of files.  I am running
> everything from the standard Debian repositories.  This is using kernel version 3.0.0-1.  kvm --
> version says:
> 
>   QEMU emulator version 1.0 (qemu-kvm-1.0+dfsg-11, Debian), Copyright (c) 2003-2008 Fabrice Bellard
> 
> I am running Windows 7 Enterprise service pack 1 as a virtual machine.  The machine is started with
> the following command:
> 
>   /usr/bin/kvm \
>   -M pc \
>   -m 2048 \
>   -drive file="csilt033-6.qcow",if=virtio \
>   -soundhw hda \
>   -display sdl &
> 
> I believe I must use "-soundhw hda" because that is the only sound device that kvm emulates which
> has Windows 7 64 bit drivers.  Windows 7 automatically detects a "High Definition Audio Device" and
> uses the driver HDAudio.sys.  But the sounds it makes sound like they are very highly compressed, or
> a lot of bits are being lost or something.  Any application used to play sound has the same problem.
> Speech is barely recognizable.  Using the built in speakers or external speakers through the audio
> jack give the same result.
> 
> I have tried several QEMU_AUDIO* settings, but it seems like these make no difference.
> 
> If I connect to the machine using remote desktop (mstsc.exe, rdesktop, xfreerdp), the sound gets
> redirected to the local machine and sounds perfect.  The sound is only garbled when using SDL.  The
> same audio problems exist if I start up the machine and connect to it with vnc.
> 
> 
> I want to use SDL because I need to use Microsoft Lync, which requires me to log in on the console.
> Using voice with Lync is not supported in a remote desktop environment.
> 
> Here is lspci on the audio device on the host machine.
> 
> $ sudo lspci -vvv -s 00:1b.0
> 00:1b.0 Audio device: Intel Corporation 6 Series/C200 Series Chipset Family High Definition Audio
> Controller (rev 04)
>         Subsystem: Lenovo Device 21d2
>         Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B-
> DisINTx+
>         Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- >SERR-
> <PERR- INTx-
>         Latency: 0, Cache Line Size: 64 bytes
>         Interrupt: pin A routed to IRQ 51
>         Region 0: Memory at f1620000 (64-bit, non-prefetchable) [size=16K]
>         Capabilities: [50] Power Management version 2
>                 Flags: PMEClk- DSI- D1- D2- AuxCurrent=55mA PME(D0+,D1-,D2-,D3hot+,D3cold+)
>                 Status: D0 NoSoftRst- PME-Enable- DSel=0 DScale=0 PME-
>         Capabilities: [60] MSI: Enable+ Count=1/1 Maskable- 64bit+
>                 Address: 00000000fee004b8  Data: 0000
>         Capabilities: [70] Express (v1) Root Complex Integrated Endpoint, MSI 00
>                 DevCap: MaxPayload 128 bytes, PhantFunc 0, Latency L0s <64ns, L1 <1us
>                         ExtTag- RBE- FLReset+
>                 DevCtl: Report errors: Correctable- Non-Fatal- Fatal- Unsupported-
>                         RlxdOrd- ExtTag- PhantFunc- AuxPwr- NoSnoop-
>                         MaxPayload 128 bytes, MaxReadReq 128 bytes
>                 DevSta: CorrErr- UncorrErr- FatalErr- UnsuppReq- AuxPwr+ TransPend-
>                 LnkCap: Port #0, Speed unknown, Width x0, ASPM unknown, Latency L0 <64ns, L1 <1us
>                         ClockPM- Surprise- LLActRep- BwNot-
>                 LnkCtl: ASPM Disabled; Disabled- Retrain- CommClk-
>                         ExtSynch- ClockPM- AutWidDis- BWInt- AutBWInt-
>                 LnkSta: Speed unknown, Width x0, TrErr- Train- SlotClk- DLActive- BWMgmt- ABWMgmt-
>         Capabilities: [100 v1] Virtual Channel
>                 Caps:   LPEVC=0 RefClk=100ns PATEntryBits=1
>                 Arb:    Fixed- WRR32- WRR64- WRR128-
>                 Ctrl:   ArbSelect=Fixed
>                 Status: InProgress-
>                 VC0:    Caps:   PATOffset=00 MaxTimeSlots=1 RejSnoopTrans-
>                         Arb:    Fixed- WRR32- WRR64- WRR128- TWRR128- WRR256-
>                         Ctrl:   Enable+ ID=0 ArbSelect=Fixed TC/VC=01
>                         Status: NegoPending- InProgress-
>                 VC1:    Caps:   PATOffset=00 MaxTimeSlots=1 RejSnoopTrans-
>                         Arb:    Fixed- WRR32- WRR64- WRR128- TWRR128- WRR256-
>                         Ctrl:   Enable+ ID=1 ArbSelect=Fixed TC/VC=22
>                         Status: NegoPending- InProgress-
>         Capabilities: [130 v1] Root Complex Link
>                 Desc:   PortNumber=0f ComponentID=00 EltType=Config
>                 Link0:  Desc:   TargetPort=00 TargetComponent=00 AssocRCRB- LinkType=MemMapped
> LinkValid+
>                         Addr:   00000000fed1c000
>         Kernel driver in use: HDA Intel
> 
> Any ideas on how to get this to work would be appreciated.
> 
> 
> 
> -----------------------------
> Jimmy Crossley
> CoNetrix
> Sentry Plaza III
> 5214 68th Street, Suite 200
> Lubbock, TX  79424
> jcrossley@xxxxxxxxxxxx
> https://www.CoNetrix.com
> Telephone: 806-687-8600
> Toll Free: 800-356-6568
> Fax: 806-687-8511
> This e-mail message (and attachments) may contain confidential CoNetrix information. If you are not
> the intended recipient, you cannot use, distribute or copy the message or attachments. In such a
> case, please notify the sender by return e-mail immediately and erase all copies of the message and
> attachments. Opinions, conclusions and other information in this message and attachments that do not
> relate to official business are neither given nor endorsed by CoNetrix.
> 
> 
> --
> To unsubscribe from this list: send the line "unsubscribe kvm" in
> the body of a message to majordomo@xxxxxxxxxxxxxxx
> More majordomo info at  http://vger.kernel.org/majordomo-info.html

I have mostly solved this issue.  The sound works much, much, better, but is still not as good as on my host machine.

I installed PulseAudio and used it instead of ALSA.  In order to get kvm to use it, I set the environment variable QEMU_AUDIO_DRV=pa.  I had been using sudo to start the VM, and that kept this environment variable from being used.  I did a "sudo setcap cap_net_admin+ep /usr/bin/kvm" in order to be able to run kvm under a normal user account.  Now the sound works quite well.

--
To unsubscribe from this list: send the line "unsubscribe kvm" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [KVM ARM]     [KVM ia64]     [KVM ppc]     [Virtualization Tools]     [Spice Development]     [Libvirt]     [Libvirt Users]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite Questions]     [Linux Kernel]     [Linux SCSI]     [XFree86]
  Powered by Linux