server: Add wtz-video-shell implementation 39/313439/1
authorSeunghun Lee <shiin.lee@samsung.com>
Tue, 21 May 2024 09:42:15 +0000 (18:42 +0900)
committerTizen Window System <tizen.windowsystem@gmail.com>
Wed, 26 Jun 2024 00:34:33 +0000 (09:34 +0900)
commit83f046f096f532241df0073da9dc0b1b3385880c
treee4e3032700d22b25d609fd6cfaf0d42b3aac1700
parentd89d9967331cad4aceb97b17169c9210b7a2cb5e
server: Add wtz-video-shell implementation

The Video Shell is a tizen extension to the wayland protocol. It is
designed to ensure synchronization between updates to the toplevel
surface content and the viewport of a video surface traditionally
rendered by an extenal process responsible for rendering video content.

The protocol mainly introduces the wtz_video_exported_viewport and
wtz_video_viewport_source.

The wtz_video_exported_viewport is intended to be created within the
application process and provides configuration options such as
destination size and transformation settings.  By extending
wtz_video_exported_viewport from wl_subsurface, applications can
leverage the synchronization capabilities of wl_subsurface to align
updates between the main surface content and video output.

The wtz_video_viewport_source, on the other hand, is meant to be
created by the process handling video content creation. Its output will
be adjusted (scaled up or down) based on the destination size and
transformations specified through wtz_video_exported_viewport.

This design approach is largely inspired by the wtz-foreign-shell
protocol.

Change-Id: I47c11150a9b4d120aa8bd9ead9791d53c26475e2
configure.ac
packaging/enlightenment.spec
src/bin/Makefile.mk
src/bin/server/e_compositor.c
src/bin/server/e_compositor_intern.h
src/bin/server/e_server.c
src/bin/server/e_server_intern.h
src/bin/server/e_video_shell.c [new file with mode: 0644]
src/bin/server/e_video_shell_intern.h [new file with mode: 0644]