You are not logged in.

#1 2012-02-04 16:52:58

slimg00dy
Member
Registered: 2011-12-27
Posts: 50

[Solved] wine sound not working (pulseaudio)

These are the errors I get when testing sound or playing games in winecfg/wine.

err:mmdevapi:DllGetClassObject Driver initialization failed
err:ole:apartment_getclassobject DllGetClassObject returned error 0x80004005
err:ole:CoGetClassObject no class object {bcde0395-e52f-467c-8e3d-c4579291692e} could be created for context 0x1
 Linux myhost 3.2.2-1-ARCH #1 SMP PREEMPT Thu Jan 26 08:40:20 CET 2012 x86_64 AMD FX(tm)-8120 Eight-Core Processor AuthenticAMD GNU/Linux
[slimg00dy@myhost StarCraft II]$ wine --version
wine-1.4-rc2
[slimg00dy@myhost StarCraft II]$ 

-slimg00dy-

Last edited by slimg00dy (2012-02-22 04:32:05)

Offline

#2 2012-02-05 20:46:07

slimg00dy
Member
Registered: 2011-12-27
Posts: 50

Re: [Solved] wine sound not working (pulseaudio)

Bump.

No one else is having this problem?  Really?

Offline

#3 2012-02-07 17:52:05

slimg00dy
Member
Registered: 2011-12-27
Posts: 50

Re: [Solved] wine sound not working (pulseaudio)

Bump again

Offline

#4 2012-02-07 23:24:30

M4he
Member
Registered: 2011-08-11
Posts: 75

Re: [Solved] wine sound not working (pulseaudio)

Are you running a 64 bit system?

If so, check if the following packages are installed:

lib32-alsa-plugins lib32-libpulse lib32-openal

I found these being necessary for my x64 Arch to get sound in wine.


Arch - makes me feel right at /home

Offline

#5 2012-02-08 14:27:38

slimg00dy
Member
Registered: 2011-12-27
Posts: 50

Re: [Solved] wine sound not working (pulseaudio)

M4he wrote:

Are you running a 64 bit system?

If so, check if the following packages are installed:

lib32-alsa-plugins lib32-libpulse lib32-openal

I found these being necessary for my x64 Arch to get sound in wine.


Thanks for responding, I almost lost hope.

I am running 64bit.


I know i ahve lib32-alsa and lib32-libpulse I need to check on openal however.

Offline

#6 2012-02-08 14:29:47

desm0tes
Member
From: 127.0.0.1
Registered: 2012-02-04
Posts: 233
Website

Re: [Solved] wine sound not working (pulseaudio)

Did you configure wine to use PA or ALSA?

Offline

#7 2012-02-08 15:37:33

slimg00dy
Member
Registered: 2011-12-27
Posts: 50

Re: [Solved] wine sound not working (pulseaudio)

desm0tes wrote:

Did you configure wine to use PA or ALSA?

I know I set one of the registry functions in regedit to use pulse.  So it should be PA.  However I don't see any streams in pavucontrol for wine.l

Offline

#8 2012-02-08 15:59:21

desm0tes
Member
From: 127.0.0.1
Registered: 2012-02-04
Posts: 233
Website

Re: [Solved] wine sound not working (pulseaudio)

I remember it's sometimes better to install pulseaudio-alsa and set ALSA in wine...

Offline

#9 2012-02-08 16:01:47

FrozenFox
Member
From: College Station, TX
Registered: 2008-03-23
Posts: 422
Website

Re: [Solved] wine sound not working (pulseaudio)

slimg00dy wrote:
[slimg00dy@myhost StarCraft II]$ wine --version
wine-1.4-rc2
[slimg00dy@myhost StarCraft II]$ 

-slimg00dy-

slimg00dy wrote:

I know I set one of the registry functions in regedit to use pulse.  So it should be PA.  However I don't see any streams in pavucontrol for wine.l

That's because wine does not have support for a pulse driver out of the box, so editing the registry to use a pulse driver will probably break the sound.

Undo your edit to the registry by running 'wine regedit' and going to HKey_Current_User->Software->Wine->Drivers , then set Audio key to alsa. You should have sound in wine if you have pulseaudio properly installed as per the wiki, use alsa as the wine driver, and have the needed 32 bit libraries installed.

Here is a list of related packages I have installed for your reference:

