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