[Solved] Wine + Steam + PulseAudio = Fail

Open forum for end-user questions about Wine. Before asking questions, check out the Wiki as a first step.
Forum Rules
Locked
Fazer
Level 3
Level 3
Posts: 80
Joined: Tue Apr 08, 2008 3:12 pm

[Solved] Wine + Steam + PulseAudio = Fail

Post by Fazer »

I have a hard time trying to run any game through Steam on Wine 1.0-rc2 and PulseAudio on Ubuntu 8.04. I already configured it according to this sites:
http://blog.paulbetts.org/index.php/200 ... get-along/ and
http://skoruppa.jogger.pl/2008/05/18/pu ... te-config/ (in Polish, but similar to this one http://ubuntuforums.org/showthread.php?t=789578).

When I do

Code: Select all

padsp wine "C:\Program Files\Steam\Steam.exe"
Steam starts and everything in it runs fine, but when I try to launch a game, I can see in Conky that my second core in CPU is used at 100%, but the game doesn't start. Then I have to end Steam process (I don't want to burn my cpu). I have a debugging info after the shutdown:

Code: Select all

Shutting down. . .
1E: memblock.c: Assertion 'pa_atomic_load(&(b)->_ref) > 0' failed at pulsecore/memblock.c:538, function pa_memblock_unref(). Aborting.
wine: Assertion failed at address 0xb7f78410 (thread 0039), starting debugger...
Unhandled exception: assertion failed in 32-bit code (0xb7f78410).
Register dump:
 CS:0073 SS:007b DS:007b ES:007b FS:0033 GS:003b
 EIP:b7f78410 ESP:7baed5c0 EBP:7baed5dc EFLAGS:00000202(   - 00      - - I1)
 EAX:00000000 EBX:00003ed6 ECX:00003f6d EDX:00000006
 ESI:00003ed6 EDI:b7deeff4
Stack dump:
0x7baed5c0:  7baed5dc 00000006 00003f6d b7ccf085
0x7baed5d0:  b7deeff4 7baed67c 7baeeb90 7baed708
0x7baed5e0:  b7cd0a01 00000006 7baed67c 00000000
0x7baed5f0:  00000005 00000000 00000001 b7c7675b
0x7baed600:  ffffffff 787f7858 b7c57810 b7e0b558
0x7baed610:  7baed650 b7deeff4 7baed6a0 7baed6e0
Backtrace:
=>1 0xb7f78410 (0x7baed5dc)
  2 0xb7cd0a01 abort+0x101() in libc.so.6 (0x7baed708)
  3 0xb7c841a8 in libpulse.so.0 (+0x2e1a8) (0x7baed758)
  4 0xb7c872f8 in libpulse.so.0 (+0x312f8) (0x7baed798)
  5 0xb7c87487 in libpulse.so.0 (+0x31487) (0x7baed7e8)
  6 0xb7c87bd6 in libpulse.so.0 (+0x31bd6) (0x7baed828)
  7 0xb7c6daa6 pa_stream_unref+0xb6() in libpulse.so.0 (0x7baed868)
  8 0xb7c5efcb in libpulse.so.0 (+0x8fcb) (0x7baed8a8)
  9 0xb7c5f10f pa_context_disconnect+0x2f() in libpulse.so.0 (0x7baed8d8)
  10 0xb7f5546e in libpulsedsp.so (+0x546e) (0x7baed908)
  11 0xb7f557ac close+0x4c() in libpulsedsp.so (0x7baed928)
  12 0x7e1ea40d in wineoss (+0xa40d) (0x7baed988)
  13 0x7e1ea86a in wineoss (+0xa86a) (0x7baed9d8)
  14 0x7e1ea9f6 in wineoss (+0xa9f6) (0x7baeda38)
  15 0x7bc6aeae call_thread_entry_point+0xe() in ntdll (0x7baeda48)
  16 0x7bc6b542 in ntdll (+0x5b542) (0x7baedae8)
  17 0x7bc6b772 in ntdll (+0x5b772) (0x7baee3d8)
  18 0xb7df84fb start_thread+0xcb() in libpthread.so.0 (0x7baee4c8)
