はじめに
Brightcoveの配信ルールでは、ジャストインタイムマニフェスト生成機能を活用して、カスタムルールを使用してコンテンツを視聴者に配信する方法を制御できます。
配信ルールの詳細については、以下を参照してください。
Androidの実装
Android 版ネイティブ SDK で配信ルールを使用するには、次の手順に従います。
- デリバリールールIDのパラメータを定義します。
-
HttpRequestConfig
適用する配信ルールを使用してを作成します。の文字列値を渡しますconfig_id
、を使用してHttpRequestConfig.KEY_DELIVERY_RULE_CONFIG_ID
パラメータ。 -
カタログ呼び出しで、配信ルール ID をパラメーターとして再生 API に渡します。あなたはどちらかを使うことができます
findVideoByID
またはfindPlaylistByID
メソッド。ここにコードがあります:public class MainActivity extends BrightcovePlayer { private final String TAG = this.getClass().getSimpleName(); @Override protected void onCreate(Bundle savedInstanceState) { // Assign the brightcoveVideoView before entering the superclass. // This allows for video player lifecycle management. setContentView(R.layout.activity_main); brightcoveVideoView = (BrightcoveExoPlayerVideoView) findViewById(R.id.brightcove_video_view); super.onCreate(savedInstanceState); // Get the event emitter from the SDK for notifications and logging EventEmitter eventEmitter = brightcoveVideoView.getEventEmitter(); // Create a catalog request to retrieve a video from your Video Cloud library Catalog catalog = new Catalog(eventEmitter, getString(R.string.account), getString(R.string.policy)); // Create HttpRequestConfig with the delivery rule you want to be applied. // Use the HttpRequestConfig.KEY_DELIVERY_RULE_CONFIG_ID with a String value for config_id HttpRequestConfig httpRequestConfig = new HttpRequestConfig.Builder() .addQueryParameter(HttpRequestConfig.KEY_DELIVERY_RULE_CONFIG_ID, "your rules id") .build(); // Add the HttpRequestConfig to the catalog request. catalog.findVideoByID(getString(R.string.videoId), httpRequestConfig, new VideoListener() { // Add the video found to the queue with add(). // Start playback of the video with start(). @Override public void onVideo(Video video) { Log.v(TAG, "onVideo: video = " + video); brightcoveVideoView.add(video); brightcoveVideoView.start(); } }); } }
iOSの実装
iOS 版ネイティブ SDK で配信ルールを使用するには、次の手順に従います。
- デリバリールールIDのパラメータを定義します。
-
カタログ呼び出しで、配信ルール ID をパラメーターとして再生 API に渡します。あなたはどちらかを使うことができます
findVideoWithVideoID
またはfindPlaylistWithPlaylistID
メソッド。ここにコードがあります:- (void)requestContentFromPlaybackService { NSDictionary *playbackAPIParameters = @{@"config_id":@"your rules id"}; [self.playbackService findVideoWithVideoID:kViewControllerVideoID parameters:playbackAPIParameters completion:^(BCOVVideo *video, NSDictionary *jsonResponse, NSError *error) { if (video) { [self.playbackController setVideos:@[ video ]]; } else { NSLog(@"ViewController Debug - Error retrieving video playlist: `%@`", error); } }]; }