概要
バージョン 6.2.0 以降では、Android 版 Brightcove ネイティブ SDK では、JSON オブジェクトから動画および再生リストオブジェクトを作成するメソッドがサポートされています。
これは、サーバー側のプロキシを使用して、Brightcove アカウントから動画と再生リストのデータを取得する場合に便利です。この方法では、アプリのクライアント側にポリシーキーを公開しません。
再生可能なビデオおよび再生リストオブジェクトを作成するには、次の操作を行います。
- オプション:サーバー側で Playback API を呼び出して、動画またはプレイリストのデータを返します。
- 以下の必須フィールドに基づいて、JSON 形式のオブジェクトを作成します。
- JSON 形式のオブジェクトを渡し、適切なメソッドを呼び出して、次のものを作成します。
- 返された動画またはプレイリストをプレーヤーにロードします。
ビデオオブジェクト
ビデオオブジェクトを作成するには、buildVideoFromJSON()
次の情報をメソッドに渡します。
フィールド | 説明 |
---|---|
account_id |
動画に関連付けられたアカウント ID |
id |
動画ID |
sources |
ビデオソースの JSON 配列。配列内の各ソースには、次のものが必要です。
|
duration |
ビデオの再生時間 (ミリ秒) |
サーバー側プロキシがビデオデータを返す場合は、上記の表で指定された値を使用して JSON オブジェクト文字列を作成します。
{
"account_id": "3636334163001",
"sources": [
{
"src": "http://f1.media.brightcove.com/4/36356334163001/3636334163001_3637454559001_Cascada-Teaser.mp4",
"container": "MP4"
}, {
"type": "application/x-mpegURL",
"src": "http://c.brightcove.com/services/mobile/streaming/index/master.m3u8"
}],
"id": "3637780364001",
"duration": 74700
}
JSON 文字列を JSON オブジェクトに変換し、buildVideoFromJSON()
メソッドに渡します。
try {
JSONObject jsonObject = new JSONObject(response);
Video video = VideoParser.buildVideoFromJSON(jsonObject, eventEmitter);
} catch (JSONException e) {
e.printStackTrace();
} catch (VideoParseException e) {
e.printStackTrace();
}
プレイリストオブジェクト
プレイリストオブジェクトを作成するには、buildPlaylistFromJSON()
次の情報をメソッドに渡します。
フィールド | 説明 |
---|---|
account_id |
動画に関連付けられたアカウント ID |
id |
動画ID |
videos |
ビデオオブジェクトの JSON 配列。これには、「 Video objects 」セクションで説明されている必須フィールドが含まれます。 |
duration |
ビデオの再生時間 (ミリ秒) |
サーバー側プロキシがプレイリストデータを返したら、上記の表で指定された値を使用して JSON オブジェクト文字列を作成します。
{
"id": "4970066630001",
"account_id": "3636335163001",
"name": "token auth playlist",
"videos": [{
"account_id": "3636335763001",
"id": "4973773347001",
"sources": [{
"type": "application/dash+xml",
"src": "https://brightcove.hs.llnwd.net/v2/unsecured/media/3636334163001/201606/1923/3636334163001_4973820156001_4973773237001.mpd"
}],
"duration": 29000
},
{
"account_id": "3636334463001",
"id": "4973766826001",
"sources": [{
"type": "application/dash+xml",
"src": "http://brightcove.vo.llnwd.net/v1/unsecured/media/3636334163001/201606/2933/3636334163001_4973816542001_4973737826001.mpd"
}],
"duration": 29000
}
]
}
JSON 文字列を JSON オブジェクトに変換し、buildPlaylistFromJSON()
メソッドに渡します。
try {
JSONObject jsonObject = new JSONObject(response);
Playlist playlist = VideoParser.buildPlaylistFromJSON(jsonObject, eventEmitter);
} catch (JSONException e) {
e.printStackTrace();
} catch (VideoParseException e) {
e.printStackTrace();
}
注
コンテンツが TTL(Time to Live)によって管理されており、長期間有効な動画オブジェクトを作成する場合は、そのオブジェクトが引き続き再生可能であることを確認する必要があります。これは、使用している CDN 上で設定されます。