[mythtv-users] NFORCE4 and SPDIF

Scott Schlatter kodefoo at freeshell.org
Sat Aug 12 02:23:52 UTC 2006


All,
	I need some help.  I've been trying to get sound up and running on my new 
MythTV box for about a week.  Much of my time has been spent doing numerous 
searches and checking settings over and over again.  All without much luck.
	The sad part is that I was getting sound out of the SPDIF port, but now I 
have nothing.  It is acting totally dead (i.e. no light).  I think it may 
have been a YUM update that killed it, but all I know is a restart destroyed 
whatever was working.  Here is a rundown of the system.

	ABIT A8N (NFORCE4)
	pcHDTV 5500
	Fedora Core 5 (Current updates)
	Kernel 2.6.17-1.2157
	
/etc/modprobe.conf
lias scsi_hostadapter sata_sil24
alias eth0 forcedeth
alias scsi_hostadapter1 sata_nv
alias snd-card-0 snd-intel8x0
options snd-card-0 index=0
options snd-intel8x0 index=0
remove snd-intel8x0 { /usr/sbin/alsactl store 0 >/dev/null 
2>&1 || : ; }; /sbin/modprobe -r --ignore-remove snd-intel8x0
# nvidia kernel module
alias char-major-195 nvidia-1_0-8762
alias nvidia nvidia-1_0-8762

