Pairing WebKit and Wayland for Linux-Based Embedded Web Content Presentation Systems (ELCE 2014)
-
Upload
igalia -
Category
Technology
-
view
63 -
download
2
description
Transcript of Pairing WebKit and Wayland for Linux-Based Embedded Web Content Presentation Systems (ELCE 2014)
![Page 1: Pairing WebKit and Wayland for Linux-Based Embedded Web Content Presentation Systems (ELCE 2014)](https://reader034.fdocuments.us/reader034/viewer/2022051513/548090cd5906b5ea288b4754/html5/thumbnails/1.jpg)
Pairing WebKit and Wayland forLinux-based Embedded WebContent Presentation SystemsŽan DoberšekIgalia
Düsseldorf, October 13th, 2014
twitter @falconsighwww blogs.igalia.com/zdobersek
![Page 2: Pairing WebKit and Wayland for Linux-Based Embedded Web Content Presentation Systems (ELCE 2014)](https://reader034.fdocuments.us/reader034/viewer/2022051513/548090cd5906b5ea288b4754/html5/thumbnails/2.jpg)
Topics
WebKitWaylandWeb Content Presentation SystemsRaspberry Pi
····
2/20
![Page 3: Pairing WebKit and Wayland for Linux-Based Embedded Web Content Presentation Systems (ELCE 2014)](https://reader034.fdocuments.us/reader034/viewer/2022051513/548090cd5906b5ea288b4754/html5/thumbnails/3.jpg)
WebKit
Portable Web engine.
PCs, phones, TVs, IVI, smartwatchesMac, iOS, Windows, Enlightenment, GNOME, Haiku
··
3/20
![Page 4: Pairing WebKit and Wayland for Linux-Based Embedded Web Content Presentation Systems (ELCE 2014)](https://reader034.fdocuments.us/reader034/viewer/2022051513/548090cd5906b5ea288b4754/html5/thumbnails/4.jpg)
Wayland
Successor to the X windowing system.
Deployed on PCs, phones, TVs, IVI.
4/20
![Page 5: Pairing WebKit and Wayland for Linux-Based Embedded Web Content Presentation Systems (ELCE 2014)](https://reader034.fdocuments.us/reader034/viewer/2022051513/548090cd5906b5ea288b4754/html5/thumbnails/5.jpg)
Web Content Presentation Systems
Embedded systems presenting Web interface or content.
Smart TV interfacesIVIInfoboards
···
5/20
![Page 6: Pairing WebKit and Wayland for Linux-Based Embedded Web Content Presentation Systems (ELCE 2014)](https://reader034.fdocuments.us/reader034/viewer/2022051513/548090cd5906b5ea288b4754/html5/thumbnails/6.jpg)
youtube.com/tv
6/20
![Page 7: Pairing WebKit and Wayland for Linux-Based Embedded Web Content Presentation Systems (ELCE 2014)](https://reader034.fdocuments.us/reader034/viewer/2022051513/548090cd5906b5ea288b4754/html5/thumbnails/7.jpg)
Raspberry Pi
The popular single-board mini-computer.
Single-core 700MHz ARMv6 CPU512MB RAM (Model B)VideoCore IV GPU
···
7/20
![Page 8: Pairing WebKit and Wayland for Linux-Based Embedded Web Content Presentation Systems (ELCE 2014)](https://reader034.fdocuments.us/reader034/viewer/2022051513/548090cd5906b5ea288b4754/html5/thumbnails/8.jpg)
Raspberry Pi - Wayland support
Drivers partially open.
Openly available implementation of the Wayland EGL platform.
Support in Mesa - in progress.
8/20
![Page 9: Pairing WebKit and Wayland for Linux-Based Embedded Web Content Presentation Systems (ELCE 2014)](https://reader034.fdocuments.us/reader034/viewer/2022051513/548090cd5906b5ea288b4754/html5/thumbnails/9.jpg)
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
![Page 10: Pairing WebKit and Wayland for Linux-Based Embedded Web Content Presentation Systems (ELCE 2014)](https://reader034.fdocuments.us/reader034/viewer/2022051513/548090cd5906b5ea288b4754/html5/thumbnails/10.jpg)
10/20
![Page 11: Pairing WebKit and Wayland for Linux-Based Embedded Web Content Presentation Systems (ELCE 2014)](https://reader034.fdocuments.us/reader034/viewer/2022051513/548090cd5906b5ea288b4754/html5/thumbnails/11.jpg)
... 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
![Page 12: Pairing WebKit and Wayland for Linux-Based Embedded Web Content Presentation Systems (ELCE 2014)](https://reader034.fdocuments.us/reader034/viewer/2022051513/548090cd5906b5ea288b4754/html5/thumbnails/12.jpg)
The idea
Merge the UIProcess and the compositor.
Have the WebProcess interact directly with the compositor.
12/20
![Page 13: Pairing WebKit and Wayland for Linux-Based Embedded Web Content Presentation Systems (ELCE 2014)](https://reader034.fdocuments.us/reader034/viewer/2022051513/548090cd5906b5ea288b4754/html5/thumbnails/13.jpg)
Benefits
Removes the intermediate purpose of the UIProcess.
Reduces the architectural complexity.
Enables simplifying the compositor.
13/20
![Page 14: Pairing WebKit and Wayland for Linux-Based Embedded Web Content Presentation Systems (ELCE 2014)](https://reader034.fdocuments.us/reader034/viewer/2022051513/548090cd5906b5ea288b4754/html5/thumbnails/14.jpg)
14/20
![Page 15: Pairing WebKit and Wayland for Linux-Based Embedded Web Content Presentation Systems (ELCE 2014)](https://reader034.fdocuments.us/reader034/viewer/2022051513/548090cd5906b5ea288b4754/html5/thumbnails/15.jpg)
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
![Page 16: Pairing WebKit and Wayland for Linux-Based Embedded Web Content Presentation Systems (ELCE 2014)](https://reader034.fdocuments.us/reader034/viewer/2022051513/548090cd5906b5ea288b4754/html5/thumbnails/16.jpg)
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
![Page 17: Pairing WebKit and Wayland for Linux-Based Embedded Web Content Presentation Systems (ELCE 2014)](https://reader034.fdocuments.us/reader034/viewer/2022051513/548090cd5906b5ea288b4754/html5/thumbnails/17.jpg)
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
![Page 18: Pairing WebKit and Wayland for Linux-Based Embedded Web Content Presentation Systems (ELCE 2014)](https://reader034.fdocuments.us/reader034/viewer/2022051513/548090cd5906b5ea288b4754/html5/thumbnails/18.jpg)
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
![Page 19: Pairing WebKit and Wayland for Linux-Based Embedded Web Content Presentation Systems (ELCE 2014)](https://reader034.fdocuments.us/reader034/viewer/2022051513/548090cd5906b5ea288b4754/html5/thumbnails/19.jpg)
Other (better!) hardware
#1 dependency: Wayland EGL platform implementation.
NVIDIA Tegra (Jetson TK1)Intel HD graphics (Minnowboard MAX)ARM Mali (Odroid U3)
···
19/20
![Page 20: Pairing WebKit and Wayland for Linux-Based Embedded Web Content Presentation Systems (ELCE 2014)](https://reader034.fdocuments.us/reader034/viewer/2022051513/548090cd5906b5ea288b4754/html5/thumbnails/20.jpg)
Questions
Thank you.
20/20