No sound in Wine 1.3.37 (tried known solutions already)

Open forum for end-user questions about Wine. Before asking questions, check out the Wiki as a first step.
Forum Rules
Locked
Nameless One
Level 1
Level 1
Posts: 6
Joined: Thu Jan 19, 2012 1:37 am

No sound in Wine 1.3.37 (tried known solutions already)

Post by Nameless One »

Note to admins: Please, read through my whole post this time before deleting it. You will be surprised to find out that I have already tried all solutions detailed in the stickies. If you still think that this topic should be deleted, please be kind enough to notify me why, so that I would know how to proceed about getting help with my problem. Thank you.

I have 64-bit OpenSUSE 12.1 and I have installed Wine 1.3.37 from the official repo. I'm testing with Fallout and Fallout 2 which both have no 'no sound' issues and have platinum and gold ratings only on all tests. Both games start without a problem except that there is no sound at all. The exclude Black Isle's Fallout games as a problem, I also tested Civilization 2 Multiplayer Gold Edition and it also started without a sound. All games have the following error in common:

Code: Select all

err:dsound:devenum_thread_proc CoCreateInstance failed: 80040154
winecfg Audio tab says it is using winealsa.drv and all devices are set to (System Default). Sound test in winecfg works perfectly. Changing devices seems to take effect only after clicking ok, not when clicking apply. After changing a device to anything other than (System Default), sound test no longer works.

The output of aplay -L is:

Code: Select all

null                                                                                                                                                                                                                                                                           
    Discard all samples (playback) or generate zero samples (capture)
default
    Default ALSA Output (currently PulseAudio Sound Server)
sysdefault:CARD=XFi
    Creative X-Fi, Front/WaveIn
    Default Audio Device
front:CARD=XFi,DEV=0
    Creative X-Fi, Front/WaveIn
    Front speakers
rear:CARD=XFi,DEV=0
    Creative X-Fi, Surround
    Rear speakers
center_lfe:CARD=XFi,DEV=0
    Creative X-Fi, Center/LFE
    Center and Subwoofer speakers
side:CARD=XFi,DEV=0
    Creative X-Fi, Side
    Side speakers
surround40:CARD=XFi,DEV=0
    Creative X-Fi, Front/WaveIn
    4.0 Surround output to Front and Rear speakers
surround41:CARD=XFi,DEV=0
    Creative X-Fi, Front/WaveIn
    4.1 Surround output to Front, Rear and Subwoofer speakers
surround50:CARD=XFi,DEV=0
    Creative X-Fi, Front/WaveIn
    5.0 Surround output to Front, Center and Rear speakers
surround51:CARD=XFi,DEV=0
    Creative X-Fi, Front/WaveIn
    5.1 Surround output to Front, Center, Rear and Subwoofer speakers
surround71:CARD=XFi,DEV=0
    Creative X-Fi, Front/WaveIn
    7.1 Surround output to Front, Center, Side, Rear and Woofer speakers
iec958:CARD=XFi,DEV=0
    Creative X-Fi, IEC958 Non-audio
    IEC958 (S/PDIF) Digital Audio Output
aplay, speaker-test and KDE system sounds work without a problem.

The solutions I have tried:

1) Installing dsound with winetricks. dsound is downloaded and copied correctly, but it ends with the following error:

Code: Select all

Executing wine regsvr32 dsound.dll                                                                                                                                                                                                                                             
err:ole:CoGetClassObject class {44ec053a-400f-11d0-9dcd-00a0c90391d3} not registered                                                                                                                                                                                           
err:ole:CoGetClassObject no class object {44ec053a-400f-11d0-9dcd-00a0c90391d3} could be created for context 0x1                                                                                                                                                               
Failed to register DLL dsound.dll                                                                                                                                                                                                                                              
------------------------------------------------------                                                                                                                                                                                                                         
Note: command 'wine regsvr32 dsound.dll' returned status 255.  Aborting.
2) Starting Wine with pasuspender. Doesn't help.

3) Killing pulseaudio process. I set autospawn = no in the config to prevent it from restarting. Doesn't help. Event with pulseaudio daemon not running, aplay, speaker-test and KDE system sounds work without a problem, so does sound test in winecfg, but games started in Wine still have no sound.

What am I doing wrong?
User avatar
dimesio
Moderator
Moderator
Posts: 13367
Joined: Tue Mar 25, 2008 10:30 pm

Re: No sound in Wine 1.3.37 (tried known solutions already)

Post by dimesio »

Nameless One wrote:You will be surprised to find out that I have already tried all solutions detailed in the stickies.
By "all solutions" do you also mean the ones listed in http://wiki.winehq.org/Sound (particularly the one listed under SDL Applications)? If not, try that.
Nameless One
Level 1
Level 1
Posts: 6
Joined: Thu Jan 19, 2012 1:37 am

Post by Nameless One »

My SDL_AUDIODRIVER is empty by default. I tried 'unset SDL_AUDIODRIVER' before running the game but it didn't help. I'm still getting the same error.
User avatar
dimesio
Moderator
Moderator
Posts: 13367
Joined: Tue Mar 25, 2008 10:30 pm

Post by dimesio »

One thing you haven't mentioned trying is uninstalling PulseAudio altogether. Try that. If that fixes it, then the problem is http://bugs.winehq.org/show_bug.cgi?id=27895.
Nameless One
Level 1
Level 1
Posts: 6
Joined: Thu Jan 19, 2012 1:37 am

Post by Nameless One »

dimesio wrote:One thing you haven't mentioned trying is uninstalling PulseAudio altogether. Try that. If that fixes it, then the problem is http://bugs.winehq.org/show_bug.cgi?id=27895.
I have bad experience with messing with OpenSUSE's sound setup, but I've no more choices left. I removed all pulseaudio packages and Wine is still behaving the same.

My problem doesn't look at all like what people are describing in Bug 27895. Winecfg sound test is working perfectly for me. I also don't see the errors they are getting and I have no crashes. On the other hand, the error I'm getting is not mentioned in any of the reports.
User avatar
dimesio
Moderator
Moderator
Posts: 13367
Joined: Tue Mar 25, 2008 10:30 pm

Post by dimesio »

Nameless One wrote: I have bad experience with messing with OpenSUSE's sound setup, but I've no more choices left. I removed all pulseaudio packages and Wine is still behaving the same.

My problem doesn't look at all like what people are describing in Bug 27895. Winecfg sound test is working perfectly for me. I also don't see the errors they are getting and I have no crashes. On the other hand, the error I'm getting is not mentioned in any of the reports.
Post terminal output from running something that should have sound. If it's long, use pastebin and post a link here.
Nameless One
Level 1
Level 1
Posts: 6
Joined: Thu Jan 19, 2012 1:37 am

Post by Nameless One »

Only the first 3 lines appear before the game start. Other are generated while the game is initializing.

Code: Select all

wine: Call from 0x7b83af22 to unimplemented function msvcp60.dll.??0ios_base@std@@IAE@XZ, aborting
wine: Call from 0x7b83af22 to unimplemented function msvcp60.dll.??0ios_base@std@@IAE@XZ, aborting
fixme:ntdll:RtlNtStatusToDosErrorNoTeb no mapping for 80000100
fixme:win:EnumDisplayDevicesW ((null),0,0x33f07c,0x00000000), stub!
err:ole:CoGetClassObject class {bcde0395-e52f-467c-8e3d-c4579291692e} not registered
err:ole:CoGetClassObject no class object {bcde0395-e52f-467c-8e3d-c4579291692e} could be created for context 0x1
err:dsound:devenum_thread_proc CoCreateInstance failed: 80040154
User avatar
dimesio
Moderator
Moderator
Posts: 13367
Joined: Tue Mar 25, 2008 10:30 pm

Post by dimesio »

Nameless One wrote:

Code: Select all

wine: Call from 0x7b83af22 to unimplemented function msvcp60.dll.??0ios_base@std@@IAE@XZ, aborting
Try winetricks vcrun6.

That log is awfully short. Is this a clean wineprefix?
Nameless One
Level 1
Level 1
Posts: 6
Joined: Thu Jan 19, 2012 1:37 am

Post by Nameless One »

