alsasink/mmap ?

classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view
|

alsasink/mmap ?

Bossart Pierre-Louis-B05224
Hi everyone,
I wonder why alsasink does not rely on the mmap() utilities provided by alsa, namely snd_pcm_mmap_begin() and snd_pcm_mmap_commit(). If my understanding is correct, the audio data provided to alsasink is first copied in a ring buffer, then passed to alsa using snd_pcm_writei(), which results in an additional copy from user to kernel space. For embedded low-power devices with dedicated internal ram for audio, this does not make a lot of sense, you want to write directly incoming data into the hardware buffer.
 
I understand though that not all audio devices support mmap, but looking at the cvs repository it does look like mmap was an option in gstreamer several years ago, and it disappeared in version 1.40 of gstalsasink.c. Does anyone know why this support was removed ? And how difficult it would be to add it again ?
 
Thanks for your feedback.
 
Regards,
- Pierre
 

-------------------------------------------------------------------------
This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
Build the coolest Linux based applications with Moblin SDK & win great prizes
Grand prize is a trip for two to an Open Source event anywhere in the world
http://moblin-contest.org/redirect.php?banner_id=100&url=/
_______________________________________________
gstreamer-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/gstreamer-devel