* low latency: which is the best distro-kernel-alsa version combo?
[not found] <E1BzmB2-00014C-RI@sc8-sf-list2.sourceforge.net>
@ 2004-08-25 8:03 ` Michele Spinolo
2004-08-25 20:09 ` Writing a mini ALSA driver from scratch Ludwig Schwardt
1 sibling, 0 replies; 3+ messages in thread
From: Michele Spinolo @ 2004-08-25 8:03 UTC (permalink / raw)
To: alsa-devel
Hi guys,
I'm using 3 Terratec EWS88D cards for an application where as low latency as
possible is required.
Actually I'm tunning on Alsa1.0.5a on Suse9.1(i386) with 2.6.5 kernel.
I was wondering if anyone could suggest a more latency perferming
dirstribution/kernel/driver combo.
Thank you very much!
Michele
-------------------------------------------------------
SF.Net email is sponsored by Shop4tech.com-Lowest price on Blank Media
100pk Sonic DVD-R 4x for only $29 -100pk Sonic DVD+R for only $33
Save 50% off Retail on Ink & Toner - Free Shipping and Free Gift.
http://www.shop4tech.com/z/Inkjet_Cartridges/9_108_r285
^ permalink raw reply [flat|nested] 3+ messages in thread
* Writing a mini ALSA driver from scratch
[not found] <E1BzmB2-00014C-RI@sc8-sf-list2.sourceforge.net>
2004-08-25 8:03 ` low latency: which is the best distro-kernel-alsa version combo? Michele Spinolo
@ 2004-08-25 20:09 ` Ludwig Schwardt
2004-08-25 21:16 ` James Courtier-Dutton
1 sibling, 1 reply; 3+ messages in thread
From: Ludwig Schwardt @ 2004-08-25 20:09 UTC (permalink / raw)
To: alsa-devel
Hi,
A student of mine is working on an audio capture driver for an ARM Linux
system. The ARM (AT91RM9200) processor talks via SSC and I2S to a set of
audio ADCs that capture 6 channels of 24-bit 192 kHz audio (no playback
involved).
The application is real-time sound logging (latency not important). I
figured it might save the application developers some hassles by
presenting this capture device as a soundcard to Linux. That way it may
simplify realtime processing by using standard callback interfaces such
as JACK (less apps to write!).
My questions to the ALSA gurus are:
1) Is this a sound approach? (sorry, that slipped out)
2) Is it possible to write a bare-bones ALSA driver with only capturing
functionality (no playback/mixer)? What are the bare essentials that
make up an ALSA driver? (I'm worried about overkill)
3) Are there any existing drivers that could serve as a good template
for a minimalist driver (I'm ignoring issues such as ISA/PCI etc.), to
see how viable this option is? I was thinking maybe Gravis Ultrasound or
such...
4) Is an ALSA driver even possible on ARM (dunno much about mmap and the
like)?
Thanks in advance for any tips. I was thinking of ploughing back any
generic stuff along the way (like the AT91 SSC support).
Ludwig Schwardt
-------------------------------------------------------
SF.Net email is sponsored by Shop4tech.com-Lowest price on Blank Media
100pk Sonic DVD-R 4x for only $29 -100pk Sonic DVD+R for only $33
Save 50% off Retail on Ink & Toner - Free Shipping and Free Gift.
http://www.shop4tech.com/z/Inkjet_Cartridges/9_108_r285
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: Writing a mini ALSA driver from scratch
2004-08-25 20:09 ` Writing a mini ALSA driver from scratch Ludwig Schwardt
@ 2004-08-25 21:16 ` James Courtier-Dutton
0 siblings, 0 replies; 3+ messages in thread
From: James Courtier-Dutton @ 2004-08-25 21:16 UTC (permalink / raw)
To: Ludwig Schwardt; +Cc: alsa-devel
Ludwig Schwardt wrote:
> Hi,
>
> A student of mine is working on an audio capture driver for an ARM Linux
> system. The ARM (AT91RM9200) processor talks via SSC and I2S to a set of
> audio ADCs that capture 6 channels of 24-bit 192 kHz audio (no playback
> involved).
>
> The application is real-time sound logging (latency not important). I
> figured it might save the application developers some hassles by
> presenting this capture device as a soundcard to Linux. That way it may
> simplify realtime processing by using standard callback interfaces such
> as JACK (less apps to write!).
>
> My questions to the ALSA gurus are:
>
> 1) Is this a sound approach? (sorry, that slipped out)
Yes.
>
> 2) Is it possible to write a bare-bones ALSA driver with only capturing
> functionality (no playback/mixer)? What are the bare essentials that
> make up an ALSA driver? (I'm worried about overkill)
You can do capture only, with no playback/mixer.
You will need to implement: -
a) probe, init, exit routies.
b) interrupt servicing routine.
c) and these functions:
static snd_pcm_ops_t snd_card_capture_ops = {
.open = snd_card_pcm_open_capture,
.close = snd_card_pcm_close_caputre,
.ioctl = snd_card_pcm_lib_ioctl,
.hw_params = snd_card_pcm_hw_params_caputre,
.hw_free = snd_card_pcm_hw_free_caputre,
.prepare = snd_card_pcm_prepare_caputre,
.trigger = snd_card_pcm_trigger_caputre,
.pointer = snd_card_pcm_pointer_caputre,
};
d) snd_card_pcm_pointer <- Tells alsa where the sound card hardware is
currently playing a sample from.
All those are explained in the "writing an alsa driver" docs.
>
> 3) Are there any existing drivers that could serve as a good template
> for a minimalist driver (I'm ignoring issues such as ISA/PCI etc.), to
> see how viable this option is? I was thinking maybe Gravis Ultrasound or
> such...
The "writing an alsa driver" is probably the best template.
The alsa drivers are very modular, so you will not have to write any
code that is common to other drivers. You only have to do the hardware
specific parts.
>
> 4) Is an ALSA driver even possible on ARM (dunno much about mmap and the
> like)?
It should be possible. I don't know how the ARM does mmap though.
You can use the snd-dummy alsa driver at first to check that alsa
compiles and installs OK on an ARM system.
>
> Thanks in advance for any tips. I was thinking of ploughing back any
> generic stuff along the way (like the AT91 SSC support).
>
> Ludwig Schwardt
>
-------------------------------------------------------
SF.Net email is sponsored by Shop4tech.com-Lowest price on Blank Media
100pk Sonic DVD-R 4x for only $29 -100pk Sonic DVD+R for only $33
Save 50% off Retail on Ink & Toner - Free Shipping and Free Gift.
http://www.shop4tech.com/z/Inkjet_Cartridges/9_108_r285
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2004-08-25 21:16 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
[not found] <E1BzmB2-00014C-RI@sc8-sf-list2.sourceforge.net>
2004-08-25 8:03 ` low latency: which is the best distro-kernel-alsa version combo? Michele Spinolo
2004-08-25 20:09 ` Writing a mini ALSA driver from scratch Ludwig Schwardt
2004-08-25 21:16 ` James Courtier-Dutton
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.