[Linux] No sound

develdevel Join Date: 2014-09-13 Member: 198444Members
Current Ubuntu 15.04.

Earlier (maybe on Ubuntu 14.04 or maybe because of different NS2 build), I had around 50% probability that game launches with sound.

Now on every launch there is no sound.

MSI Z97 Pc Mate LGA1150 motherboard.
Date: 07/19/2015
Time: 09:59:38 PM:
--------------------------------------------------------------
Build 274
Ubuntu x86_64
Steam initialized
Num displays: 1
OpenGL 3.1.0 NVIDIA 340.76 initialized (NVIDIA Corporation GeForce GTX 760/PCIe/SSE2)
GLSL version 1.40 NVIDIA via Cg compiler
ARB_texture_storage extension present
ARB_get_program_binary extension present
[  0.620] MainThread : Error: eventSystem->init (Error initializing output device. )
[  0.620] MainThread : Error: SoundSystem::Initialize - Failed to initialize FMOD event system
Sound disabled
Loading config://ConsoleBindings.json
[  1.818] Worker 03 : Error: Couldn't load 'sound/NS2.fev'
[  1.818] Worker 03 : Error: Couldn't load 'sound/NS2.fev/alien/infestation/build' (project didn't exist)
Loading config://FavoriteServers.json
Loading config://HistoryServers.json
[  1.871] Worker 03 : Error: CreateDSP:createDSPByType (This command failed because System::init or System::setDriver was not called. )
[  1.871] Worker 03 : Error: CreateDSP:createDSPByType (This command failed because System::init or System::setDriver was not called. )
[  1.871] Worker 03 : Error: CreateDSP:addDSP (An invalid object handle was used. )
[  1.871] Worker 03 : Error: CreateDSP:addDSP (An invalid object handle was used. )
[  1.871] Worker 03 : Error: SetDSPFloatParameter(getParameterInfo) (An invalid object handle was used. )
[  1.871] Worker 03 : Error: SetDSPFloatParameter(getParameterInfo) (An invalid object handle was used. )
[  1.871] Worker 03 : Error: SetDSPFloatParameter(getParameterInfo) (An invalid object handle was used. )
[  1.871] Worker 03 : Error: SetDSPFloatParameter(getParameterInfo) (An invalid object handle was used. )
[  1.871] Worker 03 : Error: CreateDSP:createDSPByType (This command failed because System::init or System::setDriver was not called. )
[  1.871] Worker 03 : Error: CreateDSP:createDSPByType (This command failed because System::init or System::setDriver was not called. )
[  1.871] Worker 03 : Error: CreateDSP:addDSP (An invalid object handle was used. )
[  1.871] Worker 03 : Error: CreateDSP:addDSP (An invalid object handle was used. )
[  1.871] Worker 03 : Error: SetDSPActive:setBypass() (An invalid object handle was used. )
[  1.871] Worker 03 : Error: SetDSPFloatParameter(getParameterInfo) (An invalid object handle was used. )
Resampling uncompressed animations at 1/2 frame rate to conserve memory
Main Menu Initialized at Version: 274
Steam Id: 53953834
[  3.196] MainThread : Error: Couldn't load 'sound/NS2.fev'
[  3.196] MainThread : Error: Couldn't load 'sound/NS2.fev/common/menu_loop' (project didn't exist)
[  4.509] MainThread : Error: Couldn't load 'sound/NS2.fev'
[  4.509] MainThread : Error: Couldn't load 'sound/NS2.fev/common/hovar' (project didn't exist)
[  4.510] ClientGame::UpdateWorld : Error: Couldn't load 'sound/NS2.fev'
[  4.510] ClientGame::UpdateWorld : Error: Couldn't load 'sound/NS2.fev/ambient/beep' (project didn't exist)
[  4.911] MainThread : Error: Attempted to load remote options from a file that does not exist.
CinematicsUpdate: exit
ClientGame::UpdateWorld: exit
CollectGarbage: exit