dimesio, thanks for all the help. I compiled Wine myself and now sound works correctly. vc6 errors are still there but I suppose they are nothing critical. I have also noticed that winecfg reports much fewer errors now. I guess this is the way to go for all who can't get the packages from their distros to work.

Thanks again.
User avatar
dimesio
Moderator
Moderator
Posts: 13367
Joined: Tue Mar 25, 2008 10:30 pm

Post by dimesio »

dimesio, thanks for all the help. I compiled Wine myself and now sound works correctly. vc6 errors are still there but I suppose they are nothing critical. I have also noticed that winecfg reports much fewer errors now. I guess this is the way to go for all who can't get the packages from their distros to work
You should report the problem to your distro package maintainer.
The Wanderer
Newbie
Newbie
Posts: 4
Joined: Sun Mar 04, 2012 10:02 am

Post by The Wanderer »

I am experiencing what appears to be this same problem. However, I am already running a self-compiled Wine, so that alone cannot be the solution in this case.

I am running 64-bit Debian, tracking testing. I have compiled Wine myself, from git revision b05be807583eca27dc0a4de896ba901bac54088c ("Release 1.4-rc5.").

As with the previous report, winecfg reports that it's using winealsa.drv, and the winecfg sound test works fine when the listed devices are all set to the (System default) device. However, when I set them to any other device, the sound test stops actually producing sound (though it does not report failure). Also like the previous report, clicking Apply does not appear to actually change the device for this purpose; to effectively change the device being used for the sound test, it is necessary to exit winecfg and re-launch it.

I am testing game sound using World of Warcraft (the 32-bit edition). When using the (System default) sound device, there is very quiet, choppy sound on the pre-login title screen; there does not appear to be any identifiable sound after logging in. When using any other sound device, there is no in-game sound at all.

In-game sound is configured appropriately as far as I can tell, and in-game volume levels are appropriate. An identical World of Warcraft install directory (literally copied using rsync) works flawlessly on my laptop, with Wine revision 769fd080f88235a687c18127ed0c580d60ad630a ("ddraw: Don't leak the window DC."). The laptop is also tracking 64-bit Debian testing, but is some distance further behind, and various sound-related packages (oss4, for instance) have been updated in the meantime. I have tried also synchronizing the ~/.wine/ directory between the two machines, but it made no difference.

The output of 'aplay -L' is:

Code: Select all

null
    Discard all samples (playback) or generate zero samples (capture)
hdmi:CARD=Generic,DEV=0
    HD-Audio Generic, HDMI 0
    HDMI Audio Output
sysdefault:CARD=DX
    Xonar DX, Multichannel
    Default Audio Device
front:CARD=DX,DEV=0
    Xonar DX, Multichannel
    Front speakers
surround40:CARD=DX,DEV=0
    Xonar DX, Multichannel
    4.0 Surround output to Front and Rear speakers
surround41:CARD=DX,DEV=0
    Xonar DX, Multichannel
    4.1 Surround output to Front, Rear and Subwoofer speakers
surround50:CARD=DX,DEV=0
    Xonar DX, Multichannel
    5.0 Surround output to Front, Center and Rear speakers
surround51:CARD=DX,DEV=0
    Xonar DX, Multichannel
    5.1 Surround output to Front, Center, Rear and Subwoofer speakers
surround71:CARD=DX,DEV=0
    Xonar DX, Multichannel
    7.1 Surround output to Front, Center, Side, Rear and Woofer speakers
iec958:CARD=DX,DEV=0
    Xonar DX, Multichannel
    IEC958 (S/PDIF) Digital Audio Output
I have no ~/.asoundrc. My /etc/asound.conf, which seems to work flawlessly in other respects, is:

Code: Select all

pcm.!default {
        type plug
        slave.pcm "dmixer"
}

pcm.dmixer  {
        type dmix
        ipc_key 1024
        slave {
                pcm "hw:DX"
        }
        bindings {
                0 0
                1 1
        }
}

ctl.dmixer {
        type hw
        card DX
}
The output from winecfg when the sound test works successfully is:

Code: Select all