0xb7f78410: popl	%ebp
Modules:
Module	Address			Debug info	Name (205 modules)
PE	  3a0000-  3df000	Deferred        tier0_s
PE	  400000-  53d000	Deferred        steam
PE	  a90000-  b0a000	Deferred        vstdlib_s
PE	 d530000- d563000	Deferred        filesystem_steam
PE	 e490000- e705000	Deferred        steamclient
PE	 e750000- e9ef000	Deferred        p2pcore
PE	 e9f0000- eb4c000	Deferred        p2pvoice
PE	 ed80000- ee1f000	Deferred        steamservice
PE	 f460000- f466000	Deferred        xpcom
PE	 f470000- f4d9000	Deferred        xpcom_core
PE	 f4e0000- f507000	Deferred        nspr4
PE	 f510000- f517000	Deferred        plc4
PE	 f520000- f526000	Deferred        plds4
PE	 f530000- f53f000	Deferred        jsd3250
PE	 f540000- f575000	Deferred        xpc3250
PE	 f580000- f5a0000	Deferred        ssl3
PE	 f5a0000- f5a6000	Deferred        mozctlx
PE	 fc60000- fc84000	Deferred        gkplugin
PE	 fc90000- fcf4000	Deferred        editor
PE	 fd00000- fd07000	Deferred        txmgr
PE	 fd10000- fd1e000	Deferred        spellchk
PE	 fd20000- fd2e000	Deferred        composer
PE	 fd30000- fd3a000	Deferred        myspell
PE	 fdd0000- fdea000	Deferred        mork
PE	10b20000-10b5f000	Deferred        softokn3
PE	10b90000-10c01000	Deferred        js3250
PE	10c10000-10c6b000	Deferred        nss3
PE	10c70000-10ca1000	Deferred        freebl3
PE	10cb0000-10cca000	Deferred        smime3
PE	10cd0000-10ce1000	Deferred        mozz
PE	10cf0000-10d04000	Deferred        xpcom_compat
PE	10d10000-10d16000	Deferred        xpistub
PE	10d20000-10d36000	Deferred        gkgfx
PE	10d40000-10d7e000	Deferred        nssckbi
PE	10d80000-10d93000	Deferred        jsj3250
PE	10da0000-10e1d000	Deferred        necko
PE	10e20000-10e2c000	Deferred        xppref32
PE	10e30000-10e5e000	Deferred        i18n
PE	10f70000-10f8f000	Deferred        embedcomponents
PE	10f90000-10f9f000	Deferred        caps
PE	10fa0000-10fac000	Deferred        typeaheadfind
PE	10fb0000-11249000	Deferred        gklayout
PE	11250000-11277000	Deferred        imglib2
PE	11280000-1129b000	Deferred        rdf
PE	112a0000-112d8000	Deferred        appcomps
PE	112e0000-112f0000	Deferred        appshell
PE	112f0000-112ff000	Deferred        profile
PE	11300000-11307000	Deferred        xpcom_compat_c
PE	11310000-11317000	Deferred        sroaming
PE	11320000-11330000	Deferred        chrome
PE	11330000-11369000	Deferred        gkparser
PE	11370000-1142e000	Deferred        uconv
PE	11430000-1145c000	Deferred        docshell
PE	11460000-1146a000	Deferred        nsprefm
PE	11470000-1147e000	Deferred        webbrwsr
PE	11480000-114a5000	Deferred        gkwidget
PE	114b0000-114d4000	Deferred        gkgfxwin
PE	114e0000-114e8000	Deferred        pipboot
PE	114f0000-114fc000	Deferred        oji
PE	11610000-1161d000	Deferred        jar50
PE	11620000-11629000	Deferred        cookie
PE	11980000-11d16000	Deferred        npswf32
PE	12e40000-12e81000	Deferred        ~fd1a.tmp
PE	21100000-211ad000	Deferred        mss32_s
PE	30000000-302e6000	Deferred        steam
PE	60000000-60021000	Deferred        cserhelper
ELF	78989000-7949e000	Deferred        libglcore.so.1
ELF	7949e000-79542000	Deferred        libgl.so.1
ELF	79be0000-79c00000	Deferred        mlang<elf>
  \-PE	79bf0000-79c00000	\               mlang
