YouTube的前贴片广告



我想在同一个播放器中播放两个不同的YouTube视频,第一个视频在第二个视频之前播放(作为前贴片广告)。仅由两个视频组成的自定义播放列表。

我真正需要的是,当播放器处于空闲状态时,它必须显示主视频(第二个)的图像,而不是前贴片广告。

所以,我认为我必须使用 youtube api 加载主视频,然后停止它,然后加载前贴片,播放前贴片后播放主视频然后停止。

我试图复制/粘贴相同的代码来完成这些任务,但我被困在其中。谁能给我一个工作的例子?或者,至少一些建议?非常感谢。

这有点粗糙,但通过侦听状态更改事件来完成您的任务; 您可以通过集成一些智能前瞻监控来使其响应更快,该监控基于在预卷即将完成时提示主视频。但无论如何,这至少应该让你开始:

    <div id="player"></div>
      <script>
      var seenPreroll=false;
      var preroll='rl1qKqlYy8M';
      var mainfeature='u1zgFlCw8Aw';
      var playingId='';
      var tag = document.createElement('script');
      tag.src = "//www.youtube.com/iframe_api";
      var firstScriptTag = document.getElementsByTagName('script')[0];
      firstScriptTag.parentNode.insertBefore(tag, firstScriptTag);
      var player;
      function onYouTubeIframeAPIReady() {
        player = new YT.Player('player', {
          height: '390',
          width: '640',
          videoId: mainfeature,
          events: {
            'onStateChange': function(event) {
                        if (event.data==1&&seenPreroll==false) {
                                player.pauseVideo();
                                player.loadVideoById(preroll);
                                playingId=preroll;
                                seenPreroll=true;
                                player.playVideo();
                        }
                        else if (event.data==0&&playingId==preroll) {
                                player.loadVideoById(mainfeature);
                                playingId=mainfeature;
                                player.playVideo();
                        }
                }
          }
        });
}
</script>

相关内容

  • 没有找到相关文章

最新更新