/etc/asound.state
state.CX8801 {
        control.1 {
                comment.access 'read write'
                comment.type INTEGER
                comment.count 1
                comment.range '0 - 63'
                iface MIXER
                name 'Capture Volume'
                value 63
        }
}
state.CK804 {
        control.1 {
                comment.access 'read write'
                comment.type BOOLEAN
                comment.count 1
                iface MIXER
                name 'Master Playback Switch'
                value true
        }
        control.2 {
                comment.access 'read write'
                comment.type INTEGER
                comment.count 2
                comment.range '0 - 31'
                iface MIXER
                name 'Master Playback Volume'
                value.0 18
                value.1 18
        }
        control.3 {
                comment.access 'read write'
                comment.type BOOLEAN
                comment.count 1
                iface MIXER
                name 'Center Playback Switch'
                value false
        }
        control.4 {
                comment.access 'read write'
                comment.type INTEGER
                comment.count 1
                comment.range '0 - 31'
                iface MIXER
                name 'Center Playback Volume'
                value 24
        }
        control.5 {
                comment.access 'read write'
                comment.type BOOLEAN
                comment.count 1
                iface MIXER
                name 'LFE Playback Switch'
                value false
        }
        control.6 {
                comment.access 'read write'
                comment.type INTEGER
                comment.count 1
                comment.range '0 - 31'
                iface MIXER
                name 'LFE Playback Volume'
                value 23
        }
        control.7 {
                comment.access 'read write'
                comment.type BOOLEAN
                comment.count 2
                iface MIXER
                name 'Surround Playback Switch'
                value.0 true
                value.1 true
        }
        control.8 {
                comment.access 'read write'
                comment.type INTEGER
                comment.count 2
                comment.range '0 - 31'
                iface MIXER
                name 'Surround Playback Volume'
                value.0 24
                value.1 24
        }
        control.9 {
                comment.access 'read write'
                comment.type BOOLEAN
                comment.count 1
                iface MIXER
                name 'Master Mono Playback Switch'
                value true
        }
        control.10 {
                comment.access 'read write'
                comment.type INTEGER
                comment.count 1
                comment.range '0 - 31'
                iface MIXER
                name 'Master Mono Playback Volume'
                value 18
        }
        control.11 {
                comment.access 'read write'
                comment.type BOOLEAN
                comment.count 1
                iface MIXER
                name 'PC Speaker Playback Switch'
                value true
        }
        control.12 {
                comment.access 'read write'
                comment.type INTEGER
                comment.count 1
                comment.range '0 - 15'
                iface MIXER
                name 'PC Speaker Playback Volume'
                value 11
        }
        control.13 {
                comment.access 'read write'
                comment.type BOOLEAN
                comment.count 1
                iface MIXER
                name 'Phone Playback Switch'
                value false
        }
        control.14 {
                comment.access 'read write'
                comment.type INTEGER
                comment.count 1
                comment.range '0 - 31'
                iface MIXER
                name 'Phone Playback Volume'
                value 24
        }
        control.15 {
                comment.access 'read write'
                comment.type BOOLEAN
                comment.count 1
                iface MIXER
                name 'Mic Playback Switch'
                value false
        }
        control.16 {
                comment.access 'read write'
                comment.type INTEGER
                comment.count 1
                comment.range '0 - 31'
                iface MIXER
                name 'Mic Playback Volume'
                value 0
        }
        control.17 {
                comment.access 'read write'
                comment.type BOOLEAN
                comment.count 1
                iface MIXER
                name 'Mic Boost (+20dB) Switch'
                value false
        }
        control.18 {
                comment.access 'read write'
                comment.type BOOLEAN
                comment.count 1
                iface MIXER
                name 'Line Playback Switch'
                value true
        }
        control.19 {
                comment.access 'read write'
                comment.type INTEGER
                comment.count 2
                comment.range '0 - 31'
                iface MIXER
                name 'Line Playback Volume'
                value.0 21
                value.1 21
        }
        control.20 {
                comment.access 'read write'
                comment.type BOOLEAN
                comment.count 1
                iface MIXER
                name 'CD Playback Switch'
                value true
        }
        control.21 {
                comment.access 'read write'
                comment.type INTEGER
                comment.count 2
                comment.range '0 - 31'
                iface MIXER
                name 'CD Playback Volume'
                value.0 18
                value.1 18
        }
        control.22 {
                comment.access 'read write'
                comment.type BOOLEAN
                comment.count 1
                iface MIXER
                name 'Aux Playback Switch'
                value false
        }
        control.23 {
                comment.access 'read write'
                comment.type INTEGER
                comment.count 2
                comment.range '0 - 31'
                iface MIXER
                name 'Aux Playback Volume'
                value.0 18
                value.1 18
        }
        control.24 {
                comment.access 'read write'
                comment.type BOOLEAN
                comment.count 1
                iface MIXER
                name 'PCM Playback Switch'
                value true
        }
        control.25 {
                comment.access 'read write'
                comment.type INTEGER
                comment.count 2
                comment.range '0 - 31'
                iface MIXER
                name 'PCM Playback Volume'
                value.0 18
                value.1 18
        }
        control.26 {
                comment.access 'read write'
                comment.type ENUMERATED
                comment.count 2
                comment.item.0 Mic
                comment.item.1 CD
                comment.item.2 Video
                comment.item.3 Aux
                comment.item.4 Line
                comment.item.5 Mix
                comment.item.6 'Mix Mono'
                comment.item.7 Phone
                iface MIXER
                name 'Capture Source'
                value.0 CD
                value.1 CD
        }
        control.27 {
                comment.access 'read write'
                comment.type BOOLEAN
                comment.count 1
                iface MIXER
                name 'Capture Switch'
                value false
        }
        control.28 {
                comment.access 'read write'
                comment.type INTEGER
                comment.count 2
                comment.range '0 - 15'
                iface MIXER
                name 'Capture Volume'
                value.0 0
                value.1 0
        }
        control.29 {
                comment.access 'read write'
                comment.type ENUMERATED
                comment.count 1
                comment.item.0 Mix
                comment.item.1 Mic
                iface MIXER
                name 'Mono Output Select'
                value Mix
        }
        control.30 {
                comment.access 'read write'
                comment.type ENUMERATED
                comment.count 1
                comment.item.0 Mic1
                comment.item.1 Mic2
                iface MIXER
                name 'Mic Select Capture Switch'
                value Mic1
        }
        control.31 {
                comment.access read
                comment.type IEC958
                comment.count 1
                iface MIXER
                name 'IEC958 Playback Con Mask'
                
value '0fff000f00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000'
        }
        control.32 {
                comment.access read
                comment.type IEC958
                comment.count 1
                iface MIXER
                name 'IEC958 Playback Pro Mask'
                value 
cf00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
        }
        control.33 {
                comment.access 'read write'
                comment.type IEC958
                comment.count 1
                iface MIXER
                name 'IEC958 Playback Default'
                
value '0082000200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000'
        }
        control.34 {
                comment.access 'read write'
                comment.type BOOLEAN
                comment.count 1
                iface MIXER
                name 'IEC958 Playback Switch'
                value true
        }
        control.35 {
                comment.access 'read write'
                comment.type INTEGER
                comment.count 1
                comment.range '0 - 3'
                iface MIXER
                name 'IEC958 Playback AC97-SPSA'
                value 0
        }
        control.36 {
                comment.access 'read write'
                comment.type BOOLEAN
                comment.count 1
                iface MIXER
                name 'Duplicate Front'
                value true
        }
        control.37 {
                comment.access 'read write'
                comment.type BOOLEAN
                comment.count 1
                iface MIXER
                name 'Mic Front Input Switch'
                value false
        }
        control.38 {
                comment.access 'read write'
                comment.type ENUMERATED
                comment.count 1
                comment.item.0 Shared
                comment.item.1 Independent
                iface MIXER
                name 'Surround Jack Mode'
                value Shared
        }
        control.39 {
                comment.access 'read write'
                comment.type ENUMERATED
                comment.count 1
                comment.item.0 '2ch'
                comment.item.1 '4ch'
                comment.item.2 '6ch'
                iface MIXER
                name 'Channel Mode'
                value '6ch'
        }
        control.40 {
                comment.access 'read write'
                comment.type BOOLEAN
                comment.count 1
                iface MIXER
                name 'IEC958 Capture Switch'
                value true
        }
        control.41 {
                comment.access 'read write'
                comment.type ENUMERATED
                comment.count 1
                comment.item.0 PCM
                comment.item.1 'Analog In'
                comment.item.2 'IEC958 In'
                iface MIXER
                name 'IEC958 Playback Source'
                value PCM
        }
        control.42 {
                comment.access 'read write'
                comment.type BOOLEAN
                comment.count 1
                iface MIXER
                name 'External Amplifier'
                value true
        }
}