ALSA lib pcm_dmix.c:957:(snd_pcm_dmix_open) The dmix plugin supports only playback stream
ALSA lib pcm_dmix.c:957:(snd_pcm_dmix_open) The dmix plugin supports only playback stream
err:ole:CoInitializeEx Attempt to change threading model of this apartment from multi-threaded to apartment threaded
The output from World of Warcraft when observing quiet, choppy sound at the title screen is:

Code: Select all

fixme:process:GetLogicalProcessorInformation (0x32f620,0x32fc20): stub
fixme:process:GetLogicalProcessorInformation (0x15fbff0,0x15fc5f0): stub
fixme:process:GetLogicalProcessorInformation (0x15fbff0,0x15fc5f0): stub
fixme:wininet:CommitUrlCacheEntryInternal entry already in cache - don't know what to do!
fixme:process:GetLogicalProcessorInformation (0x16fe370,0x16fe970): stub
fixme:process:GetLogicalProcessorInformation (0x16fe370,0x16fe970): stub
fixme:wininet:CommitUrlCacheEntryInternal entry already in cache - don't know what to do!
fixme:process:GetLogicalProcessorInformation (0x16fe370,0x16fe970): stub
fixme:process:GetLogicalProcessorInformation (0x16fe370,0x16fe970): stub
fixme:process:GetLogicalProcessorInformation (0x16fe370,0x16fe970): stub
fixme:process:GetLogicalProcessorInformation (0x16fe370,0x16fe970): stub
fixme:process:GetLogicalProcessorInformation (0x32f554,0x32fb54): stub
fixme:process:GetLogicalProcessorInformation (0x32f554,0x32fb54): stub
archive Data/Cache/SoundCache-1.MPQ opened
archive Data/Cache/SoundCache-2.MPQ opened
archive Data/Cache/SoundCache-3.MPQ opened
archive Data/Cache/SoundCache-0.MPQ opened
archive Data/Cache/enUS/SoundCache-enUS.MPQ opened
archive Data/wow-update-base-15211.MPQ opened
archive Data/enUS/wow-update-enUS-15211.MPQ opened
archive Data/Cache/patch-base-15211.MPQ opened
archive Data/Cache/enUS/patch-enUS-15211.MPQ opened
archive Data/Cache/SoundCache-patch-15211.MPQ opened
archive Data/Cache/enUS/SoundCache-patch-enUS-15211.MPQ opened
archive Data/wow-update-base-15354.MPQ opened
archive Data/enUS/wow-update-enUS-15354.MPQ opened
archive Data/Cache/patch-base-15354.MPQ opened
archive Data/Cache/enUS/patch-enUS-15354.MPQ opened
archive Data/Cache/SoundCache-patch-15354.MPQ opened
archive Data/Cache/enUS/SoundCache-patch-enUS-15354.MPQ opened
archive Data\world2.MPQ opened
archive Data\enUS\expansion3-speech-enUS.MPQ opened
archive Data\enUS\expansion3-locale-enUS.MPQ opened
archive Data\expansion3.MPQ opened
archive Data\enUS\expansion2-speech-enUS.MPQ opened
archive Data\enUS\expansion2-locale-enUS.MPQ opened
archive Data\expansion2.MPQ opened
archive Data\enUS\expansion1-speech-enUS.MPQ opened
archive Data\enUS\expansion1-locale-enUS.MPQ opened
archive Data\expansion1.MPQ opened
archive Data\enUS\speech-enUS.MPQ opened
archive Data\enUS\locale-enUS.MPQ opened
archive Data\sound.MPQ opened
archive Data\world.MPQ opened
archive Data\art.MPQ opened
fixme:win:EnumDisplayDevicesW ((null),0,0x32ed20,0x00000000), stub!
fixme:win:EnumDisplayDevicesW ((null),0,0x32ebe0,0x00000000), stub!
fixme:win:EnumDisplayDevicesW ((null),0,0x32f0c0,0x00000000), stub!
fixme:win:EnumDisplayDevicesW ((null),0,0x32f008,0x00000000), stub!
fixme:win:EnumDisplayDevicesW ((null),0,0x32eec8,0x00000000), stub!
fixme:win:EnumDisplayDevicesW ((null),0,0x32efe8,0x00000000), stub!
fixme:win:EnumDisplayDevicesW ((null),0,0x32eea8,0x00000000), stub!
ALSA lib ../../../src/pcm/pcm_dmix.c:957:(snd_pcm_dmix_open) The dmix plugin supports only playback stream
ALSA lib ../../../src/pcm/pcm_dmix.c:957:(snd_pcm_dmix_open) The dmix plugin supports only playback stream
fixme:avrt:AvSetMmThreadCharacteristicsW (L"Pro Audio",0x32f740): stub
fixme:process:GetLogicalProcessorInformation (0x1afe370,0x1afe970): stub
fixme:process:GetLogicalProcessorInformation (0x1afe370,0x1afe970): stub
fixme:wininet:CommitUrlCacheEntryInternal entry already in cache - don't know what to do!
fixme:wininet:CommitUrlCacheEntryInternal entry already in cache - don't know what to do!
fixme:process:GetLogicalProcessorInformation (0x1afe370,0x1afe970): stub
fixme:process:GetLogicalProcessorInformation (0x1afe370,0x1afe970): stub
fixme:process:GetLogicalProcessorInformation (0x1afe370,0x1afe970): stub
fixme:process:GetLogicalProcessorInformation (0x1afe370,0x1afe970): stub
fixme:process:GetLogicalProcessorInformation (0x1afe370,0x1afe970): stub
fixme:process:GetLogicalProcessorInformation (0x1afe370,0x1afe970): stub
fixme:process:GetLogicalProcessorInformation (0x1afe370,0x1afe970): stub
fixme:process:GetLogicalProcessorInformation (0x1afe370,0x1afe970): stub
fixme:process:GetLogicalProcessorInformation (0x1afe370,0x1afe970): stub
fixme:process:GetLogicalProcessorInformation (0x1afe370,0x1afe970): stub
fixme:process:GetLogicalProcessorInformation (0x1afe370,0x1afe970): stub
fixme:process:GetLogicalProcessorInformation (0x1afe370,0x1afe970): stub
fixme:process:GetLogicalProcessorInformation (0x1afe370,0x1afe970): stub
fixme:process:GetLogicalProcessorInformation (0x1afe370,0x1afe970): stub
fixme:process:GetLogicalProcessorInformation (0x1afe370,0x1afe970): stub
fixme:process:GetLogicalProcessorInformation (0x1afe370,0x1afe970): stub
fixme:avrt:AvSetMmThreadCharacteristicsW (L"Pro Audio",0x32f878): stub
fixme:process:GetLogicalProcessorInformation (0x1afe370,0x1afe970): stub
fixme:process:GetLogicalProcessorInformation (0x1afe370,0x1afe970): stub
fixme:process:GetLogicalProcessorInformation (0x1afe370,0x1afe970): stub
fixme:process:GetLogicalProcessorInformation (0x1afe370,0x1afe970): stub
fixme:process:GetLogicalProcessorInformation (0x1afe370,0x1afe970): stub
fixme:process:GetLogicalProcessorInformation (0x1afe370,0x1afe970): stub
fixme:process:GetLogicalProcessorInformation (0x1afe370,0x1afe970): stub
fixme:process:GetLogicalProcessorInformation (0x1afe370,0x1afe970): stub
fixme:process:GetLogicalProcessorInformation (0x1afe370,0x1afe970): stub
fixme:process:GetLogicalProcessorInformation (0x1afe370,0x1afe970): stub
fixme:avrt:AvSetMmThreadCharacteristicsW (L"Pro Audio",0x32f878): stub
fixme:process:GetLogicalProcessorInformation (0x1afe370,0x1afe970): stub
fixme:process:GetLogicalProcessorInformation (0x1afe370,0x1afe970): stub
fixme:process:GetLogicalProcessorInformation (0x1afe370,0x1afe970): stub
fixme:process:GetLogicalProcessorInformation (0x1afe370,0x1afe970): stub
fixme:process:GetLogicalProcessorInformation (0x1afe370,0x1afe970): stub
fixme:process:GetLogicalProcessorInformation (0x1afe370,0x1afe970): stub
Any suggestions?
Nameless One
Level 1
Level 1
Posts: 6
Joined: Thu Jan 19, 2012 1:37 am

