How to make audio work with a Windows XP VMware guest hosted on Fedora 11

Update: December 2010. I have given up using Skype under VMware for quite some time now; for almost a year! The Linux Skype Beta Client 2.1.0.81 software is quite good and supports my “Skype-In” and “Skype-Out” features I previously needed VMware for. So, if you need to use Skype with Linux, I recommend you install the Linux Client it is very stable and full featured now!

My Windows XP instance has enjoyed running on bare metal for the last time in my office. The machine flaked out for no apparent reason and crashed every 10 to 45 minutes. I have a Linux laptop where I do most of my work: e-mail, documents, web browsing and Java development. However recent clients have engaged me to write (gulp) .NET projects. So I have needed a XP workstation for the past several years for SharpDevelop, Visual Studio and the odd Windows tool.  Along with these Windows tools I have fostered an addiction to Skype 3.8.

I use Skype to route calls from my office number to answer on my Desktop. I also use Skype Out to dial US long distance numbers and to conference call multiple parties together on one line to make decisions happen. I should use SIP and Ekiga but I don’t at the moment.

So when my XP workstation melted down, my development and communication tools melted down at the same time.

I was so put off by Microsoft for destroying my productivity that I was determined to put XP into a virtual machine to make restoring it back to health faster. I am no stranger to VMware Workstation and Linux is my friend. So I thought it would be a snap to cobble together a working Windows XP virtual machine with Skype 3.8. I was partially right but it took the better part of two days to make VMware audio work the way I needed.

I installed 64 bit Fedora 11 on a pair of new software raided disks that I installed in my Dell Workstation which previously ran XP SP3. The Fedora 11 install went smooth. Everything worked well. The new Noveau NVIDIA driver drove my dual monitor setup well. The PulseAudio system delivered rock solid audio. VMware installed with relatively little effort after following the instructions found on this site: http://communities.vmware.com/thread/203231

With VMware working, I took my Windows XP virtual machine and resized its partition from 16 GB to 64 GB using clonezilla, gparted and ntfsresize. This all took some time and a lot of patience to execute (By the way why can’t XP check it’s file system reliably and why doesn’t NTFS continuously defrag its file system like ext3?). However there was still one nagging problem, the sound card was not being detected by VMware. Apparently the Linux version of VMware 6.5.2 requires a working /dev/dsp OSS device file to work. The default PulseAudio installation in Fedora 11 doesn’t provide a /dev/dsp device file. Nor did the PulseAudio padsp utility work for me with VMware 6.5.2.
I desperately needed audio support in VMware to run Skype 3.8 in XP. (Yes I know Skype 2.0 runs natively under Linux, but Skype 3.8 supports conference calling with real phone numbers, a 3.8 feature I have become accustomed to.)

Running “padsp vmware” did not produce working sound for me. VMware complained of not being able to detect the sound card.

I found these instructions to make VMware work with PulseAudio under Ubuntu 8.10 as described on this site: http://communities.vmware.com/thread/163605 . However the instructions lead me down a dead end and did not work under Fedora 11.
I experimented a little on my 32bit Fedora 10 and 64 bit Fedora 10 workstations. I discovered I could make audio work under VMware quite easily on Fedora 10. I also discovered that Fedora 10 provides a /dev/dsp device file from its OSS sound adapter. Determined that this was the answer to my 64 bit Fedora 11 workstation audio problem, I researched how to restore the /dev/dsp device file to Fedora 11.

I removed the alsa-plugins-pulseaudio RPM.

  • yum remove alsa-plugins-pulseaudio

Then I made sure the OSS modules were being loaded

  • sudo modprobe snd_mixer_oss
  • sudo modprobe snd_pcm_oss
  • sudo modprobe snd_seq_oss

I added my user account to the “audio” group . I explicitly specified my XP VMware instance to use the /dev/dsp device file with the sound.file parameter and set sound.autodetect = “FALSE”. I rebooted and crossed my fingers.

After more research I discovered this Fedora 11 bug, https://bugzilla.redhat.com/show_bug.cgi?id=501051. The author of comment #17 suggests:

“I needed to uncomment a line in /etc/modprobe.d/dist-oss.conf to load those
modules.. Appears they’re caught up in the “disable OSS” feature of F11.”
Uncommenting the referenced line in dist-oss.conf, ensures the aforementioned oss sound modules are loaded when Fedora boots.
To my surprise VMware was able to detect the sound card and allowed XP access to it. Skype 3.8 is now able to make calls. It appears I am back in business. I wanted to share the steps I took to make audio work with VMware and Fedora 11 in the hope they save someone the time and effort I spent to find my solution.

I also wanted to express my concern that the Fedora project is not good at maintaining backward compatibility. I can see the benefit of PulseAudio. It seems to make sound much more reliable under Linux. But the Fedora Project should make a better effort to maintain backwards compatibility with applications behind the curve such as VMware. From an outsider’s perspective it seems like it would be trivial to create /dev/dsp device files on demand and send the audio to the PulseAudio system. (padsp is suppose to do this but apparently doesn’t work with all applications including VMware) If such a capability existed, it would have been easier to resolve my VMware problems.

Enough ranting. Happy hacking.

9 Responses to “How to make audio work with a Windows XP VMware guest hosted on Fedora 11”

  1. sysman Says:

    Hi, I have the same distro (Fedora 11 x64) and to make the sound work, I only make this steps:

    (in root mode)

    1° ) nano /etc/modprobe.d/dist-oss.conf
    2° ) uncoment the line where say install…
    3° ) change manually the sound device in VMW to /dev/dsp

    Is Working…
    (I don’t unistall & install nothing, this work with the oss emulator from alsa),
    Thank’s for your data…

  2. sysman Says:

    PD: I forget to say that, I set sound.autodetect = “FALSE”;

    I apologize for my English language knowledge…

  3. Bloggin-IT » Installing Vmware Workstation 6.5.3 on Fedora 11 Says:

    […] Step 6 – Enable OSS Audio (see this link) […]

  4. redhat enterprise Says:

    Does anyone know how to increase the stack size that a daemon can use? Like: ulimit -s unlimited? I tried /etc/security/limits.conf but that is…

  5. Jesus Soldan Says:

    Can I install Windows 7 in a virtual amchine…

  6. Rob Seward Says:

    A quick google yeilds:

    http://www.knowliz.com/2009/01/install-windows-7-with-ubuntu-using.html

    I personally have stopped using VMWare due to the aggravation of making it run under newer versions of Fedora Linux. Instead I now use Oracle’s Virtual Box (vbox is currently free of charge).

    Good luck with Windows 7. You will need a legitimate license for Windows 7 and the necessary installation media.

  7. VINCENT Says:

    < blockquote > BUY CHEAP DRUGS : < b >-==== < a href=”http://pillsspot.comsyhost.com/order_anti_depressants_en-us.html” >Anti Depressants Cure < /a > ====-< /b >< /blockquote >…

    Order Quality It Today!…

  8. JACK Says:

    < blockquote > GENERIC PHARMACY : < b >-==== < a href=”http://pillsspot.comsyhost.com/order_respiratory_en-us.html” >Respiratory Cure < /a > ====-< /b >< /blockquote >…

    Order Good Generic Drugs Today!…

  9. JOHN Says:

    < blockquote >< a href=”http://buy-meds.comsyhost.com/buy_viagra_en-us.html” >Buy Viagra< /a >< /b >< /blockquote >…

    Buy Quality Drugs Now!…