在这里我读到:
Embedded window video
--drawable-hwnd=<integer [-2147483648 .. 2147483647]>
Window handle (HWND)
Video will be embedded in this pre-existing window. If zero, a new window will be created.
我以这种方式获取我的Qt5 QML应用程序的窗口句柄:
QObject* m_rootObject = engine.rootObjects().first();
if(m_rootObject) {
QWindow *window = qobject_cast<QWindow *>(m_rootObject);
if(window) {
WId wid = window->winId();
qDebug() << wid;
}
}
然后我启动 vlc:
vlc --drawable-hwnd=395302 udp://@:1235
但它仍然会创建一个新窗口。我正在开发Windows 7。也许我不明白文档说了什么?
我在RTSP流上遇到了同样的问题。
设置
--drawable-hwnd=windowhandle
似乎还不够。
它仅在我也设置后才有效
--no-embedded-video
我的完整命令行看起来像
--no-embedded-video --qt-notification=0 --qt-auto-raise=0 --qt-start-minimized --no-qt-name-in-title --no-video-title-show rtsp://127.0.0.1:8554/