ユーザ関数
以下に、CMS のユーザーに提供する Video Cloud に関連する機能を示します。
- Video Cloud に新しい動画を追加する
- Video Cloud ビデオを新しいバージョンに置き換える
- タイトル、説明、タグなどの動画のメタデータを更新する
- 動画を削除する
- プレイリストを作成する
- プレイリストの動画を変更する
- プレイリストの削除
- ビデオプレーヤーを作成する
- 寸法やスタイリングなど、ビデオプレーヤーのプロパティを変更する
- プラグインを通じてビデオプレーヤーに特別な機能を追加する
- 単一の動画または再生リストを公開
- 動画のロード、視聴回数、再生率、エンゲージメントなどの分析データを提供します。
エンドユーザーにこの機能をすべて公開したくない場合があります。たとえば、エンドユーザーに動画を削除させたくない場合があります。ユーザーが Video Cloud Studio に直接アクセスできるようにするのではなく、Video Cloud と CMS を統合する利点の 1 つは、ブライトコーブ API を通じてユーザーに公開する機能を正確に選択できることです。
[認証]
すべてのブライトコーブ API リクエストについて、認証は OAuth2 アクセストークンに基づいて行われます。アクセストークンの取得には、次の 2 段階のプロセスがあります。
- 必要な API オペレーションのアクセス許可を持つクライアント認証情報を作成する
- クライアントの認証情報を使用して一時的なアクセストークンを作成し、API リクエストを認証する
クライアント認証情報の作成
クライアント資格情報の作成は、 Video Cloud Studioまたは OAuth API を介して実行できる 1回限りの操作です。ただし、これを行うと、client_id
client_secret
およびが返され、アクセストークンをリクエストするには保存する必要があります。
アクセストークンの作成
一時アクセストークンは OAuth API を使用して作成されます。client_id
client_secret
およびは Base64 でエンコードされ、Basic
認可文字列。
access_token
返されたは、API 呼び出しで Authorization ヘッダーに渡されます。
>Authorization: Bearer your_access_token
アクセストークンは5分間有効です。何百もの連続するAPI呼び出しを行うバッチ操作を実行していない限り、タイムアウトを追跡するのではなく、API呼び出しごとに新しいものをリクエストするだけで理にかなっています。
ビデオを追加する
ユーザーが CMS から Video Cloud にビデオを追加できるようにする場合は、動的取り込み API を使用してそれを行うことができます。ユーザーは、S3 バケットまたはパブリック向けサーバーのみであるリポジトリに動画をアップロードすることをお勧めします。Dynamic Ingest システムは、以下に概説する 2 段階のプロセスを通じてビデオを取り込み、Video Cloud システムに追加できます。
Video クラウドへのビデオオブジェクトの追加
最初のステップは、CMS API POST
にリクエストを作成して Video Cloud システムにビデオオブジェクトを作成することです。
https://cms.api.brightcove.com/v1/accounts/:account_id/videos
リクエスト本文には、JSON オブジェクトに基本的なビデオプロパティが含まれますがname
、最小限にビデオが含まれますが、description
とtags
:
{
"name": "Woodpecker",
"description": "A bird that hunts insects inside wood",
"reference_id": "Bird_Woodpecker.mp4",
"tags": ["bird", "air", "nature"]
}
ビデオの取り込み
ビデオオブジェクトを作成すると、 CMS APIはビデオプロパティを含む JSON オブジェクトを返します。JSON id
からビデオを抽出し、それを使用して Dynamic Ingest APIを呼び出して、ビデオの取り込みとトランスコーディングをリクエストします。
https://ingest.api.brightcove.com/v1/accounts/ACCOUNT_ID/videos/VIDEO_ID/ingest-requests
この場合も、リクエスト本文に JSON を送信し、ビデオファイルの場所を指定します。
{
"master":{
"url":"http://learning-services-media.brightcove.com/videos/mp4/Bird_Woodpecker.mp4"
},
"profile":"multi-platform-extended-static",
"capture-images": true
}
profile
トランスコーディングプロセスで作成するレンディションを指定するインジェストプロファイルは次のとおりです。ほとんどの場合、次の標準プロファイルのいずれかで十分です。
動的配信プロファイル
multi-platform-extended-static
multi-platform-standard-static
従来の取り込みプロファイル
videocloud-default-v1 (the default)
screencast-1280
smart-player-transition
single-bitrate-high
audio-only
single-bitrate-standard
high-resolution
ただし、必要に応じて、を使用して追加のカスタム取り込みプロファイルを作成できます。プロファイルAPIの取り込みまたは使用Video Cloud Studio。
ポスターとサムネイル画像を追加する
capture-images
上記のコードのオプションは、Video Cloud がトランスコーディング処理中の中間点でビデオのポスターとサムネイル画像をキャプチャするように指示します。または、ビデオの取り込みと同時に、capture-images
false
または後でイメージをセットして取り込むことも、代わりにイメージをインジェストすることもできます。
{
"master":{
"url":"http://learning-services-media.brightcove.com/videos/mp4/Bird_Woodpecker.mp4"
},
"profile":"multi-platform-extended-static",
"capture-images": false,
"poster": {
"url": "http://learning-services-media.brightcove.com/images/for_video/titmouse-poster.png",
"width": 640,
"height": 360
},
"thumbnail": {
"url": "http://learning-services-media.brightcove.com/images/for_video/titmouse-thumbnail.png",
"width": 160,
"height": 90
}
}
詳細については、イメージと動的取り込み API を参照してください。
キャプションまたはチャプター用のテキストトラックの追加
Dynamic Ingest APIを使用して、 WebVTTファイル内のテキストトラックを、取り込み時または後でビデオに追加することもできます。テキストトラックは、ビデオにキャプションやチャプターを追加するために使用されます。
{
"master":{
"url":"http://learning-services-media.brightcove.com/videos/mp4/Bird_Woodpecker.mp4"
},
"profile":"multi-platform-extended-static",
"capture-images": false,
"poster": {
"url": "http://learning-services-media.brightcove.com/images/for_video/titmouse-poster.png",
"width": 640,
"height": 360
},
"thumbnail": {
"url": "http://learning-services-media.brightcove.com/images/for_video/titmouse-thumbnail.png",
"width": 160,
"height": 90
},
"text_tracks": [
{
"url": "http://learning-services-media.brightcove.com/captions/for_video/Water-in-Motion.vtt",
"srclang": "en",
"kind": "captions",
"label": "English",
"default": true
}
]
}
ビデオを管理する
CMS APIを使用すると、アカウントのビデオデータを取り戻すことができます。(上記のように、ビデオ取り込みプロセスの一環としてビデオオブジェクトを作成するためにも使用されます)。最も基本的な要求は次のとおりです。
https://cms.api.brightcove.com/v1/accounts/account_id/videos
デフォルトでは、このリクエストは、名前、説明、タグ、カスタムフィールド、作成日と最終更新日、ポスターとサムネイルの URL など、豊富なメタデータを含む 20 のビデオオブジェクトの JSON 配列を返します。
リクエストに次のパラメータを 1 つ以上追加することで、リクエストの結果を絞り込むことができます。
limit
- これは、返すビデオオブジェクトの数を決定し、100以上の任意の数に設定することができます-デフォルトは20です
offset
- これはスキップする項目の数を決定するため、
limit
ビデオカタログをページスルーするために一緒に使用されます。デフォルトは 0 です。 sort
- これにより、結果をソートするビデオメタデータフィールドが決定されます。デフォルトでは、結果は降順でソートされます
updated_at
(最近更新されたビデオを最初に表示するため)。
見るCMS API概要-パラメータこれらのパラメータの詳細については。
動画を検索する
q
パラメーターを使用して、さまざまな条件でビデオを検索することもできます。名前、説明、タグ、日付や動画の状態などの特定のフィールドで検索できます。
https://cms.api.brightcove.com/v1/accounts/account_id/videos?q=tags:sea,mammal
詳細と検索のすべてのオプションについては、「ビデオの検索」を参照してください。
特定の動画の取得と更新
特定の動画を ID または参照 ID で取得するには:
https://cms.api.brightcove.com/v1/accounts/account_id/videos/id
or
https://cms.api.brightcove.com/v1/accounts/account_id/videos/ref:reference_id
GET
リクエストは video オブジェクトを返します。更新するには、JSON
を修正し、同じ URL PATCH
へのリクエストを使用してそれを返します。
プレイリスト
プレイリスト情報は、ビデオ情報とほぼ同じ方法で CMS APIを使用して管理されます。Video Cloud は、次の 2 つのカテゴリで 8 種類のプレイリストをサポートしていることに注意してください。
- 手動 (または
EXPLICIT
) プレイリスト - 指定された動画セットを含む-最大 100 本の動画を含めることができます。
- スマートプレイリスト
- 検索条件に基づいて実行時に動的に構築されます。リスト内の動画の順序に応じて、7つの種類のスマートプレイリストがあります。
ACTIVATEDOLDESTTONEWEST
ACTIVATEDNEWESTTOOLDEST
ALPHABETICAL
PLAYSTOTAL
PLAYSTRAILINGWEEK
STARTDATEOLDESTTONEWEST
STARTDATENEWESTTO_OLDEST
動画数の制限は、100までの任意の数に設定できます。
動画と同様に、アカウントに多数のプレイリストがある場合は、limit
offset
およびを使用してすべてのプレイリストを取得できます。
https://cms.api.brightcove.com/v1/accounts/account_id/playlists
返されたプレイリストオブジェクトの配列には、type
上記で説明したタイプに対応するなど、プレイリストのメタデータが含まれます。タイプがの場合EXPLICIT
、含まれる動画の ID video_ids
を含む配列も表示されます。タイプがスマートプレイリストタイプのいずれかである場合、search
次のようなビデオを取得する検索文字列を含むプロパティがあります。
q=tags:fish,birds
また、次のものを使用して 1 つのプレイリストを取得することもできますid
。
https://cms.api.brightcove.com/v1/accounts/account_id/playlists/playlist_id
プレイリストの完全なビデオオブジェクトを取得する必要がある場合(ページにビデオに関する情報を表示するには)、その URL /videos
に追加するだけです。
https://cms.api.brightcove.com/v1/accounts/account_id/playlists/playlist_id/videos
スマートプレイリストの場合、リクエストは現在、検索条件に一致する動画を返しますが、変更される可能性があります。
プレイヤーの作成
ブライトコーブのプレイヤーは、プレイヤー管理 API を使用して作成できます。API を使用すると、プレイヤーの作成、プロパティの更新、URL、iframe
タグ、または HTML のブロックの形式で埋め込みコードを取得してページに埋め込むことができます。
アカウントごとに最大200人のプレイヤーが可能ですが、通常は必要な数のプレイヤーを持つことがユーザーにとって混乱しにくくなります。単一のビデオやプレイリストを再生するには、別々のプレーヤーを用意する必要がありますが、そうでない場合は、異なるスタイルを設定したり、プラグインを通じて異なる機能を追加したりする場合にのみ、異なるプレーヤーが必要です。
プレイヤーを作成するには、プレイヤー管理 API POST
にリクエストを行うだけです。
https://players.api.brightcove.com/v2/accounts/account_id/players
リクエストの本文に、プレイヤーの設定を含めます。name
必要なのは次のものだけです。
{
"name": "Single video player for blog posts"
}
応答は、プレイヤーIDと複数のフォームの埋め込みコードを提供します:
{
"embed_code": "<iframe src='//players.brightcove.net/57838016001/de055fa4-4f09-45af-8531-419c6794ad04_default/index.html' allowfullscreen webkitallowfullscreen mozallowfullscreen></iframe>",
"embed_in_page": "http://players.brightcove.net/57838016001/de055fa4-4f09-45af-8531-419c6794ad04_default/in_page.embed",
"id": "de055fa4-4f09-45af-8531-419c6794ad04",
"preview_embed_code": "<iframe src='//preview-players.brightcove.net/v1/accounts/57838016001/players/de055fa4-4f09-45af-8531-419c6794ad04/preview/embeds/default/master/index.html' allowfullscreen webkitallowfullscreen mozallowfullscreen></iframe>",
"preview_url": "http://preview-players.brightcove.net/v1/accounts/57838016001/players/de055fa4-4f09-45af-8531-419c6794ad04/preview/embeds/default/master/index.html",
"url": "http://players.brightcove.net/57838016001/de055fa4-4f09-45af-8531-419c6794ad04_default/index.html"
}
完全なプレイヤー設定を取得するには、/players
エンドポイントにリクエストを行い、上記のレスポンスで返されるプレイヤー ID を追加します。
https://players.api.brightcove.com/v2/accounts/account_id/players/de055fa4-4f09-45af-8531-419c6794ad04
PATCH
同じエンドポイントにリクエストして、プレーヤーの設定を更新できます。
上のレスポンス、preview_embed_code
およびで気付くでしょうpreview_url
。新しいプレーヤーやプレーヤーの更新をテストするために、新しく作成または更新されたプレーヤーはプレビューモードに設定され、既存のプレイヤーに変更をプッシュする前に確認することができます。変更をプロダクションにプッシュするには、次のリクエストでプレイヤーを公開する必要があります。
https://players.api.brightcove.com/v2/accounts/account_id/players/de055fa4-4f09-45af-8531-419c6794ad04/publish
プレーヤーのカスタマイズ
ブライトコーブプレーヤーは、標準的なウェブテクノロジーで構築されています。HTML、CSS、JavaScript。これらの同じ技術を使用してプレーヤーをカスタマイズできます。これはプレイヤーが公開されているページで行うことができますが、ベストプラクティスは、プレイヤーの設定を通じてプレイヤー自体にカスタマイズを追加し、PATCH
前のセクションで説明したように、プレイヤー管理 API にリクエストします。
JavaScript プラグインを使用してプレイヤーに機能を追加することもできます。また、コードをプレイヤーと統合するのに役立つ広範な Player API があります。ブライトコーブでは、広告の有効化、エンドスクリーンのカスタマイズ、オーバーレイの追加など、既製のプラグインを多数提供しています。
ビデオの公開
上記の「プレーヤーの作成」セクションでは、Player Management API を使用してプレーヤー設定オブジェクトを取得すると、返されるデータには、プレーヤーを HTML ページに埋め込むための iframe タグと、プレーヤーを埋め込む場合は完全な HTML の URL が含まれていることが確認されましたページに直接挿入します。
どちらの埋め込みを選択した場合でも、プレーヤーにコンテンツを追加するには、埋め込みコードに Video Cloud 動画 ID またはプレイリスト ID を追加する必要があります。iframe 埋め込みコードは次のようになります。
<iframe
src='//players.brightcove.net/57838016001/de055fa4-4f09-45af-8531-419c6794ad04_default/index.html'
allowfullscreen webkitallowfullscreen mozallowfullscreen></iframe>
プレイヤーの URL に、完全な埋め込みコードが次のようになるようにvideoId={}video_id
、パラメーターを追加する必要があります。
<iframe
src='//players.brightcove.net/57838016001/de055fa4-4f09-45af-8531-419c6794ad04_default/index.html?videoId=4483119716001'
allowfullscreen webkitallowfullscreen mozallowfullscreen></iframe>
これがプレイリストプレーヤーの場合は、playlistId={playlist_id}
代わりにパラメータを使用します。ページ内埋め込みコードの変更も同様です。
プレイヤーの設定でプレーヤーの寸法が固定されていない限り、style
属性に幅と高さを追加してプレーヤーのサイズを設定する必要があります。
<iframe
src='//players.brightcove.net/57838016001/de055fa4-4f09-45af-8531-419c6794ad04_default/index.html?videoId=4483119716001'
allowfullscreen webkitallowfullscreen mozallowfullscreen
style=width:640px;height:360px;></iframe>
分析レポートの取得
Analytics API を使用すると、dimensions
さまざまな分析レポートを生成できます。詳細については、「寸法ガイド」を参照してください。
レポートの日付範囲、返す指標を指定でき、データを取得したりJSON
、 < コード ">csv、xlxs
フォーマット
APIのまとめ
ここでは、Video Cloud との統合に有用な API の概要を示します。
- OAuth API
- 他の API にアクセスするためのクライアント資格情報およびアクセストークンを作成するために使用されます。
- メディア管理
-
- プロファイルの取り込み API
- Video Cloud に追加されたビデオ用に作成するレンディションを指定するカスタム取り込みプロファイルの作成に使用します。
- 動的取り込み API
- ビデオおよび関連メディアアセットを Video Cloud に追加するために使用します
- CMS API
- 取り込み用のビデオオブジェクトを作成したり、動画や再生リストを管理したりするために使用します。
- ブライトコーブプレイヤー
-
- ブライトコーブ・プレイヤー
- プレーヤーには、実行時にプレーヤーと対話するための JavaScript API が含まれています
- プレイヤー管理 API
- プレーヤーを作成および設定し、プレーヤーの埋め込みコードを取得するために使用されます
- アナリティクス API
- 動画のパフォーマンスに関する分析レポートを取得するために使用します