在qt中覆盖gstreamer视频上的小部件

时间:2011-06-13 12:06:54

标签: c++ qt gstreamer

我已经使用gst_x_overlay_set_xwindow_id()将gstreamer连接到QWidget,并在QWidget上获取视频。如何在视频上覆盖另一个小部件(例如按钮,组合框),这是一个透明的按钮。将位于QWidget中的视频顶部

1 个答案:

答案 0 :(得分:0)

这取决于平台以及哪个接收器用于视频。主要是接收器完全使用提供的小部件来呈现视频。因此,您应该创建另一个窗口小部件并在呈现视频的窗口小部件的show()之后显示它。视频将被顶部小部件覆盖。

对于第二个小部件,您需要添加以下标志:

setAttribute(Qt::WA_TranslucentBackground);
setStyleSheet("background:transparent;");

如果你想使用一个QWidget,你也可以尝试使用接收器的colorkey进行欺骗。但这取决于你正在使用的接收器。