Brightcove 视频使用 javascript API 嵌入

Brightcove videos embed using javascript API

我正在尝试使用 javascript API 通过视频 ID 嵌入视频。 经过几次尝试,我找到了这样做的方法,我想确定这是否是正确的使用方法,或者我是否遗漏了什么?

此代码运行良好,但需要知道我是否以错误的方式执行。

 <script language="JavaScript" type="text/javascript" src="http://admin.brightcove.com/js/BrightcoveExperiences.js"></script>

    <object class="BrightcoveExperience">
        <param name="bgcolor" value="#FFFFFF" />
        <param name="width" value="480" />
        <param name="height" value="270" />
        <param name="playerID" value="4942277584001" />
        <param name="playerKey" value="AQ~~,AAAEfriyQEE~,ZL37ulQzt-toqcwK_Cwr35Bl9P3znlYu" />
        <param name="isVid" value="true" />
        <param name="isUI" value="true" />
        <param name="dynamicStreaming" value="true" />
        <param name="@videoPlayer" value="5072209967002" />   
    </object>

<!-- This script tag will cause the Brightcove Players defined above it to be created as soon
as the line is read by the browser. If you wish to have the player instantiated only after
the rest of the HTML is processed and the page load is complete, remove the line.-->
<script type="text/javascript">brightcove.createExperiences();</script>
<script type="text/JavaScript">
    var player,
    APIModules,
    videoPlayer;
    function onTemplateLoad(experienceID){
     player = brightcove.api.getExperience(experienceID);
     APIModules = brightcove.api.modules.APIModules;
    }
    function onTemplateReady(evt){
     videoPlayer = player.getModule(APIModules.VIDEO_PLAYER);
     videoPlayer.play();
    }
</script>
<!-- End of Brightcove Player -->

Brightcove播放器用于播放brightcove视频。您编写的代码是正确的,但在 brightcove 文档中显示它使用旧版播放器。按照 http://docs.brightcove.com/en/video-cloud/brightcove-player/guides/embed-in-page.html 中指定的嵌入代码使用 brightcove 的 recommended/current 方式是:

<video data-video-id="4784463159001"
        data-account="1507807800001"
        data-player="SkSyF9Cl"
        data-embed="default"
        class="video-js"
        controls></video>
<script src="//players.brightcove.net/1507807800001/SkSyF9Cl_default/index.min.js"></script>

其中视频 ID 在数据视频 ID 属性中指定,帐户 ID 在数据帐户中指定,播放器详细信息在数据播放器属性中指定。

有关如何将嵌入代码与 javascript 一起使用的更多信息,您可以查看上面指定的 link。

注意:同时将脚本 src link 替换为您的帐户 ID 和播放器密钥详细信息。

希望对您有所帮助。

原版的最新更新Javascript

<!doctype html>
<html>

<head>
    <meta charset="UTF-8">
    <title>Load Player Dynamically</title>
    <style>
        .video-js {
            width: 640px;
            height: 360px;
        }
    </style>
</head>
<body>
<div id="property-video-brightcove"></div>

<button onclick="init()">Init</button>
<button onclick="play()">Play</button>
<button onclick="pause()">Pause</button>
<button onclick="terminate()">Terminate</button>

<script type="text/JavaScript">
    var playerInstance;

    function init() {
        var container = document.getElementById('property-video-brightcove');
        var playerHTML;
        var data = {
            'accountId': '5699924528001',
            'playerId': 'default',
            'videoId': '5833639391001'
        };
        var script = document.createElement('script');
        script.src = "https://players.brightcove.net/" + data.accountId + "/" + data.playerId + "_default/index.min.js";
        script.id = "brightcoveJs";

        playerHTML = '<video-js id=\"brightcovePlayer\" ' +
            ' data-video-id=\"' + data.videoId + '\" ' +
            ' data-account=\"' + data.accountId + '\" ' +
            ' data-player=\"' + data.playerId + '\" ' +
            ' data-embed=\"default\" class=\"video-js\" ' +
            ' controls></video-js>';

        container.innerHTML = playerHTML;
        container.appendChild(script);

        script.onload = callback;
    }

    function callback() {
        playerInstance = bc('brightcovePlayer');
        playerInstance.on('loadedmetadata', function () {
            playerInstance.play();
        })
    }

    function play() {
        playerInstance.play();
    }

    function pause() {
        playerInstance.pause();
    }

    function terminate() {
        document.getElementById('brightcovePlayer').remove();
        document.getElementById('brightcoveJs').remove();

        delete playerInstance;
    }

    setTimeout(function () {
        init();
    }, 1000);

</script>
</body>
</html>