ELF	7a3c8000-7a431000	Deferred        msvcrt<elf>
  \-PE	7a3e0000-7a431000	\               msvcrt
ELF	7b435000-7b4d5000	Deferred        mshtml<elf>
  \-PE	7b440000-7b4d5000	\               mshtml
ELF	7b7e7000-7b7f2000	Deferred        libgcc_s.so.1
ELF	7b800000-7b92d000	Deferred        kernel32<elf>
  \-PE	7b820000-7b92d000	\               kernel32
ELF	7b963000-7b9a2000	Deferred        urlmon<elf>
  \-PE	7b970000-7b9a2000	\               urlmon
ELF	7b9a2000-7b9de000	Deferred        shdocvw<elf>
  \-PE	7b9b0000-7b9de000	\               shdocvw
ELF	7bc00000-7bca4000	Export          ntdll<elf>
  \-PE	7bc10000-7bca4000	\               ntdll
ELF	7bcc2000-7bcc8000	Deferred        libnss_dns.so.2
ELF	7bcc8000-7bcde000	Deferred        msimtf<elf>
  \-PE	7bcd0000-7bcde000	\               msimtf
ELF	7bf00000-7bf03000	Deferred        <wine-loader>
ELF	7bf0a000-7bf0c000	Deferred        libnvidia-tls.so.1
ELF	7bf32000-7bf6c000	Deferred        rsaenh<elf>
  \-PE	7bf40000-7bf6c000	\               rsaenh
ELF	7bf6c000-7bfb6000	Deferred        dsound<elf>
  \-PE	7bf70000-7bfb6000	\               dsound
ELF	7bfb6000-7c000000	Deferred        dbghelp<elf>
  \-PE	7bfc0000-7c000000	\               dbghelp
ELF	7c0dd000-7c0e0000	Deferred        libnss_mdns4_minimal.so.2
ELF	7c20c000-7c232000	Deferred        netapi32<elf>
  \-PE	7c210000-7c232000	\               netapi32
ELF	7c232000-7c259000	Deferred        secur32<elf>
  \-PE	7c240000-7c259000	\               secur32
ELF	7c259000-7c2c1000	Deferred        crypt32<elf>
  \-PE	7c260000-7c2c1000	\               crypt32
ELF	7c2c1000-7c2e2000	Deferred        mpr<elf>
  \-PE	7c2d0000-7c2e2000	\               mpr
ELF	7c2e2000-7c330000	Deferred        wininet<elf>
  \-PE	7c2f0000-7c330000	\               wininet
ELF	7cc44000-7cc5e000	Deferred        wsock32<elf>
  \-PE	7cc50000-7cc5e000	\               wsock32
ELF	7d81c000-7d831000	Deferred        psapi<elf>
  \-PE	7d820000-7d831000	\               psapi
ELF	7d831000-7d845000	Deferred        midimap<elf>
  \-PE	7d840000-7d845000	\               midimap
ELF	7d845000-7d8d7000	Deferred        winmm<elf>
  \-PE	7d850000-7d8d7000	\               winmm
ELF	7e198000-7e1be000	Deferred        msacm32<elf>
  \-PE	7e1a0000-7e1be000	\               msacm32
ELF	7e1be000-7e1d5000	Deferred        msacm32<elf>
  \-PE	7e1c0000-7e1d5000	\               msacm32
ELF	7e1d5000-7e210000	Export          wineoss<elf>
  \-PE	7e1e0000-7e210000	\               wineoss
ELF	7e283000-7e2b6000	Deferred        uxtheme<elf>
  \-PE	7e290000-7e2b6000	\               uxtheme
