首页 > 解决方案 > Roku 广告框架:无法创建 mediaPlayer

问题描述

RAF 无法在缓冲屏幕上为广告和空闲渲染 mediaPlayer。我仍然可以毫无问题地退出视频播放。这是我调用 showAds() 的时候。

if adPod <> invalid AND adPod.count() > 0
    ? "Playing pre-roll ad"
    keepPlaying = m.RAF.showAds(adPod, invalid, m.video.anchor)
end if

调试控制台给了我这个:

RAF.showAds(); rendering preroll pod of 1 ads
rafrndr-renderTypeChanged() - client-inserted
added child: Rectangle id: 1 subtype: Rectangle
added child: Rectangle id: 2 subtype: Rectangle
check layer: 1 visible: true
check layer: 2 visible: true
Roku_Ads_showVideoAd: isRequestFailed(): index = 0; message = failed to create media player
RAF handleAdError(); render failure: failed to create media player

我不确定是什么导致了这个错误。我之前已经成功实现过这个框架几次。有任何想法吗?

标签: rokubrightscriptscenegraph

解决方案


我在视频节点的内容字段上设置了一个观察者。无论何时设置内容,Video 节点的控制字段都会设置为预缓冲。这就是导致问题的原因。通过在初始化 RAF 之前将 Video 节点的控制设置为“停止”,这样就解决了这个问题。


推荐阅读