Post by Nameless One »

The Wanderer wrote:I am experiencing what appears to be this same problem. However, I am already running a self-compiled Wine, so that alone cannot be the solution in this case.

Any suggestions?
Please note that just compiling Wine yourself is not enough. Wine will compile even if many of seemingly essential libraries are missing. For best results, make sure you support everything you can, meaning every library that Wine can use and it exists as a package for your distro. You can skip libraries that obviously have nothing to do with games, like scanner support, unless you absolutely want to have them as well.

The best way to do this would be to find a Debian compilation guide (in your case) and install everything it lists as dependency. Then start configure script and install everything it says "no" for. You can also use configure script only but a guide would save you a lot of restarts of the script.
The Wanderer
Newbie
Newbie
Posts: 4
Joined: Sun Mar 04, 2012 10:02 am

Post by The Wanderer »

I already did (though I did do it manually, based on the configure output and the config.log error messages, rather than using a guide which might be outdated and/or not apply to my setup). The remaining "feature not enabled" messages from the end of the 32-bit side of the Wine configure process are:

Code: Select all

configure: OpenCL 32-bit development files not found, OpenCL won't be supported.
configure: gstreamer-0.10 base plugins 32-bit development files not found, gstreamer support disabled
configure: libgsm 32-bit development files not found, gsm 06.10 codec won't be supported.

