[Webkit-unassigned] [Bug 90375] Parallel image decoders

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Wed Aug 1 16:20:18 PDT 2012


https://bugs.webkit.org/show_bug.cgi?id=90375





--- Comment #52 from Hin-Chung Lam <hclam at google.com>  2012-08-01 16:20:16 PST ---
Now that I have drafted patch to remove currentFrameHasAlpha() and understand the problem better I'm going back to our discussion before.

> 
> I suggested RetainedModeBitmapImage instead of setter because of it.

I think having a wrapper class is fine, as long as there's only one way to trigger image decoding, i.e. nativeImageForCurrentFrame().

> 
> 
> > 3. Limit the asynchronous interface only to ImageSource
> > 
> > I noticed in your patch that ImageSource and ImageDecoder are both asynchronous. I would like to reduce this down to only ImageSource. In fact because ImageSource.cpp is only used by non-cg port, we can just implement a parallel decoding mode there and keep ImageDecoder always synchronous.
> > 
> 
> I think your concern is in that ImageSource delegates ImageDecoder to ParallelImageDecoder. Maybe because ImageSource must directly call ImageDecoder::frameHasAlphaAtIndex and other metadata query functions.
> If ParallelImageDecoder creates its own ImageDecoder, it will be ok.

My concern here is to have a simpler interface and contract between classes, and having fewer asynchronous interfaces helps. My suggestion is to keep ImageDecoder synchronous but ImageSource doing the work to make things parallel.

-- 
Configure bugmail: https://bugs.webkit.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.



More information about the webkit-unassigned mailing list