Audio in 1004: Difference between revisions
No edit summary |
|||
| Line 6: | Line 6: | ||
Alternate sound configurations can be set in /etc/pluto.conf. MOST sound cards should work out of the box, and do not require this parameter. This parameter may be written by [http://svn.linuxmce.org/trac.cgi/browser/branches/LinuxMCE-1004/src/BootScripts/nvidia-install.sh /usr/pluto/bin/nvidia-install.sh] for various GT chipsets. This can be done at avwizard on the [http://wiki.linuxmce.org/index.php/AVWizard_Step_by_Step#Audio_Output_Connector Audio Selector step 5], or at any time by running [http://svn.linuxmce.org/trac.cgi/browser/branches/LinuxMCE-1004/src/BootScripts/SetupAudioVideo.sh /usr/pluto/bin/SetupAudioVideo.sh] '''NOTE: Audio/video should NOT be actively playing when running SetupAudioVideo.sh.''' | Alternate sound configurations can be set in /etc/pluto.conf. MOST sound cards should work out of the box, and do not require this parameter. This parameter may be written by [http://svn.linuxmce.org/trac.cgi/browser/branches/LinuxMCE-1004/src/BootScripts/nvidia-install.sh /usr/pluto/bin/nvidia-install.sh] for various GT chipsets. This can be done at avwizard on the [http://wiki.linuxmce.org/index.php/AVWizard_Step_by_Step#Audio_Output_Connector Audio Selector step 5], or at any time by running [http://svn.linuxmce.org/trac.cgi/browser/branches/LinuxMCE-1004/src/BootScripts/SetupAudioVideo.sh /usr/pluto/bin/SetupAudioVideo.sh] '''NOTE: Audio/video should NOT be actively playing when running SetupAudioVideo.sh.''' | ||
Auto-detection is attempted when specific packages are installed, or if the pluto.conf "AlternateSC" setting is null or = 0. In most cases, this value will never exist. | |||
Below are example /etc/asound.conf files generated by these configurations. /etc/pluto/xine.conf files borrow the card# and device# (if any) as | Below are example /etc/asound.conf files generated by these configurations. /etc/pluto/xine.conf files borrow the card# and device# (if any) in the same way as the asound.conf | ||
'''AlternateSC = null''' : Most cards function without this parameter, this is the default state. | '''AlternateSC = null''' : Most cards function without this parameter, this is the default state. | ||
| Line 155: | Line 156: | ||
} | } | ||
pcm.!default asym_hdmi | pcm.!default asym_hdmi | ||
Revision as of 20:54, 24 October 2012
Alternate sound configurations can be set in /etc/pluto.conf. MOST sound cards should work out of the box, and do not require this parameter. This parameter may be written by /usr/pluto/bin/nvidia-install.sh for various GT chipsets. This can be done at avwizard on the Audio Selector step 5, or at any time by running /usr/pluto/bin/SetupAudioVideo.sh NOTE: Audio/video should NOT be actively playing when running SetupAudioVideo.sh.
Auto-detection is attempted when specific packages are installed, or if the pluto.conf "AlternateSC" setting is null or = 0. In most cases, this value will never exist.
Below are example /etc/asound.conf files generated by these configurations. /etc/pluto/xine.conf files borrow the card# and device# (if any) in the same way as the asound.conf
AlternateSC = null : Most cards function without this parameter, this is the default state.
- Analog, Optical, Coax and HDMI are treated the way they always have been, given only the card# to write to the confs.
- nVidia GT series HDMI is automatically detected, and given a special set of values, also using the card# and the device#.
AlternateSC = 1 : Should only be necessary with some newer GT series nvidia that do not identify as second card or require backports, also supports other oddball devices.
- Analog, Optical, Coax, HDMI are given the card# and the device# to write to the confs.
AlternateSC = 2 : should only be necessary for HDMI oddballs that do not work under other two schemes, covers newer equipment.
- HDMI are given the GT series extended scheme, including both the card# and device#.
AlternateSC = null
Analog, Optical, Coax, HDMI
</etc/pluto/alsa/virtual_cards.conf>
pcm_slave.spdif_convert48k {
pcm "spdif:0"
rate 48000
}
pcm.spdif_playback {
type plug
slave spdif_convert48k
}
pcm_slave.hdmi_convert48k {
pcm "hdmi:0"
rate 48000
}
pcm.hdmi_playback {
type plug
slave hdmi_convert48k
}
pcm.asym_spdif {
type asym
playback.pcm "spdif_playback"
capture.pcm "plughw:0"
}
pcm.asym_hdmi {
type asym
playback.pcm "hdmi_playback"
capture.pcm "plughw:0"
}
pcm.asym_analog {
type asym
playback.pcm "plug:dmix:0"
capture.pcm "plughw:0"
}
pcm.!default asym_analog
nVidia GT series HDMI
</etc/pluto/alsa/virtual_cards.conf>
pcm_slave.spdif_convert48k {
pcm "spdif:1,7"
rate 48000
}
pcm.spdif_playback {
type plug
slave spdif_convert48k
}
pcm_slave.hdmi_convert48k {
pcm "hdmi:1,7"
rate 48000
}
pcm.hdmi_playback {
type plug
slave hdmi_convert48k
}
pcm.asym_spdif {
type asym
playback.pcm "spdif_playback"
capture.pcm "plughw:1,7"
}
pcm.asym_hdmi {
type asym
playback.pcm "hdmi_playback"
capture.pcm "plughw:1,7"
}
pcm.asym_analog {
type asym
playback.pcm "plug:dmix:1,7"
capture.pcm "plughw:1,7"
}
pcm.!hdmi {
@args [ AES0 AES1 AES2 AES3 ]
@args.AES0 {
type integer
# consumer, not-copyright, emphasis-none, mode=0
default 0x04
}
@args.AES1 {
type integer
# original, PCM coder
default 0x00
}
@args.AES2 {
type integer
# source and channel
default 0x00
}
@args.AES3 {
type integer
# fs=48000Hz, clock accuracy=1000ppm
default 0x00
}
type hooks
slave.pcm {
type hw
card 1
device 7
}
hooks.0 {
type ctl_elems
hook_args [
{
name "IEC958 Playback Default"
lock true
preserve true
value [ $AES0 $AES1 $AES2 $AES3 ]
}
{
name "IEC958 Playback Switch"
lock true
preserve true
value true
}
]
}
}
pcm.!default asym_hdmi
AlternateSC = 1
Analog, Optical, Coax, and HDMI
</etc/pluto/alsa/virtual_cards.conf>
pcm_slave.spdif_convert48k {
pcm "spdif:0,3"
rate 48000
}
pcm.spdif_playback {
type plug
slave spdif_convert48k
}
pcm_slave.hdmi_convert48k {
pcm "hdmi:0,3"
rate 48000
}
pcm.hdmi_playback {
type plug
slave hdmi_convert48k
}
pcm.asym_spdif {
type asym
playback.pcm "spdif_playback"
capture.pcm "plughw:0,3"
}
pcm.asym_hdmi {
type asym
playback.pcm "hdmi_playback"
capture.pcm "plughw:0,3"
}
pcm.asym_analog {
type asym
playback.pcm "plug:dmix:0,3"
capture.pcm "plughw:0,3"
}
pcm.!default asym_hdmi
AlternateSC = 2
HDMI
</etc/pluto/alsa/virtual_cards.conf>
pcm_slave.spdif_convert48k {
pcm "spdif:0,3"
rate 48000
}
pcm.spdif_playback {
type plug
slave spdif_convert48k
}
pcm_slave.hdmi_convert48k {
pcm "hdmi:0,3"
rate 48000
}
pcm.hdmi_playback {
type plug
slave hdmi_convert48k
}
pcm.asym_spdif {
type asym
playback.pcm "spdif_playback"
capture.pcm "plughw:0,3"
}
pcm.asym_hdmi {
type asym
playback.pcm "hdmi_playback"
capture.pcm "plughw:0,3"
}
pcm.asym_analog {
type asym
playback.pcm "plug:dmix:0,3"
capture.pcm "plughw:0,3"
}
pcm.!hdmi {
@args [ AES0 AES1 AES2 AES3 ]
@args.AES0 {
type integer
# consumer, not-copyright, emphasis-none, mode=0
default 0x04
}
@args.AES1 {
type integer
# original, PCM coder
default 0x00
}
@args.AES2 {
type integer
# source and channel
default 0x00
}
@args.AES3 {
type integer
# fs=48000Hz, clock accuracy=1000ppm
default 0x00
}
type hooks
slave.pcm {
type hw
card 0
device 3
}
hooks.0 {
type ctl_elems
hook_args [
{
name "IEC958 Playback Default"
lock true
preserve true
value [ $AES0 $AES1 $AES2 $AES3 ]
}
{
name "IEC958 Playback Switch"
lock true
preserve true
value true
}
]
}
}
pcm.!default asym_hdmi