# Waylandsink

Source: [https://docs.qualcomm.com/doc/80-70014-50Y/topic/waylandsink.html](https://docs.qualcomm.com/doc/80-70014-50Y/topic/waylandsink.html)

waylandsink 插件使用 [GstVideoSink](https://gstreamer.freedesktop.org/documentation/video/gstvideosink.html?gi-language=c) GStreamer 类。该插件基于 Wayland [Weston](https://wayland.pages.freedesktop.org/weston/) 合成器，会创建自己的窗口并在窗口中渲染传入的视频帧。

还会将 Weston 客户端 API 和状态映射到相应的 GStreamer API 和状态。Qualcomm 扩展了 waylandsink 的实现类，并增加了对窗口定位、基于 GBM 的专有零拷贝缓冲区后端和 XDG shell 后端的支持。

## 继承链

[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

下表提供了有关 waylandsink 的接插口模板和组件属性的信息。有关用例信息，请参见 [视频播放用例](https://docs.qualcomm.com/doc/80-70014-50Y/topic/video-playback-use-cases.html)。

## 接插口配置

| 接插口名称 | 处理能力 | 处理能力 | 处理能力 |
| --- | --- | --- | --- |
| SINK 模板：'sink'<br><br><br>                                <br>可用性*：*总是<br><br><br>                                <br>方向：接收设备 | video/x-raw | 格式： | { (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 模板：'sink'<br><br><br>                                <br>可用性*：*总是<br><br><br>                                <br>方向：接收设备 | video/x-raw | 宽度： | [ 1, 2147483647 ] |
| SINK 模板：'sink'<br><br><br>                                <br>可用性*：*总是<br><br><br>                                <br>方向：接收设备 | video/x-raw | 高度： | [ 1, 2147483647 ] |
| SINK 模板：'sink'<br><br><br>                                <br>可用性*：*总是<br><br><br>                                <br>方向：接收设备 | video/x-raw | 帧率： | [ 0/1, 2147483647/1 ] |
| SINK 模板：'sink'<br><br><br>                                <br>可用性*：*总是<br><br><br>                                <br>方向：接收设备 | video/x-raw(memory:DMABuf) | 格式： | { (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 模板：'sink'<br><br><br>                                <br>可用性*：*总是<br><br><br>                                <br>方向：接收设备 | video/x-raw(memory:DMABuf) | 宽度： | [ 1, 2147483647 ] |
| SINK 模板：'sink'<br><br><br>                                <br>可用性*：*总是<br><br><br>                                <br>方向：接收设备 | video/x-raw(memory:DMABuf) | 高度： | [ 1, 2147483647 ] |
| SINK 模板：'sink'<br><br><br>                                <br>可用性*：*总是<br><br><br>                                <br>方向：接收设备 | video/x-raw(memory:DMABuf) | 帧率： | [ 0/1, 2147483647/1 ] |
| SINK 模板：'sink'<br><br><br>                                <br>可用性*：*总是<br><br><br>                                <br>方向：接收设备 | video/x-raw(memory:GBM) | 格式： | { (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 模板：'sink'<br><br><br>                                <br>可用性*：*总是<br><br><br>                                <br>方向：接收设备 | video/x-raw(memory:GBM) | 宽度： | [ 1, 2147483647 ] |
| SINK 模板：'sink'<br><br><br>                                <br>可用性*：*总是<br><br><br>                                <br>方向：接收设备 | video/x-raw(memory:GBM) | 高度： | [ 1, 2147483647 ] |
| SINK 模板：'sink'<br><br><br>                                <br>可用性*：*总是<br><br><br>                                <br>方向：接收设备 | video/x-raw(memory:GBM) | 帧率： | [ 0/1, 2147483647/1 ] |
|  |  |  |  |
|  |  |  |  |
|  |  |  |  |
|  |  |  |  |
|  |  |  |  |
|  |  |  |  |
|  |  |  |  |
|  |  |  |  |
|  |  |  |  |
|  |  |  |  |
|  |  |  |  |

## 组件配置

Note: 对于当前版本，不支持 **x**、**y**、**width** 和 **height** 属性。

Table : Waylandsink 的组件属性

| 属性 | 说明 |
| --- | --- |
| name | <ul class="ul" id="waylandsink__ul_v1g_h24_myb"><br>                                    <li class="li">对象名称</li><br><br>                                    <li class="li">标志：可读、可写</li><br><br>                                    <li class="li">字符串。默认值："waylandsink0"</li><br><br>                                </ul> |
| parent | <ul class="ul" id="waylandsink__ul_w1g_h24_myb"><br>                                    <li class="li">对象的父级</li><br><br>                                    <li class="li">标志：可读、可写</li><br><br>                                    <li class="li">"GstObject" 类型的对象</li><br><br>                                </ul> |
| sync | <ul class="ul" id="waylandsink__ul_x1g_h24_myb"><br>                                    <li class="li">时钟同步</li><br><br>                                    <li class="li">标志：可读、可写</li><br><br>                                    <li class="li">Boolean。默认值：true</li><br><br>                                </ul> |
| max-lateness | <ul class="ul" id="waylandsink__ul_y1g_h24_myb"><br>                                    <li class="li">缓冲区在被丢弃之前可以延迟的最大纳秒数（-1 无限制）</li><br><br>                                    <li class="li">标志：可读、可写</li><br><br>                                    <li class="li">64 位整型。范围：-1 - 9223372036854775807 默认值：20000000</li><br><br>                                </ul> |
| qos | <ul class="ul" id="waylandsink__ul_z1g_h24_myb"><br>                                    <li class="li">生成上游服务质量事件</li><br><br>                                    <li class="li">标志：可读、可写</li><br><br>                                    <li class="li">Boolean。默认值：true</li><br><br>                                </ul> |
| async | <ul class="ul" id="waylandsink__ul_abg_h24_myb"><br>                                    <li class="li">异步转到 PAUSED</li><br><br>                                    <li class="li">标志：可读、可写</li><br><br>                                    <li class="li">Boolean。默认值：true</li><br><br>                                </ul> |
| ts-offset | <ul class="ul" id="waylandsink__ul_bbg_h24_myb"><br>                                    <li class="li">时间戳偏移量（以纳秒为单位）</li><br><br>                                    <li class="li">标志：可读、可写</li><br><br>                                    <li class="li">64 位整型。范围：-9223372036854775808 - 9223372036854775807 默认值：0</li><br><br>                                </ul> |
| enable-last-sample | <ul class="ul" id="waylandsink__ul_cbg_h24_myb"><br>                                    <li class="li">启用 last-sample 属性</li><br><br>                                    <li class="li">标志：可读、可写</li><br><br>                                    <li class="li">Boolean。默认值：true</li><br><br>                                </ul> |
| last-sample | <ul class="ul" id="waylandsink__ul_dbg_h24_myb"><br>                                    <li class="li">在接收设备中收到的最后一个样本</li><br><br>                                    <li class="li">标志：可读</li><br><br>                                    <li class="li">"GstSample" 类型的装箱指针</li><br><br>                                </ul> |
| blocksize | <ul class="ul" id="waylandsink__ul_ebg_h24_myb"><br>                                    <li class="li">每个缓冲区要拉取的大小（以字节为单位，0 = 默认值）</li><br><br>                                    <li class="li">标志：可读、可写</li><br><br>                                    <li class="li">无符号整型。范围：0 - 4294967295 默认值：4096</li><br><br>                                </ul> |
| render-delay | <ul class="ul" id="waylandsink__ul_fbg_h24_myb"><br>                                    <li class="li">接收设备的额外渲染延迟（以纳秒为单位）</li><br><br>                                    <li class="li">标志：可读、可写</li><br><br>                                    <li class="li">64 位无符号整型。范围：0 - 18446744073709551615 默认值：0</li><br><br>                                </ul> |
| throttle-time | <ul class="ul" id="waylandsink__ul_gbg_h24_myb"><br>                                    <li class="li">在渲染的缓冲区之间保持的时间（0 = 禁用）</li><br><br>                                    <li class="li">标志：可读、可写</li><br><br>                                    <li class="li">64 位无符号整型。范围：0 - 18446744073709551615 默认值：0</li><br><br>                                </ul> |
| max-bitrate | <ul class="ul" id="waylandsink__ul_hbg_h24_myb"><br>                                    <li class="li">每秒要渲染的最大位数（0 = 禁用）</li><br><br>                                    <li class="li">标志：可读、可写</li><br><br>                                    <li class="li">64 位无符号整型。范围：0 - 18446744073709551615 默认值：0</li><br><br>                                </ul> |
| show-preroll-frame | <ul class="ul" id="waylandsink__ul_ibg_h24_myb"><br>                                    <li class="li">是否在前贴片广告期间渲染视频帧</li><br><br>                                    <li class="li">标志：可读、可写</li><br><br>                                    <li class="li">Boolean。默认值：true</li><br><br>                                </ul> |
| display | <ul class="ul" id="waylandsink__ul_jbg_h24_myb"><br>                                    <li class="li">要连接到的 Wayland 显示名称（如果未通过 GstContext 提供）</li><br><br>                                    <li class="li">标志：可读、可写</li><br><br>                                    <li class="li">字符串。默认值：null</li><br><br>                                </ul> |
| xdg-shell | <ul class="ul" id="waylandsink__ul_kbg_h24_myb"><br>                                    <li class="li">是否使用 XDG shell 协议进行显示</li><br><br>                                    <li class="li">标志：可读、可写</li><br><br>                                    <li class="li">Boolean。默认值：true</li><br><br>                                </ul> |
| fullscreen | <ul class="ul" id="waylandsink__ul_lbg_h24_myb"><br>                                    <li class="li">是否应使表面全屏显示</li><br><br>                                    <li class="li">标志：可读、可写、可在 NULL、READY、PAUSED 或 PLAYING 状态下更改</li><br><br>                                    <li class="li">Boolean。默认值：false</li><br><br>                                </ul> |
| x | <ul class="ul" id="waylandsink__ul_mbg_h24_myb"><br>                                    <li class="li">内容的 X 轴位置</li><br><br>                                    <li class="li">标志：可读、可写、可在 NULL、READY、PAUSED 或 PLAYING 状态下更改</li><br><br>                                    <li class="li">无符号整型。范围：0 - 1920 默认值：0</li><br><br>                                </ul> |
| y | <ul class="ul" id="waylandsink__ul_nbg_h24_myb"><br>                                    <li class="li">内容的 Y 轴位置</li><br><br>                                    <li class="li">标志：可读、可写、可在 NULL、READY、PAUSED 或 PLAYING 状态下更改</li><br><br>                                    <li class="li">无符号整型。范围：0 - 1920 默认值：0</li><br><br>                                </ul> |
| width | <ul class="ul" id="waylandsink__ul_obg_h24_myb"><br>                                    <li class="li">内容的目标宽度</li><br><br>                                    <li class="li">标志：可读、可写、可在 NULL、READY、PAUSED 或 PLAYING 状态下更改</li><br><br>                                    <li class="li">无符号整型。范围：0 - 1920 默认值：640</li><br><br>                                </ul> |
| height | <ul class="ul" id="waylandsink__ul_pbg_h24_myb"><br>                                    <li class="li">内容的目标高度</li><br><br>                                    <li class="li">标志：可读、可写、可在 NULL、READY、PAUSED 或 PLAYING 状态下更改</li><br><br>                                    <li class="li">无符号整型。范围：0 - 1080 默认值：480</li><br><br>                                </ul> |

**Parent Topic:** [Qualcomm GST 插件](https://docs.qualcomm.com/doc/80-70014-50Y/topic/qim-sdk-plugins.html)

Last Published: Nov 11, 2025

[Previous Topic
qtivtransform](https://docs.qualcomm.com/bundle/publicresource/80-70014-50Y/topics/qtivtransform.md) [Next Topic
qtimlsnpe](https://docs.qualcomm.com/bundle/publicresource/80-70014-50Y/topics/qtimlsnpe.md)