gnash-dev
[Top][All Lists]
Advanced

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

Re: [Gnash-dev] Stuttering Playback due to Blocking Reads


From: strk
Subject: Re: [Gnash-dev] Stuttering Playback due to Blocking Reads
Date: Thu, 24 Sep 2009 13:01:02 +0200

On Thu, Sep 24, 2009 at 12:54:15PM +0200, Benjamin Wolsey wrote:
> 
> > Playback blockage may be due to several reasons, originating from one
> > of these two:
> > 
> >     1) buffer is below the user-specified trashold 
> >     2) gnash main thread itself is blocked
> > 
> 
> The blockage we are talking about in the bug is of the first type. It's
> caused because various places in the FLV parser make small reads or
> seeks of 1 to 12 bytes for various reasons, and this calls a read that
> blocks media parsing (or something) until the next segment of data is
> received. It's a design flaw in the parser, which really should get a
> buffer to read and not attempt to seek outside it.

Blocking on those reads shouldn't be a problem unless that thread
is also holding a lock needed by the main thread.
IIRC the lock on the Buffer itself isn't obtained until a full frame
is completely parsed.
Chances are there's a lock on the input stream itself, but can't
remember who else needs it; probably the NetStream.seek() function.

--strk;

 Free GIS & Flash consultant/developer      ()  ASCII Ribbon Campaign
 http://foo.keybit.net/~strk/services.html  /\  Keep it simple! 




reply via email to

[Prev in Thread] Current Thread [Next in Thread]