# Waylandsink Source: [https://docs.qualcomm.com/doc/80-70014-50/topic/waylandsink.html](https://docs.qualcomm.com/doc/80-70014-50/topic/waylandsink.html) The waylandsink plugin uses [GstVideoSink](https://gstreamer.freedesktop.org/documentation/video/gstvideosink.html?gi-language=c) GStreamer class. It is based on Wayland [Weston](https://wayland.pages.freedesktop.org/weston/) compositor, which creates its own window and renders the incoming video frames in the window. It maps the Weston client APIs and states to the appropriate GStreamer APIs and states. Qualcomm has extended the waylandsink implementation and added support for window positioning, proprietary GBM-based buffer backend for zero-copy and XDG shell backend. ## Inheritance chain [GObject](https://docs.gtk.org/gobject/) → [GstObject](https://gstreamer.freedesktop.org/documentation/gstreamer/gstobject.html?gi-language=c) → [GstElement](https://gstreamer.freedesktop.org/documentation/gstreamer/gstelement.html?gi-language=c) → [GstBaseSink](https://gstreamer.freedesktop.org/documentation/base/gstbasesink.html?gi-language=c) → [GstVideoSink](https://gstreamer.freedesktop.org/documentation/video/gstvideosink.html?gi-language=c) → GstWaylandSink The following tables provide information on pad templates and element properties of waylandsink. For use cases, see [Video playback use cases](https://docs.qualcomm.com/doc/80-70014-50/topic/video-playback-use-cases.html). ## Pad configuration | Pad Name | Capabilities | Capabilities | Capabilities | | --- | --- | --- | --- | | SINK template: 'sink'



Availability*:* Always



Direction: sink | video/x-raw | format: | { (string)BGRx, (string)BGRA, (string)RGBx, (string)xBGR,
(string)xRGB, (string)RGBA, (string)ABGR, (string)ARGB, (string)RGB,
(string)BGR, (string)RGB16, (string)BGR16, (string)YUY2,
(string)YVYU, (string)UYVY, (string)AYUV, (string)NV12,
(string)NV21, (string)NV16, (string)YUV9, (string)YVU9,
(string)Y41B, (string)I420, (string)YV12, (string)Y42B, (string)v308
} | | SINK template: 'sink'



Availability*:* Always



Direction: sink | video/x-raw | width: | [ 1, 2147483647 ] | | SINK template: 'sink'



Availability*:* Always



Direction: sink | video/x-raw | height: | [ 1, 2147483647 ] | | SINK template: 'sink'



Availability*:* Always



Direction: sink | video/x-raw | framerate: | [ 0/1, 2147483647/1 ] | | SINK template: 'sink'



Availability*:* Always



Direction: sink | video/x-raw(memory:DMABuf) | format: | { (string)BGRx, (string)BGRA, (string)RGBx, (string)xBGR,
(string)xRGB, (string)RGBA, (string)ABGR, (string)ARGB, (string)RGB,
(string)BGR, (string)RGB16, (string)BGR16, (string)YUY2,
(string)YVYU, (string)UYVY, (string)AYUV, (string)NV12,
(string)NV21, (string)NV16, (string)YUV9, (string)YVU9,
(string)Y41B, (string)I420, (string)YV12, (string)Y42B, (string)v308
} | | SINK template: 'sink'



Availability*:* Always



Direction: sink | video/x-raw(memory:DMABuf) | width: | [ 1, 2147483647 ] | | SINK template: 'sink'



Availability*:* Always



Direction: sink | video/x-raw(memory:DMABuf) | height: | [ 1, 2147483647 ] | | SINK template: 'sink'



Availability*:* Always



Direction: sink | video/x-raw(memory:DMABuf) | framerate: | [ 0/1, 2147483647/1 ] | | SINK template: 'sink'



Availability*:* Always



Direction: sink | video/x-raw(memory:GBM) | format: | { (string)BGRx, (string)BGRA, (string)RGBx, (string)xBGR,
(string)xRGB, (string)RGBA, (string)ABGR, (string)ARGB, (string)RGB,
(string)BGR, (string)RGB16, (string)BGR16, (string)YUY2,
(string)YVYU, (string)UYVY, (string)AYUV, (string)NV12,
(string)NV21, (string)NV16, (string)YUV9, (string)YVU9,
(string)Y41B, (string)I420, (string)YV12, (string)Y42B, (string)v308
} | | SINK template: 'sink'



Availability*:* Always



Direction: sink | video/x-raw(memory:GBM) | width: | [ 1, 2147483647 ] | | SINK template: 'sink'



Availability*:* Always



Direction: sink | video/x-raw(memory:GBM) | height: | [ 1, 2147483647 ] | | SINK template: 'sink'



Availability*:* Always



Direction: sink | video/x-raw(memory:GBM) | framerate: | [ 0/1, 2147483647/1 ] | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ## Element configuration Note: For the current release, **x**, **y**, **width**, and **height** properties are not supported. Table : Element properties of Waylandsink | Property | Description | | --- | --- | | name | | | parent | | | sync | | | max-lateness | | | qos | | | async | | | ts-offset | | | enable-last-sample | | | last-sample | | | blocksize | | | render-delay | | | throttle-time | | | max-bitrate | | | show-preroll-frame | | | display | | | xdg-shell | | | fullscreen | | | x | | | y | | | width | | | height | | **Parent Topic:** [Qualcomm GST plugins](https://docs.qualcomm.com/doc/80-70014-50/topic/qim-sdk-plugins.html) Last Published: Oct 27, 2025 [Previous Topic qtivtransform](https://docs.qualcomm.com/bundle/publicresource/80-70014-50/topics/qtivtransform.md) [Next Topic qtimlsnpe](https://docs.qualcomm.com/bundle/publicresource/80-70014-50/topics/qtimlsnpe.md)