configure: WARNING: libjpeg 32-bit development files not found, JPEG won't be supported.
These are all due to the relevant libraries not being available (in appropriate architectural configurations) via Debian. At a glance, none of them seem likely to be relevant to the problem at hand.

This is with a configure command line of

Code: Select all

../../clean/configure --with-wine64=../wine64
in case it matters. Wine64 was built immediately prior to this build, with a command line of

Code: Select all

../../clean/configure --enable-win64
and the only feature listed as missing in that configuration is OpenCL.
User avatar
dimesio
Moderator
Moderator
Posts: 13367
Joined: Tue Mar 25, 2008 10:30 pm

Post by dimesio »

The Wanderer wrote:

Code: Select all

configure: OpenCL 32-bit development files not found, OpenCL won't be supported.
configure: gstreamer-0.10 base plugins 32-bit development files not found, gstreamer support disabled
configure: libgsm 32-bit development files not found, gsm 06.10 codec won't be supported.

configure: WARNING: libjpeg 32-bit development files not found, JPEG won't be supported.
These are all due to the relevant libraries not being available (in appropriate architectural configurations) via Debian. At a glance, none of them seem likely to be relevant to the problem at hand.
On the contrary, gstreamer support is needed for multimedia playback, and is very relevant to the issue of no sound in the game.
The Wanderer
Newbie
Newbie
Posts: 4
Joined: Sun Mar 04, 2012 10:02 am

Post by The Wanderer »

That would make a certain amount of sense - but I get the same "gstreamer support disabled" message on the laptop, and in-game sound works just fine there.

I'll look into the possibility anyway, but I do think it's the wrong tree up which to bark.
The Wanderer
Newbie
Newbie
Posts: 4
Joined: Sun Mar 04, 2012 10:02 am

Post by The Wanderer »

Okay, this isn't quite the same problem I thought it was at first glance, and probably isn't the same problem described in this thread to begin with.

It turns out that I actually do have proper sound in-game, but for some reason, it's just very, very quiet. The game's volume meter is set near maximum, and winecfg's sound test plays at a normal volume, but in order to hear the game sound properly I have to turn the physical speaker volume dial up far above what anything else has ever required.

Sorry for the noise. I'm still bewildered as to why this happens in the first place, and I'm not 100% convinced there isn't an issue needing attention in the mix somewhere, but at least I have a functional solution.
vitamin
Moderator
Moderator
Posts: 6605
Joined: Sat Feb 23, 2008 2:29 pm

Post by vitamin »

The Wanderer wrote:It turns out that I actually do have proper sound in-game, but for some reason, it's just very, very quiet. The game's volume meter is set near maximum, and winecfg's sound test plays at a normal volume, but in order to hear the game sound properly I have to turn the physical speaker volume dial up far above what anything else has ever required.
Looks like your game might be using wrong channels or wrong device (if you have for example usb headphones).
Locked