ALSA does not go through PulseAudio

ALSA and PulseAudio are two different way of letting applications play and record audio, with PulseAudio being the more modern and commonly used one these days.

The core issue is that only one process can access the sound card at a given time and it's the responsibility of PulseAudio and ALSA to arbitrate and mix the audio from all the applications that try to play or capture sounds. But when both are installed they will conflict too unless ALSA is set up to go through the PulseAudio backend.

CrossOver has a PulseAudio sound driver and uses it by default. If the sound works when running Windows applications in CrossOver then you can safely ignore this message.

The one time this check might be important is if you are using MIDI in a Windows application (this always goes through ALSA since PulseAudio does not support MIDI) at the same time another application is playing audio through PulseAudio. If ALSA does not go through PulseAudio the two sound systems might fight over resources and block each other.

Resolution

  1. If sound does not work in Windows applications then make sure that there is no issue with the libpulse library first.
  2. If you really need ALSA (e.g., for MIDI support), follow the instructions below. If that does not solve the issue you will need to delve into the ALSA configuration files to make sure it goes through the PulseAudio backend.

On CrossOver 17 and greater, the simplest solution to fix this issue is to run:

/path/to/cxoffice/bin/cxfix nonpulseaudioalsa nonpulseaudioalsa.amd64

Or add --show-all to see how CrossOver would fix it on your platform and others.

Alternatively you may try one of the commands below.

  • For 32-bit Windows applications
    32-bit Arch Linux : pacman -Syu alsa-plugins
    64-bit Arch Linux : pacman -Syu lib32-alsa-plugins
    Debian 7 : apt-get install libasound2-plugins:i386
    32-bit Fedora 13 : yum install alsa-plugins-pulseaudio
    64-bit Fedora 13 : yum install alsa-plugins-pulseaudio.i686 alsa-plugins-pulseaudio.x86_64
    32-bit openSUSE 11.2 : zypper install alsa-plugins-pulse
    64-bit openSUSE 11.2 : zypper install alsa-plugins-pulse-32bit
  • For 64-bit Windows applications
    Arch Linux : pacman -Syu alsa-plugins
    Debian 7 : apt-get install libasound2-plugins:amd64
    Fedora 13 : yum install alsa-plugins-pulseaudio.x86_64
    openSUSE 11.2 : zypper install alsa-plugins-pulse

Notes:

  • cxfix --show-all may have more up-to-date fixes.
  • The commands usually also apply to newer versions of the distributions above as well as derived distributions. So for instance a fix for Debian 7 may still be valid for the latest Debian Testing and is typically also applicable to Ubuntu, Linux Mint, Deepin and Pop! OS. Similarly a fix for Fedora likely also works on Red Hat Enterprise Linux, CentOS, etc.
Last modified on 2022-08-18 09:47:04 by François Gouget
Are you sure you want to delete this page?
Note: Any nested pages that are under this one will be moved up one level. Any attachments tied to this page will be deleted.
Move / Rename Page
Unknown Error, unable to move!
That page exists already!
One or more of the parent pages specified in new path do not exist!
/support/wiki/ /support/wiki/Diag/NonPulseAudioAlsa
CodeWeavers or its third-party tools process personal data (e.g. browsing data or IP addresses) and use cookies or other identifiers, which are necessary for its functioning and required to achieve the purposes illustrated in our Privacy Policy. You accept the use of cookies or other identifiers by clicking the Acknowledge button.
Please Wait...
eyJjb3VudHJ5IjoiVVMiLCJsYW5nIjpudWxsLCJjYXJ0IjowLCJ0enMiOi01LCJjZG4iOiJodHRwczpcL1wvbWVkaWEuY29kZXdlYXZlcnMuY29tXC9wdWJcL2Nyb3Nzb3Zlclwvd2Vic2l0ZSIsImNkbnRzIjoxNjg0ODczOTEzLCJjc3JmX3Rva2VuIjoiZXBHckc0clNNMzR6bWFXUSIsImdkcHIiOjB9