Something about frame dropping.

There is #define SKIP_RENDERING_IF_LATE 1 in gui.cpp. It checks whether the 
frame should be dropped.

 

I have also checked Gui::advanceMovie() in gui.cpp, and found:

bool advanced = m->advance(); -> movie_root::advance() -> 
movie_root::advanceMovie()

There is advanceLiveChars(); this function seems consuming much cpu timing.

 

Can we add some aditional logic in movie_root::advance(). 

 

    try {

        const size_t elapsed = now - _lastMovieAdvancement;
     if (elapsed >= _movieAdvancementDelay)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~  

                                         Does it necessary? 

                                         I think it waste time.

                                         it don't skip any frame here.     

     {
            advanced = true;
      advanceMovie();

      // To catch-up lateness we pretend we advanced when 
            // was time for it. 
            // NOTE:
            //   now - _lastMovieAdvancement
            // gives you actual lateness in milliseconds
            //
            _lastMovieAdvancement += _movieAdvancementDelay;

     }

        //log_debug("Latenss: %d", now-_lastMovieAdvancement);
        
        executeAdvanceCallbacks();
     
     executeTimers();
 
 }



 
> Date: Fri, 29 Jan 2010 10:49:34 +0100
> Subject: Re: [Gnash-dev] gnash on mips performance issue
> From: s...@keybit.net
> To: fun...@hotmail.com
> CC: gnash-dev@gnu.org
> 
> 2010/1/29 ZouJQ <fun...@hotmail.com>:
> > I am use --enable-gui=sdl with agg as renderer.
> > After run gprof, it shows the bottleneck is agg renderer.
> >
> > Now I do a test. In function "Gui::display(movie_root* m)" gui.cpp, remove
> > "m->display();"(Render the frame) and "renderBuffer();"(show frame on
> > screen). The fps is the same as x86 !!!
> 
> Could be a false alarm, but I would check if SDL GUI deals correctly
> with invalidated regions.
> It migth be faster to compare the SDL gui with the GTK gui first. If
> GTK is faster then we
> would have found a culprit.
> 
> > 1. Is there any way to optimize agg? Can agg do something changing on mips
> > for better performance?
> 
> Most likely.
> Do you have fundings or expertise to help with that ?
> 
> Also frame dropping (which I've been thinking about) could reduce the
> problem with lower
> effort, but improving AGG use is surely something worth doing.
> 
> > 2. It is an exciting news that the next release will come soon, thank you
> > very much. Does this release modify renderer much, such as agg and cairo ?
> 
> No significant changes in rendering performance.
> More details on changes here: http://wiki.gnashdev.org/Release_0.8.7
> 
> --strk;
> 
> () Free GIS & Flash consultant/developer
> /\ http://foo.keybit.net/~strk/services.html
> 
> 
> _______________________________________________
> Gnash-dev mailing list
> Gnash-dev@gnu.org
> http://lists.gnu.org/mailman/listinfo/gnash-dev
                                          
_________________________________________________________________
MSN十年回馈,每位用户可免费获得价值25元的卡巴斯基反病毒软件2010激活码,快来领取!
http://kaba.msn.com.cn/?k=1
_______________________________________________
Gnash-dev mailing list
Gnash-dev@gnu.org
http://lists.gnu.org/mailman/listinfo/gnash-dev

Reply via email to