alsa-firmware 1.0.25-1
alsa-lib 1.0.25-1
alsa-plugins 1.0.25-1
alsa-utils 1.0.25-1
lib32-alsa-lib 1.0.25-1
lib32-alsa-plugins 1.0.25-1
pulseaudio-alsa 2-1
lib32-libpulse 1.1-2
libcanberra-pulse 0.28-2
libpulse 1.1-2
pulseaudio 1.1-2
pulseaudio-alsa 2-1
lib32-openal-git 20120207-1
openal-git 20120207-1
wine-fox 1.4rc2-1

Wine-fox is my customized build of wine you shouldn't need (game-specific patches, disabled 64 bit support, etc), and you should not specifically need the git version of openal (openal-git + lib32-openal-git) unless you are running wine-multimedia or some other such pulse-enabled wine package from the AUR, but you should have the regular versions installed, probably.

The only time you should be using 'pulse' as a driver in wine is if you have your own custom pulse-enabled build of wine installed, like wine-multimedia from AUR.

You aren't missing much. Pulse enabled builds of wine tend to have just as many sound problems as they fix, with tons of apps/games lacking sound that works fine in vanilla wine. As such, you are almost assuredly better off with vanilla wine w/ alsa unless you have a specific use case where a 3rd party pulse driver works better. The most recent working wine-multimedia package is pretty outdated at wine 1.3.29. On the wine-multimedia AUR page, I did post a working 1.3.36 pkgbuild with a pulse driver, but it is quite hackish and should not be used unless you're desperate to use a newer wine. Wine-multimedia's git itself has been updated to do this properly, but I can't get sound working on it through my own builds and nobody else has said they have either when I asked, so I suspect nobody has.

TL;DR: Set the driver back to alsa and make sure you have the right packages installed, there is no pulse driver out of the box. Alsa should work fine.

Last edited by FrozenFox (2012-02-08 16:10:46)

Offline

#10 2012-02-08 19:25:04

slimg00dy
Member
Registered: 2011-12-27
Posts: 50

Re: [Solved] wine sound not working (pulseaudio)

FrozenFox wrote:
slimg00dy wrote:
[slimg00dy@myhost StarCraft II]$ wine --version
wine-1.4-rc2
[slimg00dy@myhost StarCraft II]$ 

-slimg00dy-

slimg00dy wrote:

I know I set one of the registry functions in regedit to use pulse.  So it should be PA.  However I don't see any streams in pavucontrol for wine.l

That's because wine does not have support for a pulse driver out of the box, so editing the registry to use a pulse driver will probably break the sound.

Undo your edit to the registry by running 'wine regedit' and going to HKey_Current_User->Software->Wine->Drivers , then set Audio key to alsa. You should have sound in wine if you have pulseaudio properly installed as per the wiki, use alsa as the wine driver, and have the needed 32 bit libraries installed.

Here is a list of related packages I have installed for your reference:

alsa-firmware 1.0.25-1
alsa-lib 1.0.25-1
alsa-plugins 1.0.25-1
alsa-utils 1.0.25-1
lib32-alsa-lib 1.0.25-1
lib32-alsa-plugins 1.0.25-1
pulseaudio-alsa 2-1
lib32-libpulse 1.1-2
libcanberra-pulse 0.28-2
libpulse 1.1-2
pulseaudio 1.1-2
pulseaudio-alsa 2-1
lib32-openal-git 20120207-1
openal-git 20120207-1
wine-fox 1.4rc2-1

Wine-fox is my customized build of wine you shouldn't need (game-specific patches, disabled 64 bit support, etc), and you should not specifically need the git version of openal (openal-git + lib32-openal-git) unless you are running wine-multimedia or some other such pulse-enabled wine package from the AUR, but you should have the regular versions installed, probably.

The only time you should be using 'pulse' as a driver in wine is if you have your own custom pulse-enabled build of wine installed, like wine-multimedia from AUR.

You aren't missing much. Pulse enabled builds of wine tend to have just as many sound problems as they fix, with tons of apps/games lacking sound that works fine in vanilla wine. As such, you are almost assuredly better off with vanilla wine w/ alsa unless you have a specific use case where a 3rd party pulse driver works better. The most recent working wine-multimedia package is pretty outdated at wine 1.3.29. On the wine-multimedia AUR page, I did post a working 1.3.36 pkgbuild with a pulse driver, but it is quite hackish and should not be used unless you're desperate to use a newer wine. Wine-multimedia's git itself has been updated to do this properly, but I can't get sound working on it through my own builds and nobody else has said they have either when I asked, so I suspect nobody has.

TL;DR: Set the driver back to alsa and make sure you have the right packages installed, there is no pulse driver out of the box. Alsa should work fine.

Thanks!  I'll give this a shot tonight.

