[pulseaudio-tickets] [PulseAudio] #570: pulseaudio crashes with a52-alsa-sink
PulseAudio
trac-noreply at tango.0pointer.de
Wed May 20 12:23:40 PDT 2009
#570: pulseaudio crashes with a52-alsa-sink
--------------------+-------------------------------------------------------
Reporter: SWeini | Owner: lennart
Type: defect | Status: new
Milestone: | Component: module-alsa-*
Keywords: |
--------------------+-------------------------------------------------------
hi there,
i have pulseaudio-0.9.15, pavucontrol 0.9.8, 2.6.28 kernel, asus xonar d2x
sound card
i can't get pulseaudio to work with my alsa-a52-encoding-device
asound.conf:
--------------------
{{{
pcm.!a52 {
@args [ CARD DEV ]
@args.CARD {
type string
default {
@func getenv
vars [
ALSA_IEC958_CARD
ALSA_PCM_CARD
ALSA_CARD
]
default {
@func refer
name defaults.pcm.iec958.card
}
}
}
@args.DEV {
type integer
default {
@func igetenv
vars [
ALSA_IEC958_DEVICE
]
default {
@func refer
name defaults.pcm.iec958.device
}
}
}
type rate
slave.pcm {
type a52
slavepcm {
@func concat
strings [
"cards."
{
@func card_driver
card $CARD
}
".pcm.iec958." $DEV ":CARD=" $CARD
]
}
}
slave.rate 48000
hint {
show "5.1 Surround output through AC3-encoding"
description "5.1 Surround output through AC3-encoding"
device $DEV
}
}
}}}
--------------------
the problem in short:
as soon as pulseaudio starts playing on the a52-device (speaker-test -c 6
-D default) it is shut down due to an error
--------------------
{{{
I: alsa-sink.c: Trying resume...
D: alsa-sink.c: hwbuf_unused=0
D: alsa-sink.c: setting avail_min=1
I: alsa-sink.c: Resumed successfully...
I: alsa-sink.c: Starting playback.
D: module-suspend-on-idle.c: Sink alsa_output.pci_13f6_8788 becomes idle.
D: module-suspend-on-idle.c: Sink alsa_output.pci_13f6_8788 becomes busy.
D: memblockq.c: memblockq requested: maxlength=33554432, tlength=0,
base=12, prebuf=0, minreq=1 maxrewind=0
D: memblockq.c: memblockq sanitized: maxlength=33554436, tlength=33554436,
base=12, prebuf=0, minreq=12 maxrewind=0
I: sink-input.c: Created input 0 "ALSA Playback" on
alsa_output.pci_13f6_8788 with sample spec s16le 6ch 48000Hz and channel
map front-left,front-right,rear-left,rear-right,front-center,lfe
I: protocol-native.c: Requested tlength=7281.75 ms, minreq=1820.44 ms
D: protocol-native.c: Traditional mode enabled, modifying sink usec only
for compat with minreq.
D: memblockq.c: memblockq requested: maxlength=4194304, tlength=4194288,
base=12, prebuf=3145716, minreq=1048572 maxrewind=0
D: memblockq.c: memblockq sanitized: maxlength=4194312, tlength=4194288,
base=12, prebuf=3145716, minreq=1048572 maxrewind=0
I: protocol-native.c: Final latency 7345.75 ms = 3640.88 ms + 2*1820.44 ms
+ 64.00 ms
D: core-subscribe.c: Dropped redundant event due to change event.
D: protocol-native.c: Requesting rewind due to end of underrun.
D: alsa-sink.c: Requested to rewind 36864 bytes.
D: alsa-sink.c: Limited to 25344 bytes.
D: alsa-sink.c: before: 2112
E: alsa-sink.c: snd_pcm_rewind() failed: Unknown error 3072
I: module.c: Unloading "module-alsa-card" (index: #5).
}}}
--------------------
the corresponding speaker-test output:
--------------------
{{{
Playback device is default
Stream parameters are 48000Hz, S16_LE, 6 channels
Using 16 octaves of pink noise
Rate set to 48000Hz (requested 48000Hz)
Buffer size range from 43 to 349525
Period size range from 21 to 87382
Using max buffer size 349524
Periods = 4
was set period_size = 87381
was set buffer_size = 349524
0 - Front Left
4 - Center
Write error: -32,Broken pipe
Can't recovery from underrun, prepare failed: Input/output error
}}}
--------------------
speaker-test -c 6 -D a52 works just fine:
--------------------
{{{
Playback device is a52
Stream parameters are 48000Hz, S16_LE, 6 channels
Using 16 octaves of pink noise
Rate set to 48000Hz (requested 48000Hz)
Buffer size range from 3072 to 32256
Period size range from 1536 to 1536
Using max buffer size 32256
Periods = 4
was set period_size = 1536
was set buffer_size = 32256
}}}
--------------------
pulseaudio detects this as a separate card configuration as it should:
--------------------
{{{
I: sink.c: Created sink 1 "alsa_output.pci_13f6_8788" with sample spec
s16le 6ch 48000Hz and channel map front-left,front-right,rear-left,rear-
right,front-center,lfe
I: sink.c: alsa.resolution_bits = "16"
I: sink.c: device.api = "alsa"
I: sink.c: device.class = "sound"
I: sink.c: alsa.class = "generic"
I: sink.c: alsa.subclass = "generic-mix"
I: sink.c: alsa.name = ""
I: sink.c: alsa.id = ""
I: sink.c: alsa.subdevice = "0"
I: sink.c: alsa.subdevice_name = ""
I: sink.c: alsa.device = "0"
I: sink.c: device.string = "a52:0"
I: sink.c: device.buffering.buffer_size = "36864"
I: sink.c: device.buffering.fragment_size = "18432"
I: sink.c: device.access_mode = "mmap"
I: sink.c: device.profile.name = "iec958-ac3-surround-51"
I: sink.c: device.profile.description = "Digital Surround 5.1
(IEC958/AC3)"
I: sink.c: device.description = ""
I: sink.c: alsa.card = "0"
I: sink.c: alsa.card_name = "Xonar D2X"
I: sink.c: alsa.long_card_name = "Asus Virtuoso 200 (rev 2) at 0x5e00,
irq 16"
I: sink.c: device.icon_name = "audio-card"
}}}
--------------------
alsa-util-dump:
--------------------
{{{
D: alsa-util.c: snd_pcm_dump():
D: alsa-util.c: Rate conversion PCM (48000)
D: alsa-util.c: Its setup is:
D: alsa-util.c: stream : PLAYBACK
D: alsa-util.c: access : MMAP_INTERLEAVED
D: alsa-util.c: format : S16_LE
D: alsa-util.c: subformat : STD
D: alsa-util.c: channels : 6
D: alsa-util.c: rate : 48000
D: alsa-util.c: exact rate : 48000 (48000/1)
D: alsa-util.c: msbits : 16
D: alsa-util.c: buffer_size : 3072
D: alsa-util.c: period_size : 1536
D: alsa-util.c: period_time : 32000
D: alsa-util.c: tstamp_mode : ENABLE
D: alsa-util.c: period_step : 1
D: alsa-util.c: avail_min : 1536
D: alsa-util.c: period_event : 0
D: alsa-util.c: start_threshold : -1
D: alsa-util.c: stop_threshold : 6917529027641081856
D: alsa-util.c: silence_threshold: 0
D: alsa-util.c: silence_size : 0
D: alsa-util.c: boundary : 6917529027641081856
D: alsa-util.c: Slave: A52 Output Plugin
D: alsa-util.c: Its setup is:
D: alsa-util.c: stream : PLAYBACK
D: alsa-util.c: access : MMAP_INTERLEAVED
D: alsa-util.c: format : S16_LE
D: alsa-util.c: subformat : STD
D: alsa-util.c: channels : 6
D: alsa-util.c: rate : 48000
D: alsa-util.c: exact rate : 48000 (48000/1)
D: alsa-util.c: msbits : 16
D: alsa-util.c: buffer_size : 3072
D: alsa-util.c: period_size : 1536
D: alsa-util.c: period_time : 32000
D: alsa-util.c: tstamp_mode : ENABLE
D: alsa-util.c: period_step : 1
D: alsa-util.c: avail_min : 1536
D: alsa-util.c: period_event : 0
D: alsa-util.c: start_threshold : -1
D: alsa-util.c: stop_threshold : 6917529027641081856
D: alsa-util.c: silence_threshold: 0
D: alsa-util.c: silence_size : 0
D: alsa-util.c: boundary : 6917529027641081856
}}}
--------------------
do you have any clue what the problem could be?
i suggest the problem is the different period_size/buffer_size
configuration, but i'm not sure - and i don't know how to change it
thx, simon
--
Ticket URL: <http://pulseaudio.org/ticket/570>
PulseAudio <http://pulseaudio.org/>
The PulseAudio Sound Server
More information about the pulseaudio-bugs
mailing list