我们编写了一个简单的Qt(5.6.1)QML Quick Controls应用程序,它包含一个用于播放视频的Video
元素。减少到最低限度,QML段看起来像这样:
Video {
id: stream1
width: 400
height: 300
source: "file:///tmp/bunny.avi"
autoLoad: true
autoPlay: true
}
从文件中读取视频时,此功能正常,但我们希望将其与实时视频流一起使用。
鉴于此应用程序针对Linux嵌入式系统,因此使用GStreamer作为其后端,如何(假设它甚至可能)指定GStreamer 管道用作源控制?
换句话说,让我说我有一个管道,如:
rtspsrc uri=rtsp://somewhere.com/camera_feed ! autovideosink
并希望使用 将实时视频传送到Qt控件。
在GTK下,我们只需向GStreamer提供X-Windows控件ID(在我们的案例中为DrawableArea
)以响应特定消息,并且它会自动将内容传递给控件
如何在Qt中完成,特别是在声明性QML领域?