Context: Ubuntu 16.04.2 (64-bit) with sound over (NVIDIA GTX1070) HDMI to a receiver.
I don’t generally have problems with sound and I’ve played a few Unity engine games (32 and 64-bit) from Steam with no problem in the past, but with this game I get no sound at all. I’m following up with the developers, but their Linux release is fairly new and I suspect they don’t know too much about Linux in general.
I use Quod Libet with ALSA so a while ago I set up a panel indicator to show me what use is being made of the sound hardware (the output of cat /proc/asound/NVidia/pcm7p/sub0/hw_params
), so when the game starts I can see the output going from closed
to the usual S32LE — 6 channels — 48.0kHz
* but nothing comes out of the speakers.
It’s a 32-bit game, but the developer kindly tried a 64-bit build with the same results.
My hopes aren’t high of getting a solution here; just that someone might have seen something similar. Next stop is the Unity forums I suppose.
[I think it would be good for searching if we had a unity-game-engine
tag here, since it’s used quite a lot, but I don’t have 300 reputation :-( I’ve seen other posts use unity
which is misleading.]
*Full output:
access: MMAP_INTERLEAVED
format: S32_LE
subformat: STD
channels: 6
rate: 48000 (48000/1)
period_size: 1360
buffer_size: 2720
This problem was entirely caused by a change I made to PulseAudio quite a while back. I added the option
enable-remixing = no
to/etc/pulse/daemon.conf
(the default isyes
) to prevent Pulse making a surround mix from stereo music. I ended up getting a music player to send the exact music format to my receiver using ALSA anyway, so this setting is redundant.When set to
no
Pulse drops any channels it can’t match, so some oddity in the Hidden Folks audio caused all output to be dropped.