2015-06-23 64 views
0

我想在特定时间启动AMP(Azure Media Player)HTML5视频以显示视频的特定内容。设置Azure Media Player的开始时间

什么是不工作是时候开始。视频始终从零点开始,然后很好地播放到最后。在js控制台中没有有用的通知。

我通过一些实例和文档阅读,这是什么我都试过了,(注意线myPlayer.currentTime(30)):

脚本:

var myPlayer = amp('vid1', { /* Options */ 
     "nativeControlsForTouch": false, 
     autoplay: false, 
     controls: true, 
     width: "640", 
     height: "400", 
     poster: "" 
    }, 
    function() { 
     myPlayer.src([{ 
      src: "http://amssamples.streaming.mediaservices.windows.net/91492735-c523-432b-ba01-faba6c2206a2/AzureMediaServicesPromo.ism/manifest", 
      type: "application/vnd.ms-sstr+xml" 
     }]); 
     myPlayer.currentTime(30); 
     console.log('Good to go!'); 
     this.play(); // if you don't trust autoplay for some reason 

     // add an event listener 
     this.addEventListener('ended', function() { 
      console.log('Finished!'); 
     }); 
    }); 

HTML

<video id="vid1" class="azuremediaplayer amp-default-skin"> 
     <source src="" type="application/vnd.ms-sstr+xml" /> 
     <p class="amp-no-js"> 
      To view this video please enable JavaScript, and consider upgrading to a web browser that supports HTML5 video 
     </p> 
    </video> 

我已经使用下面的源来设置它。 Link to documentation I have used

回答

2

用以下代码替换HTML视频标签,它将在设定的时间开始。它设置了currentTime(30)的来源;不运行。

<video id="vid1" class="azuremediaplayer amp-default-skin amp-big-play-centered" tabindex="0"> </video> 
2

根据您的情况,有两种方法可以实现此目的。

如果你的场景是你想要在30秒开始,但给予用户观看时间0:00-0:30的能力,那么在播放事件之后(源被设置之后)设置currentTime将会工作。

如果您的场景是您希望流在30秒内启动,但您不希望观看者看到前30秒(更像是修剪或剪辑版本,因为可能前30秒是空白内容或者只是一个静态缓冲器),你最好创建一个动态清单。使用动态清单,您可以调整内容的开始时间(并根据需要添加其他过滤器),以便创建更精确的开始时间,而无需创建其他资产(因为它使用现有资产)。查看the blog了解更多关于动态清单的细节。

+0

我给你+1了,因为我认为它增加了答案的价值,但我自己回答了这个问题,一直在等待“2天设置自我答案”的限制。干杯! –