ELF	7e2b6000-7e2ba000	Deferred        libgpg-error.so.0
ELF	7e2ba000-7e307000	Deferred        libgcrypt.so.11
ELF	7e307000-7e317000	Deferred        libtasn1.so.3
ELF	7e317000-7e31a000	Deferred        libkeyutils.so.1
ELF	7e31a000-7e34c000	Deferred        libcrypt.so.1
ELF	7e34c000-7e3c2000	Deferred        libgnutls.so.13
ELF	7e3c2000-7e3e5000	Deferred        libk5crypto.so.3
ELF	7e3e5000-7e472000	Deferred        libkrb5.so.3
ELF	7e472000-7e49b000	Deferred        libgssapi_krb5.so.2
ELF	7e49b000-7e4ce000	Deferred        libcups.so.2
ELF	7e4dc000-7e4e5000	Deferred        libxcursor.so.1
ELF	7e4e5000-7e4ea000	Deferred        libxfixes.so.3
ELF	7e4ea000-7e4ed000	Deferred        libxcomposite.so.1
ELF	7e4ed000-7e4f5000	Deferred        libxrender.so.1
ELF	7e4f5000-7e515000	Deferred        imm32<elf>
  \-PE	7e500000-7e515000	\               imm32
ELF	7e515000-7e523000	Deferred        libxext.so.6
ELF	7e524000-7e52c000	Deferred        libkrb5support.so.0
ELF	7e52c000-7e52f000	Deferred        libcom_err.so.2
ELF	7e531000-7e5c8000	Deferred        winex11<elf>
  \-PE	7e540000-7e5c8000	\               winex11
ELF	7e606000-7e627000	Deferred        libexpat.so.1
ELF	7e627000-7e651000	Deferred        libfontconfig.so.1
ELF	7e651000-7e657000	Deferred        libxrandr.so.2
ELF	7e65f000-7e674000	Deferred        libz.so.1
ELF	7e674000-7e6e4000	Deferred        libfreetype.so.6
ELF	7e6e5000-7e6e8000	Deferred        libxinerama.so.1
ELF	7e6f2000-7e706000	Deferred        oleacc<elf>
  \-PE	7e700000-7e706000	\               oleacc
ELF	7e706000-7e71a000	Deferred        lz32<elf>
  \-PE	7e710000-7e71a000	\               lz32
ELF	7e71a000-7e733000	Deferred        version<elf>
  \-PE	7e720000-7e733000	\               version
ELF	7e733000-7e75a000	Deferred        oledlg<elf>
  \-PE	7e740000-7e75a000	\               oledlg
ELF	7e75a000-7e7fc000	Deferred        oleaut32<elf>
  \-PE	7e770000-7e7fc000	\               oleaut32
ELF	7e7fc000-7e85d000	Deferred        rpcrt4<elf>
  \-PE	7e810000-7e85d000	\               rpcrt4
ELF	7e85d000-7e901000	Deferred        ole32<elf>
  \-PE	7e870000-7e901000	\               ole32
ELF	7e901000-7e9c0000	Deferred        comctl32<elf>
  \-PE	7e910000-7e9c0000	\               comctl32
ELF	7e9c0000-7ea19000	Deferred        shlwapi<elf>
  \-PE	7e9d0000-7ea19000	\               shlwapi
ELF	7ea19000-7eb28000	Deferred        shell32<elf>
  \-PE	7ea30000-7eb28000	\               shell32
ELF	7eb28000-7ebd3000	Deferred        comdlg32<elf>
  \-PE	7eb30000-7ebd3000	\               comdlg32
ELF	7ebd3000-7ec09000	Deferred        winspool<elf>
  \-PE	7ebe0000-7ec09000	\               winspool
ELF	7ec09000-7eca4000	Deferred        gdi32<elf>
  \-PE	7ec20000-7eca4000	\               gdi32
ELF	7eca4000-7edeb000	Deferred        user32<elf>
  \-PE	7ecc0000-7edeb000	\               user32
ELF	7edeb000-7ee3d000	Deferred        advapi32<elf>
  \-PE	7ee00000-7ee3d000	\               advapi32
