Re: Application supporting forward/rewind APIs

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



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

[Index of Archives]     [ALSA User]     [Linux Audio Users]     [Kernel Archive]     [Asterisk PBX]     [Photo Sharing]     [Linux Sound]     [Video 4 Linux]     [Gimp]     [Yosemite News]

  Powered by Linux