[oe] [meta-browser][PATCH v3 0/4] Introduce EGL/GLES and component build patches for Chromium
Otavio Salvador
otavio at ossystems.com.br
Thu May 1 21:22:14 UTC 2014
Hello Carlos,
On Thu, May 1, 2014 at 5:36 PM, Carlos Rafael Giani
<dv at pseudoterminal.org> wrote:
> This set of patches extends the chromium recipe to allow for EGL&GLESv2 based 2D rendering,
> considerably improving performance. This also adds hardware-accelerated WebGL support.
>
> Three new PACKAGECONFIG for chromium are introduced:
>
> * "component-build" : If set, Chromium is built in component mode. Each subsystem of Chromium
> ends up in a separate shared object. The alternative is the regular mode, which links everything
> into one big binary. Component builds are useful for development and testing, and consumes
> significantly less RAM during building. It is essential when building Chromium on a 32-bit OS.
>
> * "use-egl" : Ordinarily, Chromium will try to use GLX and regular (= Desktop) OpenGL for 2D
> acceleration. If that fails, software rendering is used. If use-egl is set, it will use EGL
> instead of GLX and OpenGL ES 2.0 instead of regular OpenGL. This is very useful if the
> target platform provides hardware acceleration for this API. Chromium will then render all 2D
> components as well as WebGL contents with hardware acceleration, Canvas being an exception
> (see below).
>
> * "ignore-lost-context" : Without this flag, HTML Canvas will not be accelerated, even with the
> "use-egl" flag set. The reason for this is a conceptual problem: HTML Canvas expects the
> backing store of the canvas to persist until the web page goes away. But if the backing store
> is a GLES texture, then in theory the associated EGL context could get lost (for example, during
> a power management cycle), and the texture along with it. This violates requirements for canvas.
> So, one has to choose: either remain fully standards compliant, and have no acceleration, or
> have acceleration, and risk losing the Canvas content. Note that context losses do not happen on
> all platforms (they haven't been observed with Vivante GPUs for example, and internals of its
> galcore module do not show anything that could cause a lost context). But since these recipes
> do not depend on a specific platform, this option must be explicitely enabled.
Thanks for this. I applied them all in master branch.
--
Otavio Salvador O.S. Systems
http://www.ossystems.com.br http://code.ossystems.com.br
Mobile: +55 (53) 9981-7854 Mobile: +1 (347) 903-9750
More information about the Openembedded-devel
mailing list