lsmod
Module                  Size  Used by
snd_intel8x0           69288  0
snd_ac97_codec        152280  1 snd_intel8x0
snd_ac97_bus           35712  1 snd_ac97_codec
snd_seq_dummy          36740  0
snd_seq_oss            71680  0
snd_seq_midi_event     41856  1 snd_seq_oss
snd_seq                97824  5 snd_seq_dummy,snd_seq_oss,snd_seq_midi_event
snd_seq_device         42516  3 snd_seq_dummy,snd_seq_oss,snd_seq
snd_pcm_oss            81408  0
snd_mixer_oss          51200  1 snd_pcm_oss
snd_pcm               127880  3 snd_intel8x0,snd_ac97_codec,snd_pcm_oss
snd_timer              59144  2 snd_seq,snd_pcm
snd                   102184  10 
snd_intel8x0,snd_ac97_codec,snd_seq_dummy,snd_seq_oss,snd_seq,snd_seq_device,snd_pcm_oss,snd_mixer_oss,snd_pcm,snd_timer
soundcore              45793  1 snd
snd_page_alloc         43152  2 snd_intel8x0,snd_pcm
autofs4                60233  1
hidp                   85057  2
rfcomm                112481  0
l2cap                  94017  10 hidp,rfcomm
bluetooth             125637  5 hidp,rfcomm,l2cap
sunrpc                230153  1
ip_conntrack_netbios_ns    36417  0
ipt_REJECT             39233  1
xt_state               35777  2
ip_conntrack          101093  2 ip_conntrack_netbios_ns,xt_state
nfnetlink              41609  1 ip_conntrack
xt_tcpudp              36929  4
iptable_filter         36673  1
ip_tables              57761  1 iptable_filter
x_tables               54216  4 ipt_REJECT,xt_state,xt_tcpudp,ip_tables
jfs                   220881  1
video                  54345  0
button                 41569  0
battery                44873  0
acpi_memhotplug        39361  0
ac                     39241  0
ipv6                  442145  18
lp                     49425  0
parport_pc             66153  0
parport                80461  2 lp,parport_pc
tda9887                51728  0
tuner                  91320  0
lirc_mceusb2           43396  1
lirc_dev               47720  1 lirc_mceusb2
cx88_dvb               51364  0
cx8802                 49156  1 cx88_dvb
cx8800                 73612  0
cx88xx                104868  3 cx88_dvb,cx8802,cx8800
cx88_vp3054_i2c        39680  1 cx88_dvb
ir_common              63492  1 cx88xx
i2c_algo_bit           42953  2 cx88xx,cx88_vp3054_i2c
mt352                  41604  1 cx88_dvb
or51132                44036  1 cx88_dvb
video_buf_dvb          41220  1 cx88_dvb
video_buf              64516  5 cx88_dvb,cx8802,cx8800,cx88xx,video_buf_dvb
ohci1394               72473  0
tveeprom               50960  1 cx88xx
compat_ioctl32         42368  1 cx8800
v4l2_common            51200  3 tuner,cx8800,compat_ioctl32
v4l1_compat            45444  1 cx8800
btcx_risc              39048  3 cx8802,cx8800,cx88xx
nxt200x                48516  1 cx88_dvb
zl10353                40196  1 cx88_dvb
cx24123                48776  1 cx88_dvb
lgdt330x               43676  1 cx88_dvb
dvb_core              132656  3 or51132,video_buf_dvb,lgdt330x
cx22702                41348  1 cx88_dvb
dvb_pll                47748  4 cx88_dvb,or51132,nxt200x,cx22702
ieee1394              412760  1 ohci1394
ehci_hcd               71501  0
sg                     74089  0
ohci_hcd               58205  0
nvidia               5446516  8
i2c_nforce2            41793  0
videodev               46080  2 cx8800,cx88xx
i2c_core               60865  15 
tda9887,tuner,cx88_dvb,cx88xx,i2c_algo_bit,mt352,or51132,tveeprom,nxt200x,zl10353,cx24123,lgdt330x,cx22702,nvidia,i2c_nforce2
forcedeth              67917  0
dm_snapshot            52369  0
dm_zero                35521  0
dm_mirror              58433  0
dm_mod                104081  7 dm_snapshot,dm_zero,dm_mirror
ext3                  181457  2
jbd                   100585  1 ext3
sata_nv                44357  3
sata_sil24             46789  0
libata                113113  2 sata_nv,sata_sil24
sd_mod                 55745  5
scsi_mod              198161  3 sg,libata,sd

