At Wed, 11 Jul 2007 09:13:24 -0400, J. Scott Merritt wrote: > > On Wed, 11 Jul 2007 10:47:56 +0200 > Takashi Iwai <tiwai@xxxxxxx> wrote: > > > At Tue, 10 Jul 2007 11:08:01 -0700, > > Steve Longerbeam wrote: > > > > > > Hi, > > > > > > The driver for the sound engine I'm working on requires NONINTERLEAVED. > > > Will ALSA core give my driver a full period of left-only samples, > > > followed by a full period of right-only samples? Or are left/right > > > samples split within a single period (ie. first half of period is left > > > samples, second half is right samples)? > > > > The former case. The standard non-interleaved buffer consists of > > (the same buffer-size of) full-length of mono-streams. > > > > > > Takashi > > Doesn't this depend upon the driver implementation ? IIRC, I tried to > request NON-INTERLEAVED on the PXA270 AC97 driver and it told me that > wasn't a permitted operation (one of the reasons that I needed to use > mmap access in SALSA-Lib). The latter case, "multi-streams in each period" style, cannot be represented in ALSA API, more specifically, snd_pcm_channel_info struct. Thus, it has to be remapped virtually to the normal non-interleaved streams (each with full periods), or to avoid mmap and copy the data inside the driver. There is another COMPLEX_MMAP access type, but it's also for linear frames with constant increments, where each channel can be represented with snd_pcm_channel_info record. The "multi-streams in each period" is non-linear. Takashi _______________________________________________ Alsa-devel mailing list Alsa-devel@xxxxxxxxxxxxxxxx http://mailman.alsa-project.org/mailman/listinfo/alsa-devel