[wpe-webkit] off-screen rendering of WPEWebkit
胡鉴-浙江工商大学(通信)
hujian0602 at 126.com
Sat Mar 2 00:25:34 PST 2024
Hi,
I would like to implement the functionality of embedding a WebKit browser within our self-developed UI framework using WPEWebKit. The hardware environment is based on an embedded ARMv8 architecture chip, and the software environment is a customized version of the Linux kernel. There are the following limitations:
(1) The environment does not support GPU hardware acceleration;
(2) It does not support standard graphics interface display windows such as X11;
(3) It does not support Wayland;
(4) Due to differences in the processor instruction set, we cannot directly reuse precompiled binary products and need to perform cross-compilation ourselves.
After some exploration, I compared frameworks like CEF, QT WebEngine, and WPEWebKit. Theoretically, WPEWebKit is exactly what I need. Thus, I referred to WPEBackend-direct and attempted to customize and modify it based on this to achieve the desired effect. The general approach is as follows:
WPE framework Application
------------------------------------------------------ ---------------------------------------------------
| | | | | | |
| webkit | wpe | WPEBackend | ---------------------------- | WPEBackend | self-developed |
| | | server | IPC for message, | client | UI framwork |
| | | | Shared mem for | | |
------------------------------------------------------- rendering frame ---------------------------------------------------
Based on the above approach, can I implement _wpe_renderer_backend_egl_offscreen_target_interface to achieve off-screen rendering and obtain rendering frame data in a bitmap-like format, and then send it to the frame buffer of our self-developed UI framework for drawing and displaying? If so, how should I go about implementing it?
I tried to implement RendererBackendEGLOffscreenTarget by myself, but for some reason, the WPE framework did not callback to my implementation. How should I locate where the problem lies?
Due to version limitations of GCC, C libraries, etc., I need to choose to use WPEWebKit-2.32.0 and libwpe-1.0.
I am a newcomer in the WPEWebKit field and look forward to everyone's help. Thank you very much!
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.webkit.org/pipermail/webkit-wpe/attachments/20240302/dc12c85b/attachment.htm>
More information about the webkit-wpe
mailing list