~/.asoundrc
pcm.!default {
  type plug
## Uncomment the following to use "mixed-analog" by default
  #slave.pcm "dmix-analog"
## Uncomment the following to use (unmixed) "digital" by default
#  slave.pcm "digital-hw"
## Uncomment the following to use "mixed-digital" by default
  slave.pcm "dmix-digital"
}

# Control device (mixer, etc.) for the card
ctl.!default {
  type hw
  card 0
}

# Alias for (converted) analog output on the card
# - This is identical to the device named "default"--which always exists and
# refers to hw:0,0 (unless overridden)
# - Therefore, we can specify "hw:0,0", "default", or "analog" to access 
analog
# output on the card
# - Note that as of ALSA 1.0.9, "software" sound card definitions redefine
# "default" to do mixing, meaning this device is different from "default" and
# allows playback while blocking other sound sources (until playback
# completes).
pcm.analog {
  type plug
  slave.pcm "analog-hw"
}

# Control device (mixer, etc.) for the card
ctl.analog {
  type hw
  card 0
}

# Alias for (converted) mixed analog output on the card
# - This will accept audio input--regardless of rate--and convert to the rate
# required for the dmix plugin (in this case 48000Hz)
# - Note that as of ALSA 1.0.9, "software" sound card definitions redefine
# "default" to do mixing, meaning this device is identical to "default" for
# "software" sound cards.
pcm.mixed-analog {
  type plug
  slave.pcm "dmix-analog"
}

