I found the solution, one can use mplayer to test forward/rewind feature of ALSA library. Regards, Anuj Aggarwal On Sat, Sep 26, 2009 at 9:29 AM, Raymond Yau <superquad.vortex2@xxxxxxxxx> wrote: > It seem that the current implementation , it seem that the application can > rewind the application pointer to hardware pointer , rewrite the next > sample.for all drivers > > > static snd_pcm_sframes_t snd_pcm_hw_rewindable(snd_pcm_t *pcm) > { > return snd_pcm_mmap_hw_avail(pcm); > } > > However this is almost impossible for any sound cards since the hardware > register just report the number of samples processed. this mean that the > sound card is already processing the next sample. > > > > > 2009/9/24 Anuj Aggarwal <anuj.aggarwal@xxxxxxxxx> > >> Yeah, I am looking for some sample application to test forward/rewind >> functionality. >> >> Regards, >> Anuj >> >> On Thu, Sep 24, 2009 at 1:27 PM, Raymond Yau >> <superquad.vortex2@xxxxxxxxx> wrote: >> > Do you mean that there is no test program to verify the implementation is >> > correct ? >> > >> > Some sound card 's hardware has FIFO buffer. >> > >> > For example , au88x0 >> > >> > according to patent 6167465 >> > >> > Additionally, a first-in-first-out (FIFO) buffer is established for the >> DMA >> > channel. Then a DMA request is generated in order to begin filling the >> FIFO >> > buffer with data from the first data segment 150(0) using the information >> > provided by CPU 210. >> > >> > >> > The FIFO buffer may be any suitable size capable of handling bus >> latencies >> > while small enough such that the memory requirement is not overly >> > burdensome. In one embodiment of the present invention, the FIFO buffer >> is >> > 32 samples or words in depth, which would withstand a maximum bus latency >> of >> > about 4 microseconds. By way of example, if 48 DMA channels trigger >> > simultaneously, with a trigger level set at half the buffer size (16 >> > samples), each DMA channel can wait 16 samples (20 microseconds per >> sample), >> > or approximately 320 microseconds before running out of data. >> > >> > >> > It seem that alsa-lib should not allow application to rewind the >> application >> > pointer to hardware pointer since you cannot write the next sample >> because >> > of FIFO buffer even using mmap read/write >> > >> > or bug in *snd_pcm_rewindable() ?* >> > >> > >> > 2009/9/24 Takashi Iwai <tiwai@xxxxxxx> >> > >> >> At Thu, 24 Sep 2009 13:04:24 +0530, >> >> Anuj Aggarwal wrote: >> >> > >> >> > Hi, >> >> > >> >> > I want to try the forward/rewind APIs supported by the ALSA library. >> >> > Can someone point to an ALSA application which exercises these APIs? >> >> >> >> Pulseaudio is using snd_pcm_rewind(). >> >> About snd_pcm_forward(), I don't know of... >> >> >> >> >> >> Takashi >> >> _______________________________________________ >> >> Alsa-devel mailing list >> >> Alsa-devel@xxxxxxxxxxxxxxxx >> >> http://mailman.alsa-project.org/mailman/listinfo/alsa-devel >> >> >> > _______________________________________________ >> > Alsa-devel mailing list >> > Alsa-devel@xxxxxxxxxxxxxxxx >> > http://mailman.alsa-project.org/mailman/listinfo/alsa-devel >> > >> >> >> >> -- >> Best Regards, >> Anuj Aggarwal >> > _______________________________________________ > Alsa-devel mailing list > Alsa-devel@xxxxxxxxxxxxxxxx > http://mailman.alsa-project.org/mailman/listinfo/alsa-devel > -- Best Regards, Anuj Aggarwal _______________________________________________ Alsa-devel mailing list Alsa-devel@xxxxxxxxxxxxxxxx http://mailman.alsa-project.org/mailman/listinfo/alsa-devel