ELF	7ee3d000-7ee50000	Deferred        libresolv.so.2
ELF	7ee50000-7ee6e000	Deferred        iphlpapi<elf>
  \-PE	7ee60000-7ee6e000	\               iphlpapi
ELF	7ee6e000-7ee9a000	Deferred        ws2_32<elf>
  \-PE	7ee80000-7ee9a000	\               ws2_32
ELF	7ee9a000-7eea5000	Deferred        libnss_files.so.2
ELF	7eea5000-7eeaf000	Deferred        libnss_nis.so.2
ELF	7eeaf000-7eec7000	Deferred        libnsl.so.1
ELF	7eec7000-7eed0000	Deferred        libnss_compat.so.2
ELF	7eed1000-7eed6000	Deferred        libxxf86vm.so.1
ELF	b7af5000-b7afa000	Deferred        libxdmcp.so.6
ELF	b7afa000-b7afd000	Deferred        libxau.so.6
ELF	b7afd000-b7b15000	Deferred        libxcb.so.1
ELF	b7b16000-b7b18000	Deferred        libxcb-xlib.so.0
ELF	b7b18000-b7bff000	Deferred        libx11.so.6
ELF	b7bff000-b7c17000	Deferred        libice.so.6
ELF	b7c17000-b7c1f000	Deferred        libsm.so.6
ELF	b7c1f000-b7c44000	Deferred        libm.so.6
ELF	b7c45000-b7c49000	Deferred        libdl.so.2
ELF	b7c49000-b7c52000	Deferred        librt.so.1
ELF	b7c52000-b7c56000	Deferred        libcap.so.1
ELF	b7c56000-b7ca4000	Export          libpulse.so.0
ELF	b7ca4000-b7df3000	Export          libc.so.6
ELF	b7df3000-b7e0b000	Export          libpthread.so.0
ELF	b7e1a000-b7f50000	Deferred        libwine.so.1
ELF	b7f50000-b7f5a000	Export          libpulsedsp.so
ELF	b7f5c000-b7f78000	Deferred        ld-linux.so.2
Threads:
process  tid      prio (all id:s are in hex)
0000000c 
	00000012    0
	0000000e    0
	0000000d    0
0000000f 
	00000016    0
	00000015    0
	00000011    0
	00000010    0
00000017 
	00000018    0
00000020 (D) C:\Program Files\Steam\Steam.exe
	00000060    0
	0000005c    0
	0000005b    0
	0000005a    0
	00000059    1
	00000058    0
	00000057    0
	00000056    0
	00000055    1
	00000054    0
	00000053    1
	00000052    0
	00000051    1
	00000050    0
	0000004f    1
	0000004e    0
	0000004d    1
	0000004c    0
	0000004b    1
	0000004a    0
	00000049    1
	00000048    0
	00000013    1
	00000019    0
	0000001f    1
	0000000b    0
	0000002d    1
	00000040    0
	0000003c    0
	0000003d    0
	0000003e    0
	0000001e    0
	0000001b    0
	00000009    0
	0000001a    0
	00000045    0
	00000044    0
	00000042    0
	00000041    1
	0000003b   15
	00000039   15 <==
	00000038   15
	00000035   15
	00000033    0
	00000031    0
	00000030    0
	0000002f    0
	00000029    0
	00000026    0
	00000025    0
	00000024    0
	00000023    0
	00000022    0
	00000021    0