Offline

#11 2012-02-09 14:45:48

slimg00dy
Member
Registered: 2011-12-27
Posts: 50

Re: [Solved] wine sound not working (pulseaudio)

I've tried all this and still get

 err:ole:COMPOBJ_DllList_Add couldn't load in-process dll L"C:\\windows\\system32\\mmdevapi.dll"
err:ole:CoGetClassObject no class object {bcde0395-e52f-467c-8e3d-c4579291692e} could be created for context 0x1
err:ole:CoInitializeEx Attempt to change threading model of this apartment from multi-threaded to apartment threaded
err:ole:COMPOBJ_DllList_Add couldn't load in-process dll L"C:\\windows\\system32\\mmdevapi.dll"
err:ole:CoGetClassObject no class object {bcde0395-e52f-467c-8e3d-c4579291692e} could be created for context 0x1
[slimg00dy@myhost StarCraft II]$ 

Offline

#12 2012-02-10 16:48:34

FrozenFox
Member
From: College Station, TX
Registered: 2008-03-23
Posts: 422
Website

Re: [Solved] wine sound not working (pulseaudio)

slimg00dy wrote:

I've tried all this and still get

 err:ole:COMPOBJ_DllList_Add couldn't load in-process dll L"C:\\windows\\system32\\mmdevapi.dll"
err:ole:CoGetClassObject no class object {bcde0395-e52f-467c-8e3d-c4579291692e} could be created for context 0x1
err:ole:CoInitializeEx Attempt to change threading model of this apartment from multi-threaded to apartment threaded
err:ole:COMPOBJ_DllList_Add couldn't load in-process dll L"C:\\windows\\system32\\mmdevapi.dll"
err:ole:CoGetClassObject no class object {bcde0395-e52f-467c-8e3d-c4579291692e} could be created for context 0x1
[slimg00dy@myhost StarCraft II]$ 

Do you have any forced library stuff in winecfg libraries tab (either globally or for starcraft 2)? It looks like you're trying to force mmdevapi to load with windows' dll and it can't be found in your respective wine folder. Most probably this was done by winetricks at some point if you have that installed. Please try a clean wineprefix if that doesn't turn out to be correct. Just move ~/.wine somewhere else and test out a clean environment.

Last edited by FrozenFox (2012-02-10 16:49:41)

Offline

#13 2012-02-10 20:59:05

slimg00dy
Member
Registered: 2011-12-27
Posts: 50

Re: [Solved] wine sound not working (pulseaudio)

FrozenFox wrote:
slimg00dy wrote:

I've tried all this and still get

 err:ole:COMPOBJ_DllList_Add couldn't load in-process dll L"C:\\windows\\system32\\mmdevapi.dll"
err:ole:CoGetClassObject no class object {bcde0395-e52f-467c-8e3d-c4579291692e} could be created for context 0x1
err:ole:CoInitializeEx Attempt to change threading model of this apartment from multi-threaded to apartment threaded
err:ole:COMPOBJ_DllList_Add couldn't load in-process dll L"C:\\windows\\system32\\mmdevapi.dll"
err:ole:CoGetClassObject no class object {bcde0395-e52f-467c-8e3d-c4579291692e} could be created for context 0x1
[slimg00dy@myhost StarCraft II]$ 

Do you have any forced library stuff in winecfg libraries tab (either globally or for starcraft 2)? It looks like you're trying to force mmdevapi to load with windows' dll and it can't be found in your respective wine folder. Most probably this was done by winetricks at some point if you have that installed. Please try a clean wineprefix if that doesn't turn out to be correct. Just move ~/.wine somewhere else and test out a clean environment.


You are so correct, thank you!!!!! I had the previous wineprefix from fedora or centOS and didn't get rid of the .wine folder.

Offline

#14 2012-02-10 21:19:28

slimg00dy
Member
Registered: 2011-12-27
Posts: 50

Re: [Solved] wine sound not working (pulseaudio)

Is there a way to make this work under pulse audio however?  I do not see the streams in pavucontrol

Offline

#15 2012-02-11 01:48:35

FrozenFox
Member
From: College Station, TX
Registered: 2008-03-23
Posts: 422
Website

Re: [Solved] wine sound not working (pulseaudio)

slimg00dy wrote:

Is there a way to make this work under pulse audio however?  I do not see the streams in pavucontrol

Yes, as I mentioned earlier, there are a few pulse enabled packages floating around.

You should see the streams in pavucontrol though, I see my wine streams. Be sure you have the right stuff installed like pulseaudio-alsa package and pulse is configured correctly. That said..

