HomePage » MultiMedia » MultimediaAlsa


ALSA

If you're lucky, alsa should work without much work or at least the default gnome mixer should let you select the correct input / output. However, it is not uncommon for PC to have multiple audio devices and the list of output devices will not fit in one screen. My advice is to remove the unused devices such as a usb audio headset when it's not needed.

Run speaker-test
As always, cli is your friend once you get acquainted. speaker-test is a nice tool to test your output. First, find your output devices:

> aplay -L
default
	Playback/recording through the PulseAudio sound server
pulse
	Playback/recording through the PulseAudio sound server
front:CARD=SB,DEV=0
	HDA ATI SB, ALC892 Analog
	Front speakers
surround40:CARD=SB,DEV=0
	HDA ATI SB, ALC892 Analog
	4.0 Surround output to Front and Rear speakers
surround41:CARD=SB,DEV=0
	HDA ATI SB, ALC892 Analog
	4.1 Surround output to Front, Rear and Subwoofer speakers
surround50:CARD=SB,DEV=0
	HDA ATI SB, ALC892 Analog
	5.0 Surround output to Front, Center and Rear speakers
surround51:CARD=SB,DEV=0
	HDA ATI SB, ALC892 Analog
	5.1 Surround output to Front, Center, Rear and Subwoofer speakers
surround71:CARD=SB,DEV=0
	HDA ATI SB, ALC892 Analog
	7.1 Surround output to Front, Center, Side, Rear and Woofer speakers
iec958:CARD=SB,DEV=0
	HDA ATI SB, ALC892 Digital
	IEC958 (S/PDIF) Digital Audio Output
dmix:CARD=SB,DEV=0
	HDA ATI SB, ALC892 Analog
	Direct sample mixing device
dmix:CARD=SB,DEV=1
	HDA ATI SB, ALC892 Digital
	Direct sample mixing device
dsnoop:CARD=SB,DEV=0
	HDA ATI SB, ALC892 Analog
	Direct sample snooping device
dsnoop:CARD=SB,DEV=1
	HDA ATI SB, ALC892 Digital
	Direct sample snooping device
hw:CARD=SB,DEV=0
	HDA ATI SB, ALC892 Analog
	Direct hardware device without any conversions
hw:CARD=SB,DEV=1
	HDA ATI SB, ALC892 Digital
	Direct hardware device without any conversions
plughw:CARD=SB,DEV=0
	HDA ATI SB, ALC892 Analog
	Hardware device with all software conversions
plughw:CARD=SB,DEV=1
	HDA ATI SB, ALC892 Digital
	Hardware device with all software conversions


Believe me this is already quite short. If you want to remove certain output devices, you can add them to the modprobe blacklist. Going back to speaker-test, suppose I want to see if my DAC supports 192Khz output, I can do:

# speaker-test -Diec958:CARD=SB -c2 -r96000 -l1 

speaker-test 1.0.24.2

Playback device is iec958:CARD=SB
Stream parameters are 96000Hz, S16_LE, 2 channels
Using 16 octaves of pink noise
Rate set to 96000Hz (requested 96000Hz)
Buffer size range from 64 to 16384
Period size range from 32 to 8192
Using max buffer size 16384
Periods = 4
was set period_size = 4096
was set buffer_size = 16384
 0 - Front Left
 1 - Front Right
Time per period = 5.804195


As it turns out, when I increase the output rate to 192kHz, I hear nothing.

Customizing alsa
I set my default alsa device to be the digital out and I want all sound to be output at 96kHz. Not sure if this is effective tho:
# cat /etc/asound.conf 
defaults.pcm.dmix.rate 96000
pcm.!default {
		type hw
		card 0
		device 1
}


To restart alsa without rebooting
/sbin/alsa force-reload



Some useful links
https://wiki.archlinux.org/index.php/Advanced_Linux_Sound_Architecture#Getting_SPDIF_Output
http://linux.dsplabs.com.au/alsamixer-and-alsactl-store-adjust-and-save-alsa-mixer-settings-p29/
http://www.mythtv.org/wiki/Using_ALSA%27s_speaker-test_utility

There are no comments on this page. [Add comment]

Valid XHTML 1.0 Transitional :: Valid CSS :: Powered by WikkaWiki