Comments

  • GhoulofGSG9GhoulofGSG9 Join Date: 2013-03-31 Member: 184566Members, Super Administrators, Forum Admins, Forum Moderators, NS2 Developer, NS2 Playtester, Squad Five Blue, Squad Five Silver, Reinforced - Supporter, WC 2013 - Supporter, Pistachionauts
    edited July 2015
    Try to remove "~/.steam/steam/ubuntu12_32/steam-runtime/i386/usr/lib/i386-linux-gnu/libasound" and see if that helps.

    Otherwise you might want to look into using the last stable version of Pulseaudio.
  • develdevel Join Date: 2014-09-13 Member: 198444Members
    Deleting alsa-lib or libasound.so.2 and libasound.so.2.0.0 or all of them doesn't help.

    PulseAudio is at 6.0. It is the last version.
  • rkfgrkfg Russia Join Date: 2013-09-03 Member: 187744Members, Reinforced - Supporter, Reinforced - Silver, Reinforced - Gold, Reinforced - Diamond, Reinforced - Shadow
    edited July 2015
    So, the update came out and now NS2 doesn't even launch on Linux. The main issue I suppose is this:
    ns2_linux32: async.c:163: snd_async_del_handler: Assertion `0' failed.
    Aborted
    

    NS2 doesn't work with the Steam Runtime correctly. To make it run at least I had to copy /usr/lib/i386-linux-gnu/libasound.so.2.0.0 to the game root directory and make a symlink libasound.so.2 -> libasound.so.2.0.0

    This way it starts but there's no sound just as @devel said. When it works, log.txt is pretty small:
    Date: 07/29/2015
    Time: 08:51:15 PM:
    --------------------------------------------------------------
    [  0.002] Unbound/Unknown : Filesystem initialized, cache enabled
    Build 275
    Linux
    Steam initialized
    Num displays: 1
    OpenGL 3.1.0 NVIDIA 352.21 initialized (NVIDIA Corporation GeForce GTX 770/PCIe/SSE2)
    GLSL version 1.40 NVIDIA via Cg compiler
    ARB_texture_storage extension present
    ARB_get_program_binary extension present
    [  0.338] MainThread : Error: SoundSystem::GetDeviceByGuid - failed to find device by GUID
    [  0.338] MainThread : Error: SoundSystem::Initialize - failed to set number of FMOD channels
    [  0.393] MainThread : Error: SoundSystem::GetDeviceByGuid - failed to find device by GUID
    Sound Device: disabled stereo
    Record Device: disabled
    Loading config://ConsoleBindings.json
    Loading config://FavoriteServers.json
    Loading config://HistoryServers.json
    Main Menu Initialized at Version: 275
    Steam Id: 36893399
    [ 14.613] MainThread : Error: Attempted to load remote options from a file that does not exist.
    CinematicsUpdate: exit
    ClientGame::UpdateWorld: exit
    CollectGarbage: exit
    

    I've already verified the game cache, everything is fine.
  • rkfgrkfg Russia Join Date: 2013-09-03 Member: 187744Members, Reinforced - Supporter, Reinforced - Silver, Reinforced - Gold, Reinforced - Diamond, Reinforced - Shadow
    edited July 2015
    I'm messing with FMOD right now and I'm getting that "(project didn't exist)" with version 4.42.21, it's very possible that you have FMOD libs somewhere in the library path (/usr/lib, /usr/lib/i386-linux-gnu and so on) so they're loaded instead of the shipped ones. I've also tried the latest version (4.44.55) without any success. It's available for free, so you may try it as well. Find and copy libfmodex-VER.so, libfmodevent-VER.so and libfmodeventnet-VER.so to the game dir and symlink them with an oneliner like this:
    VER=4.44.55; ln -sf libfmodex-$VER.so libfmodex.so; ln -sf libfmodevent-$VER.so libfmodevent.so; ln -sf libfmodeventnet-$VER.so libfmodeventnet.so
    
  • rkfgrkfg Russia Join Date: 2013-09-03 Member: 187744Members, Reinforced - Supporter, Reinforced - Silver, Reinforced - Gold, Reinforced - Diamond, Reinforced - Shadow
    So, got it running OK. Could probably help @devel as well. The game currently doesn't support the Steam Runtime for whatever reason so I had to use the system libasound2 library (I symlinked it even simpler: libasound.so.2 -> /usr/lib/i386-linux-gnu/libasound.so.2.0.0). The quirk was that I also had to install libasound2-plugins:i386 of the same version because I'm using the system's libasound2.0.0.so so the pulseaudio redirect should also be installed and the game is 32-bit. Now it runs and plays sound. All those "project didn't exist" messages are possibly false as they appear also when I mess with these alsa libs, not just FMOD.
  • WasabiOneWasabiOne Co-Lead NS2 CDT Join Date: 2011-06-15 Member: 104623Members, NS2 Developer, NS2 Playtester, Squad Five Gold, NS2 Map Tester, Reinforced - Supporter, Reinforced - Silver, Reinforced - Gold, Reinforced - Diamond, Reinforced - Shadow, WC 2013 - Shadow, Subnautica Playtester, Pistachionauts
    thanks, I have put this in front of the programmers to look at.
  • ceribikceribik Join Date: 2009-11-24 Member: 69492Members, Reinforced - Supporter, Reinforced - Silver
    Worked fine for me by default on Arch Linux.
  • rkfgrkfg Russia Join Date: 2013-09-03 Member: 187744Members, Reinforced - Supporter, Reinforced - Silver, Reinforced - Gold, Reinforced - Diamond, Reinforced - Shadow
    ceribik wrote: »
    Worked fine for me by default on Arch Linux.
    That's interesting. Do you by any chance use the beta version of Steam? It may include newer libs. Could you provide an MD5 of %steamroot%/ubuntu12_32/steam-runtime/i386/usr/lib/i386-linux-gnu/libasound.so.2.0.0
    please? For me it's 7dc6b3a901c307d853160b7bd786a718.
  • AsranielAsraniel Join Date: 2002-06-03 Member: 724Members, Playtest Lead, Forum Moderators, NS2 Playtester, Squad Five Blue, Reinforced - Shadow, WC 2013 - Shadow, Subnautica Playtester, Retired Community Developer
    Any information on this would be great. Its really hard to debug the issues on all individual linux distributions
  • rkfgrkfg Russia Join Date: 2013-09-03 Member: 187744Members, Reinforced - Supporter, Reinforced - Silver, Reinforced - Gold, Reinforced - Diamond, Reinforced - Shadow
    @Asraniel, it says that assertion failed in async.c at line 163. It's something inside the engine. Do you have the game running on current Steam Runtime, not beta? It's made especially to eliminate distro differences after all. Also, I have two soundcards, one is a simple HDA Intel and another one is Creative Live 7.1 24bit. Only the latter is actually used and it's set as the only output device in pavucontrol.
  • develdevel Join Date: 2014-09-13 Member: 198444Members
    edited July 2015
    Thank you.

    New NS2 build doesn't crash for me. But the sound problem is the same.

    Workaround to link libasound in "SteamApps/common/Natural Selection 2" works:
    ln -sT /usr/lib/i386-linux-gnu/libasound.so.2.0.0 libasound.so.2
    
  • ceribikceribik Join Date: 2009-11-24 Member: 69492Members, Reinforced - Supporter, Reinforced - Silver
    rkfg wrote: »
    ceribik wrote: »
    Worked fine for me by default on Arch Linux.
    That's interesting. Do you by any chance use the beta version of Steam? It may include newer libs. Could you provide an MD5 of %steamroot%/ubuntu12_32/steam-runtime/i386/usr/lib/i386-linux-gnu/libasound.so.2.0.0
    please? For me it's 7dc6b3a901c307d853160b7bd786a718.

    Not using steam beta and I couldn't find that lib in that folder, but i found the same file with the same md5sum in
    ./bin32/steam-runtime/i386/usr/lib/i386-linux-gnu/libasound.so.2.0.0
  • rkfgrkfg Russia Join Date: 2013-09-03 Member: 187744Members, Reinforced - Supporter, Reinforced - Silver, Reinforced - Gold, Reinforced - Diamond, Reinforced - Shadow
    That's not strange anymore, that's weird. I don't even have that bin32 directory, only ubuntu12_32. There's a chance that some time ago Steam renamed these directories to drop the Ubuntu legacy and I'm just using the old "base" version, i.e. the part of Steam that doesn't change across the updates. I don't know if Steam actually updates like this so I'm guessing. Reisntalling it is a time consuming task.
  • ceribikceribik Join Date: 2009-11-24 Member: 69492Members, Reinforced - Supporter, Reinforced - Silver
    rkfg wrote: »
    That's not strange anymore, that's weird. I don't even have that bin32 directory, only ubuntu12_32. There's a chance that some time ago Steam renamed these directories to drop the Ubuntu legacy and I'm just using the old "base" version, i.e. the part of Steam that doesn't change across the updates. I don't know if Steam actually updates like this so I'm guessing. Reisntalling it is a time consuming task.

    This is a new installation from ~ month ago and so that is probably why. I actually used to have the sound issue on my old arch desktop, but I fixed it by overriding the steam libraries as I've described here:
    https://wiki.archlinux.org/index.php/Steam/Game-specific_troubleshooting#Natural_Selection_2
  • mockmock Germany Join Date: 2014-03-28 Member: 195015Members, NS2 Playtester
    Hej ho.
    My sound stopped working a week ago. It took me a week to figure out that it was Arch's fault. Arch updated pulseaudio from 6.99 to 7.0. But it seems pulseaudio 7 does not work with NS2. Maybe just a missing dependency? If so, it would me much appreciated if the devs would consider it in the next update.
  • ceribikceribik Join Date: 2009-11-24 Member: 69492Members, Reinforced - Supporter, Reinforced - Silver
    mock wrote: »
    Hej ho.
    My sound stopped working a week ago. It took me a week to figure out that it was Arch's fault. Arch updated pulseaudio from 6.99 to 7.0. But it seems pulseaudio 7 does not work with NS2. Maybe just a missing dependency? If so, it would me much appreciated if the devs would consider it in the next update.

    I had the exact same issue and just downgraded to 6.x in the meantime (and blacklisted pulseaudio from updating). I imagine this will affect the more friendly distros in the future once they update to PA 7.
  • rkfgrkfg Russia Join Date: 2013-09-03 Member: 187744Members, Reinforced - Supporter, Reinforced - Silver, Reinforced - Gold, Reinforced - Diamond, Reinforced - Shadow
    My PulseAudio version is 7.0-1 and I have zero problem with NS2 now. Maybe your libasound2-plugins (as it's called in Debian) package is outdated/missing? It contains PA helpers that reroute sound from pure ALSA to PA, namely libasound_module_pcm_pulse.so, libasound_module_ctl_pulse.so and libasound_module_conf_pulse.so. You'd probably want it for both amd64 and i386 if you're on 64 bit OS. As @devel suggested, a symlink for libasound.so.2 might be required. FMOD still can't use PulseAudio directly, unfortunately.

    After all, check if NS2 is using PA at all (and not just talks to hardware directly via hw:0) with pavucontrol or my small humble utility.
  • rkfgrkfg Russia Join Date: 2013-09-03 Member: 187744Members, Reinforced - Supporter, Reinforced - Silver, Reinforced - Gold, Reinforced - Diamond, Reinforced - Shadow
    BTW, the game still crashes without that libasound.so.2 symlink. Yes, with the very latest update. The error message is the same, lots of errors from ALSA lib and then assertion error:
    ALSA lib conf.c:4571:(parse_args) Unknown parameter CARD
    ALSA lib conf.c:4704:(snd_config_expand) Parse arguments error: No such file or directory
    ALSA lib conf.c:4571:(parse_args) Unknown parameter CARD
    ALSA lib conf.c:4704:(snd_config_expand) Parse arguments error: No such file or directory
    ALSA lib conf.c:4571:(parse_args) Unknown parameter CARD
    ALSA lib conf.c:4704:(snd_config_expand) Parse arguments error: No such file or directory
    ALSA lib conf.c:4571:(parse_args) Unknown parameter CARD
    ALSA lib conf.c:4704:(snd_config_expand) Parse arguments error: No such file or directory
    ALSA lib conf.c:4571:(parse_args) Unknown parameter CARD
    ALSA lib conf.c:4704:(snd_config_expand) Parse arguments error: No such file or directory
    ALSA lib conf.c:4571:(parse_args) Unknown parameter CARD
    ALSA lib conf.c:4704:(snd_config_expand) Parse arguments error: No such file or directory
    ALSA lib conf.c:4571:(parse_args) Unknown parameter CARD
    ALSA lib conf.c:4704:(snd_config_expand) Parse arguments error: No such file or directory
    ALSA lib conf.c:4571:(parse_args) Unknown parameter CARD
    ALSA lib conf.c:4704:(snd_config_expand) Parse arguments error: No such file or directory
    ALSA lib conf.c:4687:(snd_config_expand) Unknown parameters CARD=NVidia,DEV=0
    ALSA lib conf.c:4687:(snd_config_expand) Unknown parameters CARD=NVidia
    ALSA lib conf.c:4687:(snd_config_expand) Unknown parameters CARD=NVidia,DEV=0
    ALSA lib conf.c:4687:(snd_config_expand) Unknown parameters CARD=NVidia
    ns2_linux32: async.c:163: snd_async_del_handler: Assertion `0' failed.
    
    When I use the system library from /usr/lib/i386-linux-gnu/libasound.so.2.0.0, there are no errors, game launches, sound works. Tried on both beta and stable Steam channels, no difference.
  • IronHorseIronHorse Developer, QA Manager, Technical Support & contributor Join Date: 2010-05-08 Member: 71669Members, Super Administrators, Forum Admins, Forum Moderators, NS2 Developer, NS2 Playtester, Squad Five Blue, Subnautica Playtester, Subnautica PT Lead, Pistachionauts
  • mockmock Germany Join Date: 2014-03-28 Member: 195015Members, NS2 Playtester
    Sound stopped working again. This time it was the update of ALSA from 1.0.0 to 1.1.0.
    Stupid Arch. Maybe I should switch to something more stable.
  • ceribikceribik Join Date: 2009-11-24 Member: 69492Members, Reinforced - Supporter, Reinforced - Silver
    mock wrote: »
    Sound stopped working again. This time it was the update of ALSA from 1.0.0 to 1.1.0.
    Stupid Arch. Maybe I should switch to something more stable.

    It worked fine for me (ALSA 1.1.0 on arch).
  • mockmock Germany Join Date: 2014-03-28 Member: 195015Members, NS2 Playtester
    ceribik wrote: »
    mock wrote: »
    Sound stopped working again. This time it was the update of ALSA from 1.0.0 to 1.1.0.
    Stupid Arch. Maybe I should switch to something more stable.

    It worked fine for me (ALSA 1.1.0 on arch).

    Strange. Could you tell me where your libasound.so.2.0.0 in the program directory is pointing at? Because mine is pointing at /usr/lib/i386-linux-gnu/libasound.so.2.0.0, except there is no i386-linux-gnu directory in my libs...
  • ceribikceribik Join Date: 2009-11-24 Member: 69492Members, Reinforced - Supporter, Reinforced - Silver
    edited November 2015
    mock wrote: »
    ceribik wrote: »
    mock wrote: »
    Sound stopped working again. This time it was the update of ALSA from 1.0.0 to 1.1.0.
    Stupid Arch. Maybe I should switch to something more stable.

    It worked fine for me (ALSA 1.1.0 on arch).

    Strange. Could you tell me where your libasound.so.2.0.0 in the program directory is pointing at? Because mine is pointing at /usr/lib/i386-linux-gnu/libasound.so.2.0.0, except there is no i386-linux-gnu directory in my libs...

    I don't see a libasound.so* file in "~/.steam/steam/steamapps/common/Natural Selection 2" at all. I don't have a "/usr/lib/i386-linux-gnu/" folder either.

    I do have this file in the steam runtime though.
    ~/.local/share/Steam/ubuntu12_32/steam-runtime/i386/usr/lib/i386-linux-gnu/libasound.so.2.0.0

    And if I check what lib is used when ns2 is run:

    $ sudo pldd PID | grep sound
    ~/.local/share/Steam/ubuntu12_32/steam-runtime/i386/usr/lib/i386-linux-gnu/libasound.so.2
    (points to libasound.so.2.0.0)

    Do you have lib32-alsa-lib installed?
  • mockmock Germany Join Date: 2014-03-28 Member: 195015Members, NS2 Playtester
    ceribik wrote: »
    mock wrote: »
    ceribik wrote: »
    mock wrote: »
    Sound stopped working again. This time it was the update of ALSA from 1.0.0 to 1.1.0.
    Stupid Arch. Maybe I should switch to something more stable.

    It worked fine for me (ALSA 1.1.0 on arch).

    Strange. Could you tell me where your libasound.so.2.0.0 in the program directory is pointing at? Because mine is pointing at /usr/lib/i386-linux-gnu/libasound.so.2.0.0, except there is no i386-linux-gnu directory in my libs...

    I don't see a libasound.so* file in "~/.steam/steam/steamapps/common/Natural Selection 2" at all. I don't have a "/usr/lib/i386-linux-gnu/" folder either.

    I do have this file in the steam runtime though.
    ~/.local/share/Steam/ubuntu12_32/steam-runtime/i386/usr/lib/i386-linux-gnu/libasound.so.2.0.0

    And if I check what lib is used when ns2 is run:

    $ sudo pldd PID | grep sound
    ~/.local/share/Steam/ubuntu12_32/steam-runtime/i386/usr/lib/i386-linux-gnu/libasound.so.2
    (points to libasound.so.2.0.0)

    Do you have lib32-alsa-lib installed?

    Yes, all the lib32 libraries are installed, but it looks like NS2 is just not able to find them.
    ldd ns2_linux32 | grep "not found"
    
    gives me
    libgobject-2.0.so.0 => not found
    libgthread-2.0.so.0 => not found
    libglib-2.0.so.0 => not found
    libgtk-x11-2.0.so.0 => not found
    libgdk-x11-2.0.so.0 => not found
    libgdk_pixbuf-2.0.so.0 => not found
    libpangocairo-1.0.so.0 => not found
    libcairo.so.2 => not found
    libpango-1.0.so.0 => not found
    libfreetype.so.6 => not found
    libfontconfig.so.1 => not found
    libXrender.so.1 => not found
    libnss3.so => not found
    libnssutil3.so => not found
    libsmime3.so => not found
    libplc4.so => not found
    libnspr4.so => not found
    libpng12.so.0 => not found
    libudev.so.0 => not found
    libcups.so.2 => not found
    libgcrypt.so.11 => not found

    But ALL of those can be found in /usr/lib32.

    And why is NS2 the only game having problems with this at all?
  • mockmock Germany Join Date: 2014-03-28 Member: 195015Members, NS2 Playtester
    I just stumpled about a workaround found here: forums.kleientertainment.com/topic/29215-sound-sound-stopped-working/?do=findComment&comment=423066

    The trick is to change the NS2 launch option in steam, so that the game uses /usr/lib instead of steam's libs:
    LD_LIBRARY_PATH="/usr/lib:$LD_LIBRARY_PATH" %command%
    

    Works for me. At least on Kubuntu 15.10. Tomorrow I'll check if it fixes it on Arch, or at least Manjaro.
  • rkfgrkfg Russia Join Date: 2013-09-03 Member: 187744Members, Reinforced - Supporter, Reinforced - Silver, Reinforced - Gold, Reinforced - Diamond, Reinforced - Shadow
    Today or yesterday Steam updated their runtime and particularly updated libasound.so and now I can run NS2 without symlinking that lib from the system. See if the problem is resolved now.
  • mockmock Germany Join Date: 2014-03-28 Member: 195015Members, NS2 Playtester
    Can confirm! Sound now works without the workaround I found!
Sign In or Register to comment.