[alsa-devel] Fwd: ALSA queries

Chakravarthi Pradeep doubleq7 at gmail.com
Thu Aug 9 13:19:53 CEST 2018


Hi Takashi,

How to enable log from ALSA lib core or ALSA core , so that I will
come to know why trigger stop call back is getting called back by
itself.

ring bufffer size is 57600 and minimum bytes device generates per
period is 3200(bytes). I have read one frame is 4 bytes from below
link.
https://www.alsa-project.org/main/index.php/FramesPeriods
So is it correct to give below values to snd_pcm_hardware
.period_bytes_min = 3200 /* per interrupt device provides minimum 3200
bytes of data*/
.periods_min = 72 /* 3200/4 /* 4 is because of (2 (channel )*  (16 bits/2)) */

Regards,
Chakravarthi
On Tue, Aug 7, 2018 at 7:13 PM Takashi Iwai <tiwai at suse.de> wrote:
>
> On Tue, 07 Aug 2018 15:36:22 +0200,
> Chakravarthi Pradeep wrote:
> >
> > >In the case above it's in frames.  But it can be defined in bytes
> > >depending on the hardware spec.  Some hardware defines in the time
> > >unit (like msec), too.
> >
> > Can you please tell me how to define in bytes ?
>
> Read the source before asking like this.  If not found, read the
> source again.  If still it's not fulfilled, ask more specific
> questions.
>
> The driver doesn't define it.  Rather the driver lets ALSA PCM core
> choose the parameters given from user-space.  But some parameters
> might not fit with the requirement of your hardware.  For satisfying
> it, the driver may give hw constraints to PCM core beforehand,
> typically set in the open callback.
>
> > >Now you know it.  And remember that PA is often die-hard.
> > So it means that I can not do rmmod until pulseaudio is removed , is
> > it correct ?
>
> Yes.  You cannot rmmod during any program is accessing to the sound
> device, not only PA.
>
>
> Takashi
>
> > Regards,
> > Chakravarthi
> > On Tue, Aug 7, 2018 at 6:45 PM Takashi Iwai <tiwai at suse.de> wrote:
> > >
> > > On Tue, 07 Aug 2018 15:12:08 +0200,
> > > Chakravarthi Pradeep wrote:
> > > >
> > > > Dear Takashi,
> > > >
> > > > Thanks for your reply.
> > > >
> > > > > The "period" in ALSA PCM definition represents the interval time (or
> > > > > frames) of the periodical interrupts on the ring buffer.  If the irq
> > > > > is issued for each 256 frames while the ring buffer size is 1024
> > > > > frames, periods = 1024/256 = 4.  The periods_min defines the minimal
> > > > > number of periods the hardware may accept.
> > > >
> > > > Is it  256 frames or  256 bytes ?
> > >
> > > In the case above it's in frames.  But it can be defined in bytes
> > > depending on the hardware spec.  Some hardware defines in the time
> > > unit (like msec), too.
> > >
> > > > fuser -v /dev/snd/* output is
> > > >                                          USER
> > > >   PID   ACCESS    COMMAND
> > > > /dev/snd/controlC0         Dell                                   1815
> > > > F.....           pulseaudio
> > >
> > > Now you know it.  And remember that PA is often die-hard.
> > >
> > >
> > > Takashi
> >
> >
> >
> > --
> > Thanks and Regards
> > Chakravarthi Pradeep.K
> > Ph: 91 9980434900
> >



-- 
Thanks and Regards
Chakravarthi Pradeep.K
Ph: 91 9980434900


More information about the Alsa-devel mailing list