[alsa-devel] PCM low level - need help

ODINOT Jean-Marc ETRALI jeanmarc.odinot at orange-ftgroup.com
Mon Apr 2 14:13:29 CEST 2007


Hi Alsa gurus,

I've to write an alsa driver for a custom card. I readed
"writing an alsa driver" and other paper about alsa and drivers. Well I
got a result, but not as good as I think it's possible with alsa.

My card have 30 output slots (and 7 input slots), can be 8Khz
or 16Khz (same rate for every slots), 16bits little endian by sample,
can have one or more sample for each slot (same for every slots) in a
frame, an hardware IT every frame (a frame is 30 slots :-).
The purpose is to get, for each IT, a frame with all the datas.
IT -> frame
    [channel1][channel2][channel3]...[channel30]
channelX
    [sample1][sample2]...[sampleN]
sampleX
    [16bitsle]


At this time, I've something like a frame if I use channel30
with speaker-test -c30, but if I use channel1, alsa give me a buffer
with many samples for channel1. And, just after oppening, I get an
extra word.

BTW I use .copy to get the buffer.

My questions:
-why the extra word (can I avoid it?)?
-how set the buffer len to always have all my channels (used or not)?
-is it possible to have more than a sample by channel contiguous?

Think's it's all for today, but maybe your answers will give me more ideas :-)

Thanx for replies (and please, forgive my awful english :-(,

JM

*********************************
This message and any attachments (the "message") are confidential and intended solely for the addressees. Any unauthorised
use or dissemination is prohibited.
Messages are susceptible to alteration. France Telecom Group shall not be liable for the message if altered, changed or
falsified.
If you are not the intended addressee of this message, please cancel it immediately and inform the sender.
********************************


More information about the Alsa-devel mailing list