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
PS: sorry for my previous (and my first) post which was in html only
********************************* 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. ********************************
participants (1)
-
ODINOT Jean-Marc ETRALI