[pulseaudio-discuss] RFC: [PATCH] Fix assertion error when used with a52 alsa plugin

Colin Guthrie gmane at colin.guthr.ie
Mon Jun 7 01:13:15 PDT 2010


I recently got my soldering iron out and wired up the optical port on my
motherboard (yes I did have to solder the ports, even tho' the final
stage is light!)

As I'll be wanting to use AC3/DTS passthrough and the like, it's one of
the few occasions where I might not actually use PulseAudio (shock!)
until it supports such encoded passthrough, but in the process of
generally fiddling, I played with the alsa a52 plugin.

Putting in a definition for pcm.a51 in ./asoundrc meant that PulseAudio
automatically offered me Digitial 5.1 support which is neat, but sadly
it crashed Pulse with an assertion.

The problem was that when setting up mmap with the a52 plugin, the
-EAGAIN error was returned and the try_recover method called which has
an assertion on the error != EAGAIN.

Looking at other bits in the code, I copied/pasted a potential fix.

As I really don't understand this code in any depth, I'm not willing to
commit the patch straight away, so please find it attached for review.

Lennart, as your LinuxTag talk is on surround sound in Gnome, maybe a
fix for this should go in sooner rather than later :D

While it stops PA from crashing, I couldn't get the a52 stuff to work.
It does make some kind of noise, but it seems that all of the sound is
concentrated into several microseconds length and PA underruns like
crazy. FWIW speaker-test does work with a52, but the time spent on each
speaker is much less than with analog 5.1. As it just produces white
noise I couldn't really tell if it was properly broken. I'll have a more
thorough play at some point.


Colin Guthrie

Day Job:
  Tribalogic Limited [http://www.tribalogic.net/]
Open Source:
  Mandriva Linux Contributor [http://www.mandriva.com/]
  PulseAudio Hacker [http://www.pulseaudio.org/]
  Trac Hacker [http://trac.edgewall.org/]
-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: 0510-alsa-Fix-assertion-on-mmap_write-triggered-via-a52-p.patch
URL: <http://lists.freedesktop.org/archives/pulseaudio-discuss/attachments/20100607/c8de3817/attachment.asc>

More information about the pulseaudio-discuss mailing list