我试图在RGBA中用QML获得alpha混合效果。QML视频alpha混合/渲染视频到Qt快速场景图
现在的问题是,QtMultimedia提供的视频项目在QtQuick场景中打开了一个覆盖窗口,所以我不认为有可能将其他QML元素与视频元素进行α混合(我当然希望我'米错了,但我找不到解决方案)。
因此,另一种方法是在updatePaintNode方法中将自己渲染为继承自QQuickItem的类中的视频。
有没有人以前见过类似的东西?如果QtMultimedia背后的人无法实现它,甚至有可能吗?
我可以改变MediaPlayer元素的背景,也许是透明的或只是QML中的一种颜色?
到目前为止,我在想QAbstractVideoSurface和QVideoFrame,但我不知道如何将它渲染到QSG,甚至应该如何GeometryNode看的视频。
最好的解决办法是与其他QML元素得到阿尔法混合例如:提前
Rectangle {
width: 1024
height: 768
color: "yellow"
focus: true
Video {
id: video
anchors.fill: parent
source: "alpha-video.mov"
autoPlay: true
}
}
谢谢!