1

再生リストで動画のタイトルをクリックすると、作成したメタデータフィールドボックスに表示される特定の動画のURLがコールバックされるように、電話をかけようとしています。

これまでのところ私は結果を得ていますが、私が使用している以下の関数は私に次のようなrmtpurlを与えています:

(rtmp://brightcove.fcod.llnwd.net/a500/d16/&mp4:media/1978114949001/1978114949001_2073371902001_How-to-Fish-the-Ice-Worm.mp4&1358870400000&7b1c5b2e65a7c051419c7f50bd712b1b )

ブライトコーブは(FLVURL&media_delivery=http)を使用すると言っています。

私は自分の機能にメディア配信を入れるために知っているあらゆる方法を試しましたが、常にrmtpまたは空白しか思いつきません。

私が示した少量のコードを手伝ってくれませんか。もっと表示する必要がある場合、それは問題ではありません。ありがとう

function showMetaData(idx) {
    $("tr.select").removeClass("select");
    $("#tbData>tr:eq("+idx+")").addClass("select");

    var v = oCurrentVideoList[idx];

    //URL Metadata
    document.getElementById('divMeta.FLVURL').innerHTML = v.FLVURL;

これが私のリストに対する私の人口の呼びかけです。

//For PlayList by ID

function buildMAinVideoList() {

//Wipe out the old results
$("#tbData").empty();

console.log(oCurrentMainVideoList);
oCurrentVideoList = oCurrentMainVideoList;
// Display video count
document.getElementById('divVideoCount').innerHTML = oCurrentMainVideoList.length + " videos";
document.getElementById('nameCol').innerHTML = "Video Name";
//document.getElementById('headTitle').innerHTML = title;
document.getElementById('search').value = "Search Videos";
document.getElementById('tdMeta').style.display  = "block";
document.getElementById('searchDiv').style.display  = "inline";
document.getElementById('checkToggle').style.display  = "inline";
$("span[name=buttonRow]").show();
$(":button[name=delFromPlstButton]").hide();


//For each retrieved video, add a row to the table
var modDate = new Date();
$.each(oCurrentMainVideoList, function(i,n){
    modDate.setTime(n.lastModifiedDate);
    $("#tbData").append(
        "<tr style=\"cursor:pointer;\" id=\""+(i)+"\"> \
        <td>\
            <input type=\"checkbox\" value=\""+(i)+"\" id=\""+(i)+"\" onclick=\"checkCheck()\">\
        </td><td>"
            +n.name +
        "</td><td>"
            +(modDate.getMonth()+1)+"/"+modDate.getDate()+"/"+modDate.getFullYear()+"\
        </td><td>"
            +n.id+
        "</td><td>"
            +((n.referenceId)?n.referenceId:'')+
        "</td></tr>"
    ).children("tr").bind('click', function(){
        showMetaData(this.id);
    })
});

//Zebra stripe the table
$("#tbData>tr:even").addClass("oddLine");

//And add a hover effect
$("#tbData>tr").hover(function(){
    $(this).addClass("hover");
}, function(){
    $(this).removeClass("hover");
});

//if there are videos, show the metadata window, else hide it
if(oCurrentMainVideoList.length > 1){showMetaData(0);}
else{closeBox("tdMeta");}
}
4

1 に答える 1

2

HTTPパスを探している場合、BrightcoveへのAPI呼び出しが正しいと、rtmp://urlsは表示されません。

rtmp URLを取得しているので、これはURLアクセスでAPIトークンを使用していることを確認します。これは良いことです。このようなリクエストでは、プレイリストとhttp URL(トークンとプレイリストIDを挿入)が返されます。

http://api.brightcove.com/services/library?command=find_playlist_by_id&token= {yourToken}&playlist_id = {yourPlaylist}&video_fields = FLVURL&media_delivery = http

このAPIテストツールは、クエリを作成し、期待される結果を表示するのに役立ちます:http: //opensource.brightcove.com/tool/api-test-tool

コードのどこが悪いのかわかりませんが、まだ試したことがない場合は、ブラウザでデバッグすることで、コードを介してアクセスしなくても、返されるAPIの結果を確認できます。これは、値へのアクセスに使用しているコードの問題と、値自体の問題を根絶するのに役立ちます。これは、これまでにこれを使用したことがない場合のChromeでのステップデバッグの概要です: https ://developers.google.com/chrome-developer-tools/docs/scripts-breakpoints

于 2013-02-01T15:18:43.510 に答える