DP 屏测试

QuecPi Alpha 单板电脑支持通过 Type-CDP 接口的方法接显示屏。

DP 屏连接

按照下图进行连接:

图片1

Type-C 转 DP 模块

图片3

连接Type-C 转 DP 模块后的 QuecPi

DP 屏显示 Weston 桌面

连接上 DP 显示器并上电开机后,启动显示服务: systemctl start init_displayDP 屏会显示 Weston 桌面。

显示效果如下图:

利用 DP 屏播放视频

执行视频回放命令:

mount -o rw,remount /
export XDG_RUNTIME_DIR=/dev/socket/weston
export WAYLAND_DISPLAY=wayland-1
gst-launch-1.0 -e filesrc location=/root/quectel.mp4 ! qtdemux ! \
    queue ! h264parse ! v4l2h264dec capture-io-mode=5 output-io-mode=5 ! \
    waylandsink enable-last-sample=false fullscreen=true
    #其中location后的参数根据实际视频路径进行修改

命令说明:

  • gst-launch-1.0 这是 GStreamer 的命令行工具,用于启动一个 GStreamer 管道(pipeline)。-e 参数表示在管道结束时退出,而不是继续运行。
  • filesrc location=/root/quectel.mp4 filesrc 用于从文件中读取数据, location=/root/quectel.mp4 指定要读取的文件路径。
  • ! qtdemux ! 是一个连接符号,用于将前一个元素的输出连接到后一个元素的输入,qtdemux 用于解复用 MP4 文件。MP4 文件通常包含视频流和音频流,qtdemux 的作用是将这些流分离出来,以便后续处理。
  • ! queue queue 是一个缓冲队列元素,用于在管道中缓冲数据。它可以缓解数据处理速度不一致的问题,例如,当解码器处理速度较慢时,queue 可以暂存数据,避免数据丢失。
  • ! h264parse h264parse 用于解析 H.264 视频流。它会将 H.264 视频流中的数据重新组织成适合解码器处理的格式。
  • ! v4l2h264dec capture-io-mode=5 output-io-mode=5 v4l2h264dec 用于解码 H.264 视频流,capture-io-mode=5:设置捕获输入模式为 5,这通常与硬件加速有关,具体含义取决于硬件和驱动程序;output-io-mode=5 设置输出模式为 5,同样与硬件加速相关。
  • ! waylandsink enable-last-sample=false fullscreen=true waylandsink 用于将解码后的视频输出到 Wayland 显示服务器上,enable-last-sample=false 禁用“最后样本”功能,这通常是用于优化性能或避免某些问题;fullscreen=true 将视频以全屏模式显示。

视频回放效果如下图: