LinuxQuestions.org
Register a domain and help support LQ
Go Back   LinuxQuestions.org > Forums > Linux Forums > Linux - Distributions > Slackware
User Name
Password
Slackware This Forum is for the discussion of Slackware Linux.

Notices

Reply
 
Search this Thread
Old 12-25-2013, 11:40 PM   #1
kingbeowulf
Member
 
Registered: Oct 2003
Location: WA
Distribution: Slackware64 14.1, Slackware 14.1
Posts: 519

Rep: Reputation: 137Reputation: 137
Post [Information] Nvidia HDMI audio for Steam Client "Big Picture Mode"


We recently experimented with SteamOS, but had all sorts of weird issues with sound, both on-board and via HDMI. We couldn't seem to get SteamOS to play sound in the desktop AND Steam AND Games. Yep, it's in Beta. I definitely despise pulseaudio, and Valve's configuration of Debian was a bit freaky. So we did the usual: Installed Slackware64 14.1 x86_64 multilib.

Since we wanted sound via the Nvidia GT430 HDMI to the 1080p TV, we disabled the on board sound in the BIOS. HDMI sound worked OOTB, but only for one application at a time. With Steam in Big Picture Mode (BPM), the Steam interface hogged the audio so that the games did not have sound. On my Slackware desktop I don't use BPM and have an Audigy sound card set up, so multiple audio streams were never a problem. After some googling and LQ sifting, we came up with a simple base configuration for ALSA in Slackware that allows desktop audio AND BPM games. There are a few other configurations out there, but this one was simplest and best for us (so far). YMMV. This is an informational post to assist others in similar situations.

Hardware:
Code:
# lspci |grep -i nvidia
Password: 
01:00.0 VGA compatible controller: NVIDIA Corporation GF108 [GeForce GT 430] (rev a1)
01:00.1 Audio device: NVIDIA Corporation GF108 High Definition Audio Controller (rev a1)
$ uname -a
Linux vapor 3.10.17 #1 SMP Wed Oct 23 16:28:33 CDT 2013 x86_64 Intel(R) Core(TM)2 CPU          6300  @ 1.86GHz GenuineIntel GNU/Linux
Alsa ouput:
Code:
$ aplay -l
**** List of PLAYBACK Hardware Devices ****
card 0: NVidia [HDA NVidia], device 3: HDMI 0 [HDMI 0]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 0: NVidia [HDA NVidia], device 7: HDMI 0 [HDMI 0]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 0: NVidia [HDA NVidia], device 8: HDMI 0 [HDMI 0]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 0: NVidia [HDA NVidia], device 9: HDMI 0 [HDMI 0]
  Subdevices: 1/1
  Subdevice #0: subdevice #0

$ aplay -L
null
    Discard all samples (playback) or generate zero samples (capture)
hdmi:CARD=NVidia,DEV=0
    HDA NVidia, HDMI 0
    HDMI Audio Output
hdmi:CARD=NVidia,DEV=1
    HDA NVidia, HDMI 0
    HDMI Audio Output
hdmi:CARD=NVidia,DEV=2
    HDA NVidia, HDMI 0
    HDMI Audio Output
hdmi:CARD=NVidia,DEV=3
    HDA NVidia, HDMI 0
    HDMI Audio Output
All you then need is to have you user in the 'audio' group and this ~/.asoundrc
Code:
$ cat .asoundrc

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

pcm.dmixer {
  type asym
  playback.pcm {
    type dmix
    ipc_key 5678912
    ipc_perm 0660
    ipc_gid audio
    slave {
      channels 2
      pcm {
        type hw
        card 0
        device 9
      }
      period_size 1024
      buffer_size 8192
    }
    bindings {
      0 0
      1 1
    }
  }   
  capture.pcm "hw:0"
}
use something like
Code:
$ speaker-test -Dplughw:0,3 -c2 -twav
to find the active HDMI channel. Ours was card=0, device=9. No fiddling with /etc/alsa/ or /etc/modprobe.d/ is required. Further customizations are possible to "fine tune" this configuration. For example, you may want to map 5.1 or 7.1 surround output if you have such a speaker system set up. We have it set up for simple stereo (2 channel) output and we let ALSA figure out the bit rate and format.

Enjoy.

References:
http://www.alsa-project.org/alsa-doc...m_plugins.htmlhttp://www.alsa-project.org/alsa-doc...m_plugins.html
https://wiki.gentoo.org/wiki/ALSAhttps://wiki.gentoo.org/wiki/ALSA
http://docs.slackware.com/
and various LQ and XMBC posts.

Acknowledgements:
volkerdi, Best Linux Distribution IMHO.
alienBOB, multilib and steam packages.
Slackbuilds.org
Slackware contributors
 
Old 12-25-2013, 11:56 PM   #2
wildwizard
Member
 
Registered: Apr 2009
Location: Oz
Distribution: slackware64-14.0
Posts: 755

Rep: Reputation: 226Reputation: 226Reputation: 226
So presumably change channels number to the actual number of channels?

I only ask because I have quite a nice setup in the lounge and have yet to try out the PC on it and when I do I intend to enjoy the experience.
 
Old 12-31-2013, 12:03 AM   #3
kingbeowulf
Member
 
Registered: Oct 2003
Location: WA
Distribution: Slackware64 14.1, Slackware 14.1
Posts: 519

Original Poster
Rep: Reputation: 137Reputation: 137
wildwizard

You'll have to change "channels" and "bindings" to match your speaker setup. If the sounds come out the wrong speakers (front is rear, center channel rear, etc) then you'll have remap the speaker channels. See the links in the OP for details

I haven't played with that yet since all I have is a stereo setup.
 
  


Reply

Tags
audio, hdmi, nvidia, slackware 14.1, steam


Thread Tools Search this Thread
Search this Thread:

Advanced Search

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is Off
HTML code is Off


Similar Threads
Thread Thread Starter Forum Replies Last Post
[SOLVED] Steam's Big Picture Mode not detecting Xbox 360 Controller on Slackware 14 slimkid Slackware 5 10-08-2013 04:24 PM
[SOLVED] glxgears, fgl_glxgears run, but no "picture" or "stagnant" picture almcneill Linux - Software 1 01-27-2013 12:45 AM
OpenSSL / Sendmail verifies both "TLS cert" and "x509 cert" in client mode, why? fast-reflexes Linux - Server 0 09-12-2010 11:32 AM
Steam on Wine, cannot login,"Steam is having trouble connecting to the Steam servers" cantab Linux - Games 1 06-19-2010 06:32 AM
"Picture playback slows down in fullscreen mode" saintkay Linux - Desktop 3 08-26-2007 06:28 AM


All times are GMT -5. The time now is 01:50 AM.

Main Menu
My LQ
Write for LQ
LinuxQuestions.org is looking for people interested in writing Editorials, Articles, Reviews, and more. If you'd like to contribute content, let us know.
Main Menu
Syndicate
RSS1  Latest Threads
RSS1  LQ News
Twitter: @linuxquestions
identi.ca: @linuxquestions
Facebook: linuxquestions Google+: linuxquestions
Open Source Consulting | Domain Registration