Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 26 Apr 2011 19:44:49 +0200
From:      Juergen Lock <nox@jelal.kn-bremen.de>
To:        Andriy Gapon <avg@FreeBSD.org>
Cc:        Juergen Lock <nox@jelal.kn-bremen.de>, multimedia@FreeBSD.org
Subject:   Re: SNDCTL_DSP_GETIPTR implementation
Message-ID:  <20110426174449.GA4437@triton8.kn-bremen.de>
In-Reply-To: <4DB701C4.30802@FreeBSD.org>
References:  <4DB6F7BA.4070808@FreeBSD.org> <4DB701C4.30802@FreeBSD.org>

next in thread | previous in thread | raw e-mail | index | archive | help
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.

 Thanx!
	Juergen



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20110426174449.GA4437>