[mythtv-users] 11/20 CVS and ALSA
Rob Rosenfeld
mythtv.org at rosenfeld.to
Sun Nov 21 07:06:30 UTC 2004
I have been running 0.16 with ALSA with no audio problems for a month or
so. However, I was affected by the bug where the frontend would freeze
as long as it was in a recording, so I decided to upgrade to CVS. I
built CVS with both OSS and ALSA support. My kernel (2.6.9) has ALSA w/
OSS emulation configured. It works fine (and fixes my freezes!) as long
as I configure audio to use OSS devices in mythfrontend. I have also
confirmed that ALSA still works (there have been no changes) by running:
$ alsaplayer -o alsa some.mp3
Since I had it working before and have been doing a reasonable job of
keeping up with the mailing list, I thought I understood how to
configure audio for CVS. I have attempted the following to get ALSA
working:
In Utilities/Setup -> Setup -> General ) I set
Audio ouput device: ALSA:default
Mixer device: default
Mixer controls: PCM
I have also tried with Master under Mixer controls.
I have tried both /dev/dsp and ALSA:default for the video card setup in
mythsetup. I have a PVR-250, so not sure if this even matters.
When I try to watch live TV or a recording, I see the following output
on the console where I started mythfrontend and a similar warning
intervenes in mythfrontend.
$ mythfronted
.
. skipped output
.
Timestamp Initializing audio parms from stream #0.
Timestamp Initializing audio parms from stream #0.
Timestamp Initializing audio parms from stream #0.
Could not bind to UDP notify port: 6948
Timestamp Initializing audio parms from stream #0.
Timestamp Opening audio device 'default'
Timestamp mixer unable to find control Master
Timestamp mixer unable to find control Master
Timestamp mixer unable to find control PCM
Timestamp mixer unable to find control PCM
Timestamp mixer unable to find control PCM
Timestamp Changing from None to WatchingLiveTV
Timestamp Decoder not alive, and trying to play..
Timestamp Changing from None to None
$
I noticed that it mentions nothing about ALSA which I swore 0.16 used to
do and I know OSS does.
I also noticed the UDP error and don't know if it's relevant. The
following shows nothing on that port:
# netstat -natp
Active Internet connections (servers and established)
Proto Recv-Q Send-Q Local Address Foreign Address
State PID/Program name
tcp 0 0 0.0.0.0:2442 0.0.0.0:*
LISTEN 7078/mtd
tcp 0 0 127.0.0.1:3306 0.0.0.0:*
LISTEN 6472/mysqld
tcp 0 0 0.0.0.0:6543 0.0.0.0:*
LISTEN 3716/mythbackend
tcp 0 0 0.0.0.0:6544 0.0.0.0:*
LISTEN 3716/mythbackend
tcp 0 0 0.0.0.0:80 0.0.0.0:*
LISTEN 6494/apache2
tcp 0 0 0.0.0.0:22 0.0.0.0:*
LISTEN 6477/sshd
tcp 0 0 0.0.0.0:443 0.0.0.0:*
LISTEN 6494/apache2
My .asoundrc is attached in case it's useful. It copied and tweaked from
http://www.mythtv.info/moin.cgi/DigitalSoundHowTo which Jarod pointed
to, so the comments about sound card type are not accurate. (It works
great, thanks)
Thanks for taking a look. Any help appreciated.
Rob
-------------- next part --------------
# Override the default output used by ALSA.
# If you do not override the default, your default
# device is identical to the (unmixed) analog device
# shown below. If you prefer mixed and/or digital
# output, uncomment the appropriate four lines below
# (only one slave.pcm line).
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"
}
# Alias for analog output on the nForce2 (hw:0,0)
# - 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 nForce2
pcm.analog {
type plug
slave.pcm "analog-hw"
}
# Control device (mixer, etc.) for the nForce2 card
ctl.analog {
type hw
card 0
}
# Alias for (rate-converted) mixed analog output on the
# nForce2 (hw:0,0)
# - This will accept audio input--regardless of rate--and
# convert to the rate required for the dmix plugin
# (in this case 48000Hz)
pcm.mixed-analog {
type plug
slave.pcm "dmix-analog"
}
# Control device (mixer, etc.) for the nForce2 card
ctl.mixed-analog {
type hw
card 0
}
# Alias for (rate-converted) digital (S/PDIF) output on the
# nForce2 (hw:0,2)
# - 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 nForce2 card
ctl.digital {
type hw
card 0
}
# Alias for mixed (rate-converted) digital (S/PDIF) output on the
# nForce2 (hw:0,2)
# - 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 nForce2 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 nForce2 (hw:0,0)
# 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
}
# Control device (mixer, etc.) for the nForce2 card
ctl.analog-hw {
type hw
card 0
}
# Alias for digital (S/PDIF) output on the nForce2 (hw:0,2)
# Do not use this directly--it requires specific rate,
# channels, and format
pcm.digital-hw {
type hw
card 0
# device 2
}
# Control device (mixer, etc.) for the nForce2 card
ctl.digital-hw {
type hw
card 0
}
# Direct software mixing plugin for analog output on
# the nForce2 (hw:0,0)
# 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 nForce2 card
ctl.dmix-analog {
type hw
card 0
}
# Direct software mixing plugin for digital (S/PDIF) output
# on the nForce2 (hw:0,2)
# 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 nForce2 card
ctl.dmix-digital {
type hw
card 0
}
More information about the mythtv-users
mailing list