SNDCTL_DSP_GETIPTR implementation
Juergen Lock
nox at jelal.kn-bremen.de
Tue Apr 26 18:52:19 UTC 2011
On Tue, Apr 26, 2011 at 07:44:49PM +0200, Juergen Lock wrote:
> On Tue, Apr 26, 2011 at 08:32:52PM +0300, Andriy Gapon wrote:
> > on 26/04/2011 19:50 Andriy Gapon said the following:
> > >
> > > Guys,
> > >
> > > I reading this http://manuals.opensound.com/developer/SNDCTL_DSP_GETOPTR.html
> > > It says: "In mmap mode (only) the ptr field tells the location where the next
> > > sample will be recorded."
> > > In my opinion that means that we have a mistake in our code and the following
> > > patch should be applied. But I am not sufficiently familiar with this code.
> >
> > It seems that with this change linux alsa lib with oss plugin works for audio
> > recording now. E.g. in skype.
> > Hope I wasn't sloppy with my testing again, so I will re-test.
> >
> > Juergen,
> > will you be able to test this too?
> >
> > > --- a/sys/dev/sound/pcm/dsp.c
> > > +++ b/sys/dev/sound/pcm/dsp.c
> > > @@ -1655,7 +1655,7 @@ dsp_ioctl
> > > /* XXX abusive DMA update: chn_rdupdate(rdch); */
> > > a->bytes = sndbuf_gettotal(bs);
> > > a->blocks = sndbuf_getblocks(bs) - rdch->blocks;
> > > - a->ptr = sndbuf_getreadyptr(bs);
> > > + a->ptr = sndbuf_getfreeptr(bs);
> > > rdch->blocks = sndbuf_getblocks(bs);
> > > CHN_UNLOCK(rdch);
> > > } else
> > >
> > > P.S. leading (indenting) whitespace in this file is a mess.
>
> Nice, I'll have a go.
Seems to work, yay! :)
Thanx,
Juergen
PS: the linux pulseaudio lib port can still be committed, right?
Because the updated rpm netchild built now also seems to no longer
need the symlink.
More information about the freebsd-multimedia
mailing list