入門
メディア共有はVideo Cloudの機能の1つであり、パブリッシャーが他のパブリッシャーと動画を共有することができ、複数のアカウントに存在する動画の管理が容易になります。たとえば、パブリッシャーはビデオコンテンツのマスターアカウントを保持してから、組織の他の部門または子会社にビデオを共有できます。
すべてのメディア共有操作はStudioでも実行できることに注意してください。見るメディア共有設定の管理。
共有メディアと請求
共有メディアの課金の仕組みについては、を参照してください。メディアモジュールを使用したメディア共有。
用語集
メディア共有では、マスターアカウント(ビデオを共有する)と1つ以上のアフィリエイトアカウント(共有ビデオを受信する)の間に関係があります。
アカウント | 説明 |
---|---|
習得する | 元の動画を作成したアカウント。
マスターはコンテンツを所有し、アフィリエイトにコンテンツを設定、管理、提供する責任があります。 |
アフィリエイト | ビデオを受信しているアカウント。
アフィリエイトは、マスターから共有されたコンテンツを受け入れることができます。 |
チャンネル | マスターから任意の数のアフィリエイトにコンテンツを共有するパイプライン。メディア共有が有効になっている場合default チャンネルはあなたのアカウントに作成されます。 |
関係 | マスターとアフィリエイト間の相互作用について説明します。
関係は、コンテンツを共有するためのマスター、コンテンツを共有するためのチャネル、コンテンツを受け入れるための契約、およびコンテンツを受け取るためのアフィリエイトで構成されます。 |
契約 | マスターとアフィリエイト間の共有関係について説明します。
契約はマスターによって作成され、共有を有効にするには承認する必要があります。アフィリエイトは、共有ビデオを自動的に受け入れるか、1つずつ承認する必要があるかを指定することもできます。 |
ベース URL
すべてはCMS APIリクエストの場合、以下で説明する操作のベースURLは次のとおりです。
https://cms.api.brightcove.com/v1
以下で説明するすべてのエンドポイントは、リクエストを行うときにベースURLに追加されます。
認証
要求の認証には、Authorization ヘッダーが必要です。
Authorization: Bearer {access_token}
access_token
は一時的な OAuth2 アクセストークンで、Brightcove OAuth サービスから取得する必要があります。クライアントクレデンシャルを取得してアクセストークンを取得する方法の詳細については、「 Brightcove OAuth の概要」を参照してください。
周りのすべての操作に注意してください関係必要な新しい権限:
video-cloud/video/all
video-cloud/sharing-relationships/read
video-cloud/sharing-relationships/create
video-cloud/sharing-relationships/update
video-cloud/sharing-relationships/delete
または、次を使用することもできます。
video-cloud/sharing-relationships/all
Studio API認証管理ページには、次の2つの権限が表示されます。
- 読み取りの共有(に相当
video-cloud/sharing-relationships/read
) - 読み取り/書き込みの共有(に相当
video-cloud/sharing-relationships/all
)
共有の制限
デフォルトでは、すべてのビデオを共有できます。ただし、次の場合は共有を防ぐことができます。
- アフィリエイトアカウントには、マスターアカウントのビデオに値が設定されるカスタムフィールドがありません
- マスターアカウントで地域フィルタリングが有効になっていますが、アフィリエイトアカウントでは有効になっていません
カスタムフィールドの照合
チャンネルにカスタムフィールドマッチングを適用できます。これは、動画共有が失敗することを意味しますビデオにアフィリエイトアカウントに存在しないカスタムフィールドの値がある場合。動画に一致しないカスタムフィールドの値がない場合でも、動画は正常に共有されます
デフォルトでは、カスタムフィールドマッチングはない施行。
カスタムフィールドが一致しないためにビデオ共有が失敗した場合、応答に次のようなエラーが表示されます。
{
"video_id": "5691312273001",
"affiliate_id": "47509719001",
"affiliate_video_id": null,
"status": "PROCESSING",
"error_message": [{"error_code":"MISSING_CUSTOM_FIELDS","error_message":"Affiliate account is missing custom fields: [subject]"}],
"shared_at": "2018-01-03T16:29:19.080Z",
"updated_at": "2018-01-03T16:29:19.080Z"
}
ジオフィルタリングマッチング
チャネルに対してジオフィルタリングマッチングが有効になっている場合、マスターアカウントでジオフィルタリングが有効になっていて、アフィリエイトアカウントで有効になっていないと、動画を共有できません。
デフォルトでは、ジオフィルタリングマッチングです施行。
エラーは次のようになります。
{
"video_id": "5691312273001",
"affiliate_id": "47509719001",
"affiliate_video_id": null,
"status": "PROCESSING",
"error_message": [{"error_code":"CONFLICT","error_message":"Affiliate account is not configured for geo restriction."}],
"shared_at": "2018-01-03T16:29:19.080Z",
"updated_at": "2018-01-03T16:29:19.080Z"
見るチャネルを更新以下では、チャネルを更新してカスタムフィールドや地域フィルタリングのマッチングを実施する方法を確認してください。
何が共有されますか?
このセクションでは、共有される内容と、その後のビデオへの変更の処理方法について説明します。
ビデオが共有されるとき
ビデオが共有されると、ほとんどのビデオメタデータフィールドがマスターからアフィリエイトアカウントにコピーされます。注目すべき例外は次のとおりです。
id
-ビデオはアフィリエイトアカウントで独自のIDを持ちます- などの日付フィールド
created_at
そしてupdated_at
すべてのビデオアセット(レンディション、画像、text_tracksなど)は、アフィリエイトアカウントによって再生に使用されます。
ビデオが共有された後
ビデオが共有された後、マスターアカウントのビデオへの変更の一部は、アフィリエイトアカウントによって自動的に継承され、一部は継承されません。
ビデオアセット
画像を除く、ビデオアセットへのマスターの変更は常にアフィリエイトに継承されます。アフィリエイトアセットを変更できませんレンディション、マニフェスト、テキストトラック、デジタルマスターなど。
マスターによる画像への変更はアフィリエイトに継承されますアフィリエイトが画像を置き換えない限り。アフィリエイトが画像を変更すると、その画像はマスターから継承されなくなります。
動画メタデータ
ビデオメタデータ(名前、説明、参照IDなど)はアフィリエイトが変更でき、マスタービデオに加えられた変更は次のとおりです。ないアフィリエイトに継承されます。
ビデオの再共有
ただし、マスターの場合は注意してください再共有ビデオ(これはStudioではなくCMS APIを介してのみ実行できます)、すべてのアセットとメタデータ(データ/時間フィールドを除く)はアフィリエイトに共有されます。アフィリエイトが行った変更を上書きする。
メディア共有手順の概要
関係を築く
以下は、リレーションシップを設定するための操作の概要です(詳細については、操作名をクリックしてください)。
マスター操作 | ||
---|---|---|
オペレーション | メソッド/エンドポイント | 説明 |
チャンネルを一覧表示 | GET /accounts/ master_account_id/channels |
アカウントのチャネルのリストを取得します |
チャンネルの詳細を取得する | GET /accounts/ master_account_id/channels/ channel_name [2-1] |
チャンネルの詳細を取得する |
チャネルを更新 | POST /accounts/ master_account_id/channels/ channel_name |
チャンネル設定を更新する |
チャンネルアフィリエイトを一覧表示 | GET /accounts/ master_account_id/channels/default/members |
チャネルのアフィリエイトを取得する |
アフィリエイトを追加 | PUT /accounts/ master_account_id/channels/default/members |
チャネルにアフィリエイトを追加する |
アフィリエイトを削除する | DELETE /accounts/ master_account_id/channels/default/members/ affiliate_account_id |
チャネルからアフィリエイトを削除します |
アフィリエイトオペレーション | ||
オペレーション | メソッド/エンドポイント | 説明 |
利用可能な契約を一覧表示 | GET /accounts/ affiliate_account_id/contracts |
アカウントで利用可能なすべての契約を取得します |
特定のアカウントの契約を取得する | GET /accounts/ affiliate_account_id/contracts/ master_account_id |
特定のアカウントから契約を取得します(ある場合) |
契約を承認する | PATCH /accounts/ affiliate_account_id/contracts/ master_account_id |
契約の受諾条件を受け入れて構成する |
注
- [2-1] 現在、という名前のチャネルは1つだけです。
default
動画を共有する
ビデオ共有操作はマスターアカウントによって実行されます。アフィリエイトアカウントは共有を受け入れることができます(auto_accept
に設定されていますfalse
)標準を使用して共有ビデオメタデータと画像を更新できますビデオの更新操作。
関係が設定された後に実行できる共有操作は次のとおりです(詳細については、操作名をクリックしてください)。
マスター操作 | ||
---|---|---|
オペレーション | メソッド/エンドポイント | 説明 |
既存の株式を一覧表示する | GET /accounts/ master_account_id/videos/ video_id/shares |
ビデオの既存の共有のリストを取得します-これは重要の結果のためにビデオの再共有すでに共有されている場合 |
ビデオを共有する | POST /accounts/ master_account_id/videos/ video_id/shares |
1つ以上のアフィリエイトにビデオを共有する-ビデオがすでに共有されている場合、この操作は再共有する -それはおそらくないあなたがしたいこと |
アフィリエイトの動画の共有を解除する | DELETE /accounts/ master_account_id/videos/ video_id/shares |
特定のアフィリエイトの動画の共有を解除します-共有を解除して再共有すると、共有動画のアフィリエイトアカウントに新しい動画IDが追加されることに注意してください |
アフィリエイトオペレーション | ||
オペレーション | メソッド/エンドポイント | 説明 |
共有ビデオを受け入れる | PATCH /accounts/ affiliate_account_id/videos/ video_id |
共有ビデオを受け入れる(auto_accept オフになっています) |
注:承認されるのを待っている共有動画を特定するには、状態:保留中
:
https://cms.api.brightcove.com/v1/accounts/{account_id}/videos?q=state:pending
または
https://cms.api.brightcove.com/v1/accounts/{account_id}/videos?query=state:PENDING
CMS APIリクエスト-セットアップ
このセクションでは、 CMS APIメディア共有の設定に関連する操作。
マスター操作
チャンネルを一覧表示します
方法 | GET |
---|---|
終点 | /accounts/ master_account_id/channels |
リクエスト本文 | |
レスポンスの例 |
|
チャンネルの詳細を取得する
方法 | GET |
---|---|
終点 | https://cms.api.brightcove.com/v1/accounts/ master_account_id/channels/ channel_name [5-1] |
リクエスト本文 | |
レスポンスの例 |
|
注
- [5-1] 現在、という名前のチャネルは1つだけです。
default
チャネルを更新
方法 | PATCH |
---|---|
終点 | /accounts/ master_account_id/channels/ channel_name [6-1] |
リクエスト本文 |
|
レスポンスの例 |
|
注
- [6-1] 現在、という名前のチャネルは1つだけです。
default
チャネルのアフィリエイトを一覧表示する
方法 | GET |
---|---|
終点 | /accounts/ master_account_id/channels/default/members |
リクエスト本文 | |
レスポンスの例 |
|
の値approved
フィールドは、アフィリエイトが契約を承認したかどうかを示します。
チャネルにアフィリエイトを追加
方法 | PUT |
---|---|
終点 | /accounts/ master_account_id/channels/default/members/ affiliate_account_id |
リクエスト本文 |
|
レスポンスの例 |
|
チャネルからアフィリエイトを削除する
方法 | DELETE |
---|---|
終点 | /accounts/ master_account_id/channels/default/members/ affiliate_account_id |
リクエスト本文 | |
レスポンスの例 | 204 NO CONTENT (空の応答本体) |
アフィリエイトオペレーション
利用可能な契約を一覧表示
方法 | GET |
---|---|
終点 | /accounts/ affiliate_account_id/contracts |
リクエスト本文 | |
レスポンスの例 |
|
応答の2つの重要なフィールドは次のとおりです。
approved
-trueに設定すると、契約はアフィリエイトによって受け入れられますauto-accept
-trueに設定すると、この契約を通じて共有された動画はアフィリエイトによって自動的に受け入れられます。それ以外の場合は、1つずつ承認する必要があります
契約を更新する方法を以下に示します。
特定のアカウントの契約を取得する
方法 | GET |
---|---|
終点 | /accounts/ affiliate_account_id/contracts/ master_account_id |
リクエスト本文 | |
レスポンスの例 |
|
契約を承認する
方法 | PATCH |
---|---|
終点 | /accounts/ affiliate_account_id/contracts/ master_account_id |
リクエスト本文 |
|
レスポンスの例 |
|
のみを含める場合"approved":true
、各動画は個別に承認する必要があります。
CMS APIリクエスト-共有
このセクションでは、 CMS API動画の共有に使用されるリクエスト。メディア共有操作はマスターアカウントによって実行されます。アフィリエイトアカウントは、次の場合に株式を受け入れることができますauto_accept
オフになっています。
マスター操作
既存の株式を一覧表示する
動画がすでに他のアカウントで共有されているかどうかを確認するには、以下のリクエストを使用できます。
方法 | GET |
---|---|
終点 | /accounts/ master_account_id/videos/ video_id/shares |
リクエスト本文 | |
レスポンスの例 |
|
ビデオの共有(または再共有)
以下に説明するリクエストは、1つ以上のアフィリエイトアカウントにビデオを共有します。
方法 | POST |
---|---|
終点 | /accounts/ master_account_id/videos/ video_id/shares |
リクエスト本文 |
|
レスポンスの例 |
成功への対応
失敗への対応
|
共有すると、アフィリエイトのアカウントに新しい動画が作成されます。ザ・state
ビデオ共有のPROCESSING
共有が完了するまでそしてビデオはアフィリエイトアカウントで作成されます。アフィリエイトはまだビデオを受け入れる必要があるかもしれません(auto_accept
に設定されていますfalse
アフィリエイトによる契約について-共有の設定に関する前のセクションを参照してください)。
アフィリエイトの動画の共有を解除する
方法 | DELETE |
---|---|
終点 | /accounts/ master_account_id/videos/ video_id/shares/ affiliate_account_id |
リクエスト本文 | |
レスポンスの例 | 202 ACCEPTED (空の応答本文)-応答は、要求が処理のために受け入れられたことを示しますが、操作が数分間完了しない場合があります |
アフィリエイトオペレーション
共有ビデオを受け入れる
共有ビデオを受け入れるために、アフィリエイトは共有ビデオを更新し、state
にACTIVE
。(設定state
にINACTIVE
共有を拒否します。)
方法 | PATCH |
---|---|
終点 | /accounts/ affiliate_account_id/videos/ affiliate_video_id |
リクエスト本文 |
|
レスポンスの例 |
|
をセットするstate
にINACTIVE
共有を拒否します。
動画がアカウントに共有されたことを示す特別な通知はないことに注意してください。ただし、ビデオを検索にとってstate:pending
、承認されていない共有が見つかります。または、Studio Mediaモジュールの[保留中の共有]リストを使用して、保留中の共有を表示し、承認/拒否することもできます。
エラー
メディア共有エラーは、API リクエストに対する個別のエラー応答として返されるのではなく、error_message
通常の応答のフィールドに返されます。
[
{
"video_id" : "1239817239128",
"affiliate_id" : "32871239",
"affiliate_video_id" : "30308254055202",
"status" : "COMPLETE",
"shared_at" : "2017-12-11T17:57:45.530Z",
"updated_at" : "2017-12-11T18:03:32.789Z",
"error_message" : "[{"error_code":"MISSING_CUSTOM_FIELDS","error_message":"Affiliate account is missing custom fields: [whisky]"}]"
}
]
見るNS CMS APIエラーリファレンス詳細については。
制約事項
現在、メディア共有には次の制限があります。
- DRM:メディア共有CMS API現在、DRM対応アカウントではサポートされていません。DRM 対応でないアカウントから DRM 対応のアカウントへのビデオの共有はサポートされますが、共有動画は DRM 用にパッケージされません。
-
マスターアカウントで定義されたチャネルが設定されている場合
enforce_custom_fields
にtrue
、次に、アフィリエイトアカウントで許可されていない値のカスタムフィールドを持つビデオを共有すると、その共有の試行は失敗します。共有ステータスは、次のようなエラーメッセージで更新されます。[{"error_code": "ILLEGAL_CUSTOM_FIELD_VALUE", "error_message": "Illegal value for custom fields: [topic]"}]
マスターアカウントで定義されたチャネルが設定されている場合
enforce_custom_fields
にfalse
、次に、アフィリエイトアカウントで許可されていない値のカスタムフィールドを持つ動画を共有すると、共有の試みは機能しますが、値の悪いフィールドは動画のアフィリエイトコピーに含まれません。 -
SSAI で共有ビデオを再生する場合、SSAI マクロ置換では、子ビデオの代わりに親ビデオのメタデータが使用されます。また、親動画がとしてマークされている場合、子動画にというラベルが付いている場合でも
Advertising='Free'
、SSAIAd Supported
は広告検索をスキップします。