Pairing WebKit and Wayland for Linux-based Embedded Web Content - - PowerPoint PPT Presentation

pairing webkit and wayland for linux based embedded web
SMART_READER_LITE
LIVE PREVIEW

Pairing WebKit and Wayland for Linux-based Embedded Web Content - - PowerPoint PPT Presentation

Pairing WebKit and Wayland for Linux-based Embedded Web Content Presentation Systems an Dober ek Igalia Dsseldorf, October 13th, 2014 twitter @falconsigh www blogs.igalia.com/zdobersek Topics WebKit Wayland Web


slide-1
SLIDE 1

Pairing WebKit and Wayland for Linux-based Embedded Web Content Presentation Systems

Žan Doberšek Igalia Düsseldorf, October 13th, 2014 twitter @falconsigh www blogs.igalia.com/zdobersek

slide-2
SLIDE 2

Topics

WebKit Wayland Web Content Presentation Systems Raspberry Pi · · · ·

2/20

slide-3
SLIDE 3

WebKit

Portable Web engine. PCs, phones, TVs, IVI, smartwatches Mac, iOS, Windows, Enlightenment, GNOME, Haiku · ·

3/20

slide-4
SLIDE 4

Wayland

Successor to the X windowing system. Deployed on PCs, phones, TVs, IVI.

4/20

slide-5
SLIDE 5

Web Content Presentation Systems

Embedded systems presenting Web interface or content. Smart TV interfaces IVI Infoboards · · ·

5/20

slide-6
SLIDE 6

youtube.com/tv

6/20

slide-7
SLIDE 7

Raspberry Pi

The popular single-board mini-computer. Single-core 700MHz ARMv6 CPU 512MB RAM (Model B) VideoCore IV GPU · · ·

7/20

slide-8
SLIDE 8

Raspberry Pi - Wayland support

Drivers partially open. Openly available implementation of the Wayland EGL platform. Support in Mesa - in progress.

8/20

slide-9
SLIDE 9

WebKit and Wayland

Wayland support provided by the toolkit. Must be run under the parent compositor. Complicated hardware-accelerated compositing of Web content. A nested Wayland compositor needed in the UIProcess. ·

9/20

slide-10
SLIDE 10

10/20

slide-11
SLIDE 11

... but why the toolkit?

Adds unnecessary complexity in the architecture. No need for various widgets, theming support. Not run under the traditional desktop environment.

11/20

slide-12
SLIDE 12

The idea

Merge the UIProcess and the compositor. Have the WebProcess interact directly with the compositor.

12/20

slide-13
SLIDE 13

Benefits

Removes the intermediate purpose of the UIProcess. Reduces the architectural complexity. Enables simplifying the compositor.

13/20

slide-14
SLIDE 14

14/20

slide-15
SLIDE 15

Implementation

UIProcess now a shared library that the compositor loads. Compositor shows the single surface designated to the WebProcess. Input events originate from the compositor, handled by the UIProcess.

15/20

slide-16
SLIDE 16

Testing it out on the Raspberry Pi

Targeting 720p, 1080p a sweet dream. 60FPS on simple CSS 3D animations, WebGL content. Fluent 720p video playback (hardware decoder). Reducing memory consumption. Still, weak and limiting hardware.

16/20

slide-17
SLIDE 17

Simplified Wayland compositor

Initially stuck with Weston. DE-oriented compositors include window management. Target use cases give leeway to simpler implementations. Simplicity yields better performance.

17/20

slide-18
SLIDE 18

The future

Eventually address more complex use cases. Some sort of window management might be required. Support for additional forms of input. Web standards support.

18/20

slide-19
SLIDE 19

Other (better!) hardware

#1 dependency: Wayland EGL platform implementation. NVIDIA Tegra (Jetson TK1) Intel HD graphics (Minnowboard MAX) ARM Mali (Odroid U3) · · ·

19/20

slide-20
SLIDE 20

Questions

Thank you.

20/20