On Wed, 26 Jun 2002, Takashi Iwai wrote:

> At Wed, 26 Jun 2002 17:55:49 +0200 (CEST),
> Jaroslav wrote:
> > 
> > On Mon, 24 Jun 2002, Takashi Iwai wrote:
> > 
> > > At Tue, 18 Jun 2002 20:23:50 +0200 (CEST),
> > > Tim Goetze wrote:
> > > > 
> > > > Takashi Iwai wrote:
> > > > 
> > > > >well, draing samples at close corresponds to flushing the buffered
> > > > >data to disk at fclose.  then it sounds normal, doesn't it?
> > > > 
> > > > i'm still not convinced -- if the stream is running when you close it,
> > > > you're right, obviously. 
> > > > 
> > > > but when it's not running, starting and stopping it usually produces a
> > > > click that will ruin the audible effect of the few msec worth of sound
> > > > 'drained' (that nobody cares about anyway since the stream is about to
> > > > be closed).
> > > > 
> > > > right?
> > > 
> > > this is a question of behavior.
> > > i don't think it's absolutely "wrong" that the driver processes the
> > > rest of samples at stop status if drain() is called.
> > > 
> > > but..  from my feeling, i agree with you.  it doesn't matter if the
> > > samples are simply dropped at close() when its stream was already
> > > stopped.  so i myself would like to change this behavior.
> > > the fix must be quite easy.
> > > 
> > > however, we need a consensus about this.
> > > 
> > > any comments (or objections)?
> > 
> > We can see both behaviour for the device access. The current
> > implementation was taken from OSS. Actually, I don't mind to change it,
> > because programmers should call drop() or drain() before close depending
> > on their choice. It's also true, when the process is canceled for some 
> > signal, it would be better to drop the contents of ring buffer by default. 
> > It means that even the stream is running, it should be stoped and droped 
> > in native API.
> 
> yep.
> dropping in all cases will be the easiest solution.
> we can even reduce the strange conditionals in close().
> 
> drain() can be called at the close() of oss emulation layer
> if it's really necessary.

It is, but the OSS emulation code already uses a different flush method, 
so we don't need to touch this code.

                                                Jaroslav

-----
Jaroslav Kysela <[EMAIL PROTECTED]>
Linux Kernel Sound Maintainer
ALSA Project  http://www.alsa-project.org
SuSE Linux    http://www.suse.com



-------------------------------------------------------
This sf.net email is sponsored by: Jabber Inc.
Don't miss the IM event of the season | Special offer for OSDN members! 
JabberConf 2002, Aug. 20-22, Keystone, CO http://www.jabberconf.com/osdn
_______________________________________________
Alsa-devel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/alsa-devel

Reply via email to