Я пытаюсь создать яркий видеоплеер для воспроизведения около 5 видео. Я создал плеер как таковой:
<script language="JavaScript" type="text/javascript" src="http://admin.brightcove.com/js/BrightcoveExperiences.js"></script>
<object id="myExperience3775330164001" class="BrightcoveExperience">
<param name="bgcolor" value="#FFFFFF" />
<param name="playerID" value="2805093005001" />
<param name="playerKey" value="AQ~~,AAABnWrZY8k~,bg2iiZ4K32IcUpn85Gn5TF9lWzVxKnlO" />
<param name="isVid" value="true" />
<param name="isUI" value="true" />
<param name="dynamicStreaming" value="true" />
<param name="@videoPlayer" value="3775330164001" />
<param name="wmode" value="transparent" />
<!-- smart player api params -->
<param name="includeAPI" value="true" />
<param name="templateLoadHandler" value="onTemplateLoad" />
<param name="templateReadyHandler" value="onTemplateReady" />
<param name="templateErrorHandler" value="onTemplateError" />
</object>
<script type="text/javascript">brightcove.createExperiences();</script>
Затем я пытаюсь заменить видео, вызвав loadVideoByID(12345)... это отдельный файл js.
var player,
APIModules,
videoPlayer;
function onTemplateLoad(experienceID){
player = brightcove.api.getExperience(experienceID);
APIModules = brightcove.api.modules.APIModules;
console.log("template loaded...");
}
function onTemplateReady(evt){
videoPlayer = player.getModule(APIModules.VIDEO_PLAYER);
console.log("template ready...");
}
$( document ).ready(function(){
// this script switches videos when
$( '.mlink').on("click", ".choose-video", function(event){
event.preventDefault();
$id = $(this).data("id");
//console.log($id);
switchvids($id, videoPlayer);
});
});
var switchvids = function(id, vidplayer){
console.log(id);
console.log(vidplayer);
try{
vidplayer.loadVideoByID(id);
}
catch(error){
console.log(error);
}
};
Когда вызывается моя функция switchvids, ничего не происходит. Видео не запускается, ошибок js нет. Консоль показывает правильный идентификатор и показывает, что vidplayer является Brightcove.api.modules.VideoPlayerModule. В сетевой панели я вижу, что запрос POST отправляется на http://c.brightcove.com/services/messagebroker/amf?playerKey=AQ~~,AAABnWrZY8k~,bg2iiZ4K32IcUpn85Gn5TF9lWzVxKnlO, и возвращается ответ, но Content-Length: 26. Это какой-то сбой рукопожатие? Кто-нибудь видел что-нибудь подобное раньше? Единственное, в чем я не уверен, так это в идентификаторах видео. Я вытащил идентификаторы из документации по Brightcove. Я не знаю, является ли это причиной проблемы. Я думаю, что полезная нагрузка будет содержать сообщение об ошибке, если я пытаюсь использовать видео, которые мне не разрешено использовать. Мой клиент еще не предоставил мне идентификаторы для использования.