# Control device (mixer, etc.) for the card
ctl.mixed-analog {
  type hw
  card 0
}

# Alias for (converted) digital (S/PDIF) output on the card
# - This will accept audio input--regardless of rate--and convert to the rate
# required for the S/PDIF hardware (in this case 48000Hz)
pcm.digital {
    type plug
  slave.pcm "digital-hw"
}

# Control device (mixer, etc.) for the card
ctl.digital {
  type hw
  card 0
}

# Alias for mixed (converted) digital (S/PDIF) output on the card
#  - This will accept audio input--regardless of rate--and convert to the rate
#  required for the S/PDIF hardware (in this case 48000Hz)
pcm.mixed-digital {
  type plug
  slave.pcm "dmix-digital"
}

# Control device (mixer, etc.) for the card
ctl.mixed-digital {
  type hw
  card 0
}

# The following devices are not useful by themselves.  They require specific
# rates, channels, and formats.  Therefore, you probably do not want to use
# them directly.  Instead use of of the devices defined above.

# Alias for analog output on the card
# Do not use this directly--it requires specific rate, channels, and format
pcm.analog-hw {
  type hw
  card 0
  # The default value for device is 0, so no need to specify
#  - Uncomment one of the below or create a new "device N" line as appropriate
#    for your sound card or
#  device 1
#  device 4
}

# Control device (mixer, etc.) for the card
ctl.analog-hw {
  type hw
  card 0
}

# Alias for digital (S/PDIF) output on the card
# Do not use this directly--it requires specific rate, channels, and format
pcm.digital-hw {
  type hw
  card 0
#  device 1
#  - Comment out "device 1" above and uncomment one of the below or create a
#    new "device N" line as appropriate for your sound card or
  device 2
#  device 4
}
       # Control device (mixer, etc.) for the card
ctl.digital-hw {
  type hw
  card 0
}

# Direct software mixing plugin for analog output on the card
# Do not use this directly--it requires specific rate, channels, and format
pcm.dmix-analog {
  type dmix
  ipc_key 1234
  slave {
    pcm "analog-hw"
    period_time 0
    period_size 1024
    buffer_size 4096
    rate 48000
  }
}

# Control device (mixer, etc.) for the card
ctl.dmix-analog {
  type hw
  card 0
}

# Direct software mixing plugin for digital (S/PDIF) output on the card
# Do not use this directly--it requires specific rate, channels, and format
pcm.dmix-digital {
  type dmix
  ipc_key 1235
  slave {
    pcm "digital-hw"
    period_time 0
    period_size 1024
    buffer_size 4096
    rate 48000
  }
}

# Control device (mixer, etc.) for the card
ctl.dmix-digital {
  type hw
  card 0
}

	I know that I need to have the IEC958 down to zero when playing audio.  I 
thought that was all I needed plus the .asoundrc for configuration.  This has 
turned into a much more complex problem than I imagined.  Any help would be 
greatly appreciated!  Thank you.

-Scott                                                         
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 189 bytes
Desc: not available
Url : http://mythtv.org/pipermail/mythtv-users/attachments/20060811/2ed1e4a7/attachment.pgp 


More information about the mythtv-users mailing list