>i have written some code for mmaped-play. it works so far for up to 2 
>channels, but in multichannel-mode i get some mismatch about available 
>buffersize or exactly a snd_pcm_mmap_commit error.
>the essential part is the following:
>
>  snd_pcm_mmap_begin(alsa_handler, &area, &offset, &frames_transmit);
>
>  /* this is specific to interleaved streams (or non-interleaved
>   * streams with only one channel) */
>  outbuffer = ((char *) area->addr + (area->first + area->step * offset) / 
>8);
>
>  //write data
>  memcpy(outbuffer, data, (frames_transmit * bytes_per_sample));
> 
>  commitres = snd_pcm_mmap_commit(alsa_handler, offset, frames_transmit);
>
>i guess that outbuffer has a wrong size. does somebody have any idea about 
>this outbuffer calculation?

i don't know exactly why you're spending time doing this. whether you
decide to use it or not, JACK (http://jackit.sf.net/) has full,
working code that shows how to do this. but i'd personally recommend
that you consider using it instead of reinventing the wheel, etc.

--p


-------------------------------------------------------
This SF.Net email sponsored by: Free pre-built ASP.NET sites including
Data Reports, E-commerce, Portals, and Forums are available now.
Download today and enter to win an XBOX or Visual Studio .NET.
http://aspnet.click-url.com/go/psa00100003ave/direct;at.aspnet_072303_01/01
_______________________________________________
Alsa-devel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/alsa-devel

Reply via email to