ENUMs, User Preferences, and the MySQL SET Datatype
Changing Mailman Python Scripts for Virtual Host Support
A Simple ISAPI Filter for Authentication on IIS
Installing Xdebug for use with Eclipse or Netbeans on Linux
JQuery Venetian Blinds Transition Effect
Using Multi-Byte Character Sets in PHP (Unicode, UTF-8, etc)

Enable 5.1 Linux Audio on Motherboards with Only 3 Jacks

Thursday, 22 December 11, 2:58 am
If you're running Alsa on your Linux distro, without pulseaudio (e.g. Arch Linux, SUSE), and your onboard audio only has 3 Jacks - Line In, Speaker, and Mic - but supports 5.1 audio, follow these steps to enable it.

Add the line below to a file called /etc/modprobe.d/options. If the file doesn't exist, create it.
options snd-hda-intel model=3stack-6ch
Note that the model identifier you use will depend on the particular audio chipset installed on your system. The above is suitable for the Realtek ALC662 without S/PDIF - check the list here to find the one you need. Also, if you are using pulseaudio, e.g you're on Ubuntu, put the above line in /etc/modprobe.d/alsa.conf instead.

Reboot your system to make this change take effect. You should now be able to configure all 5.1 channels using alsamixer. Run this from the command line, and use the arrow keys to select the right-most option, Channel Mode. By default this is set to 2ch (ie stereo); press the up cursor key to change it to 6ch (ie 5.1). Make sure the PCM, Front, Surround and Center levels (or equivalent) are all at 100 (or above zero at least), and press Esc to quit alsamixer. You should now have 5.1 enabled.

If you don't see Channel Mode in alsamixer, it might be because your terminal window is not wide enough to show all audio options. Either make your terminal window wider (no need to shut alsamixer) or just keep pressing right arrow until alsamixer cycles through non-visible options.

You can test it by running this command:
speaker-test -Dplug:surround51 -c6 -l1 -twav
Sometimes, you may find that alsamixer doesn't remember the settings and you have to change the Channel Mode to 6ch every time you boot up. In such cases, the following command should save the settings permanently:
sudo alsactl store

Vijay

11:48 pm, Monday, 24 July 17

Thanks for this article,i was trying to setup a htpc with an old Intel mobo that had the alc66 relatek chip, running Ubuntu with kodi to make it output 5.1 ch audio to a logitech z906, I was running openelec Kodi earlier and it wouldn't output 5.1 ch even after setting it in the GUI , I even installed Windows on it after reading on the alc66 realtek datasheet that the chip was designed for Vista and hence maybe only the windows driver could make it go 5.1 ch , despite the realtek driver having a GUI that can select 5.1 ch audio ,it still outputs only stero through the green line out jack with the other two blue and pink outputting nothing ,only your method worked so far , do you know if the model identfier is universal and not device driver dependent ?

Thank you for your time posting this ,it saved me a lot of time and it's much appreciated

Please enter your comment in the box below. Comments will be moderated before going live. Thanks for your feedback!

Cancel Post

/xkcd/ METAR