[alsa-devel] ASoC: mmap or read/write?

Mike Looijmans mike.looijmans at topic.nl
Fri Oct 19 11:56:46 CEST 2012

On 10/19/2012 11:36 AM, Prasant J wrote:
> On Fri, Oct 19, 2012 at 2:28 PM, Clemens Ladisch <clemens at ladisch.de> wrote:
>> Mike Looijmans wrote:
>>> From: Prasant J <pj0585 at gmail.com>
>>>>> Prasant J wrote:
>>>>>> I'm writing an alsa application for recording & playing 16 channel audio.
>>>> I'm working with Beaglebone (ARM Cortex-A8 720 MHz). (Currently
>>>> failures are for 8 channels 32 bit / 16 bit, but our final target is
>>>> 16 channels)
>>>> I have managed to get Audio capture working fine (after certain linux
>>>> optimizations) but playback is giving under-runs (only when PLAYBACK &
>>>> CAPTURE run together)
>>> You must be doing something wrong. I'm doing 32-bit, 16-channel input
>>> at 51.2kHz on a OMAP-L138 (an ARM9 CPU at 450 MHz)
> @Mike:
> I'm playing & recording at the same time, that should be the reason.
Good point, my board only a has a single playback channel.

> When I was using arecord (only capture) I was getting overruns and
> only after making some linux optimizations, I was able to record
> properly. Are you 100% sure you do not observe any errors? Did you do
> tests for longer durations?

I've had it running for about an hour, using /dev/null as a target 
because I don't have enough memory to store that much data.

I did get lots of underruns/overruns while getting started, but they 
turned out te be related to clock configurations. So take a really good 
look at those, the way the registers are being set are often very 
obscure and register defines often don't match the datasheet.

>> Playback and capture at the same time seems to be harder for certain
>> embedded devices.  I don't know if this is a driver bug or a hardware
>> limitation.
> @Clemens:
> The bottle-neck is SD card access. Driver bug cannot be ruled out, but
> it is difficult to evaluate.
Sound familiar, on my board a USB SD cardreader connected to the USB 
port was actually faster than the built-in 4-wire SD.


Met vriendelijke groet / kind regards,

Mike Looijmans

TOPIC Embedded Systems
Eindhovenseweg 32-C, NL-5683 KH Best
Postbus 440, NL-5680 AK Best
Telefoon: (+31) – (0)499 - 33.69.79
Telefax: (+31) - (0)499 - 33.69.70
E-mail: mike.looijmans at topic.nl
Website: www.topic.nl

Dit e-mail bericht en de eventueel daarbij behorende bijlagen zijn uitsluitend bestemd voor de geadresseerde, zoals die blijkt uit het e-mail bericht en/of de bijlagen. Er kunnen gegevens met betrekking tot een derde instaan. Indien u als niet-geadresseerde dit bericht en de bijlagen ontvangt, terwijl u niet bevoegd of gemachtigd bent om dit bericht namens de geadresseerde te ontvangen, wordt u verzocht de afzender hierover direct te informeren en het e-mail bericht met de bijlagen te vernietigen. Ieder gebruik van de inhoud van het e-mail bericht, waaronder de daarbij behorende bijlagen, door een ander dan de geadresseerde is onrechtmatig jegens ons dan wel de eventueel in het e-mail bericht of de bijlagen voorkomende andere personen. TOPIC Embedded Systems is niet aansprakelijk voor enigerlei schade voortvloeiend uit het gebruik en/of acceptatie van dit e-mail bericht of de daarbij behorende bijlagen.

The contents of this message, as well as any enclosures, are addressed personally to, and thus solely intended for the addressee. They may contain information regarding a third party. A recipient who is neither the addressee, nor empowered to receive this message on behalf of the addressee, is kindly requested to immediately inform the sender of receipt, and to destroy the message and the enclosures. Any use of the contents of this message and/or the enclosures by any other person than the addressee or person who is empowered to receive this message, is illegal towards the sender and/or the aforementioned third party. TOPIC Embedded Systems is not  liable for any damage as a result of the use and/or acceptance of this message and as well as any enclosures.

More information about the Alsa-devel mailing list