我尝试将透明PNG叠加到视频节点上时遇到了很大的问题。看起来透明度未正确应用,白色透明图像使视频更暗。
屏幕抓取 - 视频是一个白色的30秒剪辑。顶部矩形是黑色的,具有不同的透明度级别,底部的矩形是白色的,并且由于某种原因可见为灰色。 https://drive.google.com/open?id=0B7BZMWDc5aPQSjB2OGFGb0s2QjQ
项目zip:https://drive.google.com/open?id=0B7BZMWDc5aPQcGxlQVhfbE1sWDg
任何人都可以提出建议,这里发生了什么?是"海报"对象可以用作叠加?
<component name = "VideoExample" extends = "Scene">
<script type = "text/brightscript" >
<![CDATA[
sub init()
videocontent = createObject("RoSGNode", "ContentNode")
videocontent.title = "Example Video"
videocontent.streamformat = "mp4"
videocontent.url = "pkg:/images/white.mp4"
video = m.top.findNode("videoNode")
video.content = videocontent
video.setFocus(true)
video.control = "play"
end sub
]]>
</script>
<children >
<Video id="videoNode" width="1280" height="720" loop="true">
<Poster id="overlayNode" uri="pkg:/images/gradient.png"/>
</Video>
</children>
</component>
在之前版本的Brightscript中,我们使用了:&#34; roImageCanvas&#34;这是被弃用的,看起来像&#34;海报&#34;是唯一的替代品。不是吗? BTW透明度仅在视频节点上叠加时不正确 - 相同的PNG覆盖在白色&#34;海报&#34;背景表现如预期,并且底部的矩形行不可见。
提前感谢您的任何建议。
答案 0 :(得分:0)
使用矩形进行不透明度叠加
<Rectangle id="itemRectangle" color="0x0a0a0a" opacity = "0.75" />
别忘了提及宽度和高度