If you really want pulse drivers, long story, to my understanding.. it's a bit of a mess:
* The earliest pulse support was a set of patches referred to as "winepulse", http://art.ified.ca/?page_id=40  from here. A winepulse package was posted to AUR at some point, but was removed when it was obsoleted some time around wine 1.3.22.
* When wine's multimedia system was overhauled (rendering the above obsolete), a wine-multimedia git repo came into being http://repo.or.cz/w/wine/multimedia.git with a pulse alternative based on the new system. It reverts a bunch of changes in directsound n mmdevapi to do this by making its own changes. This git repo is usually a few versions behind the official vanilla wine release. Presently, it is at 1.3.36.
* Nephyrin from our community made packages for wine-multimedia-git and wine-multimedia and put patches n stuff together and posted that to AUR, and kept them up to date until wine 1.3.29. At some point after this, the wine-multimedia git itself stopped showing updates, so we all had to wait a while. Around when wine 1.4rc1 was released, the git was updated to 1.3.6.
* .. I tweaked my own patched wine pkgbuild + nephyrin's pkgbuild to try to get the now released git stuff for wine-multimedia 1.3.6 to work. I had no luck. It compiles, but I get no sound. However, another guy http://debian.orson.at/list_repository/ … perimental had posted debian packages for wine-pulse 1.3.34 or 35 or some such via packages from the wine-multimedia git. I managed to make it work for wine 1.3.36 and posted it and information https://aur.archlinux.org/packages.php?ID=51884 in one of my latest posts here.

So, in a nutshell, some debian guy put together a bunch of wine-multimedia git patches meant for an older wine and made it work with 1.3.35 for debian. I grabbed his sources and turned that to a package for 1.3.36 here. Not long after, wine-multimedia git itself came out with proper 1.3.36 stuff that we *should* use but nobody seems to have been able to make work here (or at least isn't saying anything).

So, your choices if you want pulse support:

* I could send you a super old winepulse package (1.3.18 I think) if you wanted for some reason
* Wine-multimedia with old wine 1.3.29 in AUR
* My slightly newer but hackish/improper 1.3.36 package posted to the above aur page
* Wait and see if somebody works out how to make an up to date wine-multimedia 1.3.36 package that actually works
* Wait and see if somebody updates the 1.4rc2 (or newer) packages in a less correct manner like I did with 1.3.36.. I actually already have a package for this, it just doesn't seem to work.

In ANY case you choose, I will once again tell you that the pulse enabled packages tend to cause as many problems as they fix, and lots of stuff has no sound that works fine in vanilla wine.

TL;DR: You have several choices for a pulse enabled package, all of them suck to a degree and none are exactly official. Wine-multimedia or one of my packages posted to said AUR page are what you're looking for if you really want to do it anyway. You're really better off with vanilla wine + alsa. If you don't see streams in pavucontrol, be sure you have pulseaudio-alsa installed and pulseaudio configured properly; wine streams show up fine for me with the alsa driver.

Last edited by FrozenFox (2012-02-11 17:38:49)

Offline

#16 2012-02-22 04:31:25

slimg00dy
Member
Registered: 2011-12-27
Posts: 50

Re: [Solved] wine sound not working (pulseaudio)

So I've decided to poke around in the Gentoo forums and see what's up there and I found an interesting bit to get alsa to pass over to wine.

My problem was that I was using an old wine config from another distro as FrozenFox mentioned.

Also I didn't have the correct parameter in ~/.asoundrc

backing up my current asoundrc file and making this one works now, I can get wine in pavucontrol.

pcm.pulse {
    type pulse
}
ctl.pulse {
    type pulse
}
pcm.!default {
    type pulse
}
ctl.!default {
    type pulse
}

Offline

#17 2013-12-02 19:28:38

chuckiv
Member
Registered: 2013-10-28
Posts: 96

Re: [Solved] wine sound not working (pulseaudio)

Just adding my experience to the mix. I was trying to play diablo 3 with play on linux wine version 1.7.5 and I have pulse audio and was not getting any sound. After making sure I had all the packages above it worked without me having to disable or kill pulse audio.

alsa-firmware
alsa-lib
alsa-plugins
alsa-utils
lib32-alsa-lib
lib32-alsa-plugins
pulseaudio-alsa
lib32-libpulse
libcanberra-pulse
libpulse
pulseaudio
lib32-openal

I already had most of these installed and I forget which but having everything on this list in the end made the sound work without any configuration.

Thanks!

Offline

Board footer

Powered by FluxBB