Backtrace:
=>1 0xb7f78410 (0x7baed5dc)
  2 0xb7cd0a01 abort+0x101() in libc.so.6 (0x7baed708)
  3 0xb7c841a8 in libpulse.so.0 (+0x2e1a8) (0x7baed758)
  4 0xb7c872f8 in libpulse.so.0 (+0x312f8) (0x7baed798)
  5 0xb7c87487 in libpulse.so.0 (+0x31487) (0x7baed7e8)
  6 0xb7c87bd6 in libpulse.so.0 (+0x31bd6) (0x7baed828)
  7 0xb7c6daa6 pa_stream_unref+0xb6() in libpulse.so.0 (0x7baed868)
  8 0xb7c5efcb in libpulse.so.0 (+0x8fcb) (0x7baed8a8)
  9 0xb7c5f10f pa_context_disconnect+0x2f() in libpulse.so.0 (0x7baed8d8)
  10 0xb7f5546e in libpulsedsp.so (+0x546e) (0x7baed908)
  11 0xb7f557ac close+0x4c() in libpulsedsp.so (0x7baed928)
  12 0x7e1ea40d in wineoss (+0xa40d) (0x7baed988)
  13 0x7e1ea86a in wineoss (+0xa86a) (0x7baed9d8)
  14 0x7e1ea9f6 in wineoss (+0xa9f6) (0x7baeda38)
  15 0x7bc6aeae call_thread_entry_point+0xe() in ntdll (0x7baeda48)
  16 0x7bc6b542 in ntdll (+0x5b542) (0x7baedae8)
  17 0x7bc6b772 in ntdll (+0x5b772) (0x7baee3d8)
  18 0xb7df84fb start_thread+0xcb() in libpthread.so.0 (0x7baee4c8)
Last edited by Fazer on Mon Jun 02, 2008 4:26 pm, edited 1 time in total.
Marcel W. Wysocki

Wine + Steam + PulseAudio = Fail

Post by Marcel W. Wysocki »

Pulseaudio is fail in general, its not compatible with wine
don't use it!


--
Marcel W. Wysocki <[email protected]>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 197 bytes
Desc: not available
Url : http://www.winehq.org/pipermail/wine-us ... chment.pgp
Fazer
Level 3
Level 3
Posts: 80
Joined: Tue Apr 08, 2008 3:12 pm

Post by Fazer »

I don't think it's that bad, but Ubuntu developers "forgot" to configure it in Ubuntu Hardy so everyone has to do it by themselves.

But when I run Steam without PulseAudio (I hope so) with:

Code: Select all

wine "C:\Program Files\Steam\Steam.exe"
Steam runs fine, the games launch fine, but there is no in-game sound. I read about a workaround - play some music while Steam starts, so that it won't "steal" the sound - but is their a proper solution to this issue?
oisin
Level 1
Level 1
Posts: 7
Joined: Sat Mar 01, 2008 10:35 pm

Post by oisin »

try running it with pasuspender, it disables pulseaudio while a app runs.

Code: Select all

pasuspender wine <myapp>
vitamin
Moderator
Moderator
Posts: 6605
Joined: Sat Feb 23, 2008 2:29 pm

Re: Wine + Steam + PulseAudio = Fail

Post by vitamin »

Both Steam and the game using sound. If you chose OSS on most setups (hardware + driver) you will be limited to one application using sound at a time.
ronoverdrive
Newbie
Newbie
Posts: 4
Joined: Sat May 31, 2008 8:06 pm

Post by ronoverdrive »

Make sure you have the PulseAudio ESD plugin and run winecfg then set your audio device to ESound. Thats how I get sound in WINE under PulseAudio.
ronoverdrive
Newbie
Newbie
Posts: 4
Joined: Sat May 31, 2008 8:06 pm

Post by ronoverdrive »

(sorry double post)
delt
Newbie
Newbie
Posts: 3
Joined: Fri May 30, 2008 3:29 pm

Post by delt »

What sound card do you have? Does the driver support multiple PCM channels at the same time? (ie. SB live, audigy, etc.)
Fazer
Level 3
Level 3
Posts: 80
Joined: Tue Apr 08, 2008 3:12 pm

Post by Fazer »

Problem solved!

After many trials and searches on the internet I've stumbled upon this site http://appdb.winehq.org/objectManager.p ... n&iId=1554 and this post:

"The problem was in locking sound device by Steam, so the games that started after can not use sound. I've disposed of this problem by setting wine to use no sound driver when launching Steam. Then after enabling it the games works with sound."

So I run Wine configurator, unchecked all sound drivers, launched Steam, after it loaded I checked OSS driver, run Team Fortress 2 and had sound! Thank you, Anonymous... I mean, Jay ;-)

BTW I have Razer Barracuda AC-1 sound card which uses C-Media CMI8788 chipset.
Locked