0
我有一個gstreamer管道,以xvimagesink元素結束。要在一個特定的窗口顯示的視頻,我可以使用x_oerlay_interface:針對與gstreamer Qt子部件
gst_x_overlay_set_xwindow_id(GST_X_OVERLAY(xvsink), winid);
到目前爲止,一切都很好。然而,它只適用於winid是頂層窗口的想法,而不是子窗口小部件的情況。比方說,我有:
- 一個對話框控件DialogWidget
- 視頻窗件VideoWidget,這是DialogWidget的孩子。
如果我使用DialogWidget->winId()
,則視頻顯示正確。
如果我使用「VideoWidget-> winId()」,然後我收到消息,從十五擴展告訴我的東西像
X Error: BadWindow (invalid Window parameter) 3
Major opcode: 3 (X_GetWindowAttributes)
Resource id: 0x40000d5
X Error: BadWindow (invalid Window parameter) 3
Major opcode: 2 (X_ChangeWindowAttributes)
Resource id: 0x40000d5
X Error: BadDrawable (invalid Pixmap or Window parameter) 9
Major opcode: 55 (X_CreateGC)
Resource id: 0x40000d5
X Error: BadGC (invalid GC parameter) 13
Extension: 132 (Uknown extension)
Minor opcode: 19 (Unknown request)
Resource id: 0x40000d5
X Error: BadGC (invalid GC parameter) 13
Extension: 132 (Uknown extension)
Minor opcode: 19 (Unknown request)
Resource id: 0x40000d5
我想有控制按鈕等一個可調整大小的窗口..,並在這個窗口,視頻顯示窗口或小工具或不管它是
gst_x_overlay_set_xwindow_id
一個合適的目標我怎麼能這樣做?