使用原生 SDK 的即時 SSAI 播放程式增強功能

在本主題中,您將學習如何使用包含伺服器端廣告的 Brightcove 原生 SDK 播放即時串流,以及利用即時 SSAI 的播放程式增強功能來改善使用者體驗。

簡介

Brightcove 的即時 SSAI 播放器增強功能可讓您透過廣告計數、廣告倒數計時器、點選廣告和隨附廣告來改善直播中的廣告突破。可以使用Brightcove本機SDK播放這些實時流。

用戶端廣告元件
用戶端廣告元件

由於電視不支持網絡瀏覽器,因此伴隨廣告和點擊型廣告在連接的電視上不可用。

如果您是新使用此功能,請參閱下列內容:

步驟

要使用Brightcove Native SDK使用增強型播放器播放實時流,請按照下列步驟操作:

  1. 依照「實作即時 SSAI 播放器增強功能」文件中的工作流程,直到建立您的播放權杖。
  2. 建置您的應用程式:

  3. 繼續「實作即時 SSAI 的播放程式增強功能」文件中的工作流程。

安卓實作

您將需要以下值才能使用適用於Android的Native SDK來構建您的應用程序:

  • 播放記號
  • 帳號識別碼
  • 視訊識別碼
  • 原則金鑰

要獲取您的策略密鑰,請查看策略鍵文檔。

請依照下列步驟建置您的應用程式:

  1. 使用基本 SSAI 示例應用程序作為代碼的起點。
  2. 在裡面資源/值/strings.xml文件,將以下內容替換為您自己的值:
    • 帳號識別碼
    • 視訊識別碼
    • 原則金鑰
  3. 在裡面主活動.java文件,替換ad_config_id與你的價值播放令牌 .

    private final String AD_CONFIG_ID_QUERY_PARAM_VALUE = "your playback token";
  4. ad_config_id將您的播放令牌值作為查詢參數添加到 HTTP 請求中。

    HttpRequestConfig httpRequestConfig = new HttpRequestConfig.Builder()
      .addQueryParameter(AD_CONFIG_ID_QUERY_PARAM_KEY, AD_CONFIG_ID_QUERY_PARAM_VALUE)
      .build();
  5. 使用即時串流視訊 ID 和更新的 HTTP 要求,對播放 API 進行目錄呼叫。

    catalog.findVideoByID(getString(R.string.video_id), httpRequestConfig, new VideoListener() {
         @Override
         public void onVideo(Video video) {
             plugin.processVideo(video);
         }
     });
  6. 您的播放器已準備好播放您的直播。

iOS 實作

您將需要以下值才能使用iOS的Native SDK來構建您的應用程序:

  • 播放記號
  • 帳號識別碼
  • 視訊識別碼
  • 原則金鑰

要獲取您的策略密鑰,請查看策略鍵文檔。

請依照下列步驟建置您的應用程式:

  1. 使用基本 SSAI 播放器示例作為代碼的起點。
  2. 在裡面視圖控制器.swift文件,將以下內容替換為您自己的值:
    • 帳號識別碼
    • 視訊識別碼
    • 原則金鑰
  3. 更換AdConfigId與你的價值播放令牌 .

    static let AdConfigId = "your playback token"
  4. AdConfigId將您的播放令牌值添加為查詢參數。

    let queryParameters = [kBCOVPlaybackServiceParamaterKeyAdConfigId: Constants.AdConfigId]
  5. 使用您的實時視頻ID和查詢參數對Playback API進行目錄調用。

    playbackService.findVideo(withVideoID: Constants.VideoId, parameters: queryParameters)
      { [weak self] (video: BCOVVideo?, jsonResponse: [AnyHashable: Any]?, error: Error?) -> Void in
      guard let _video = video else {
        print("ViewController Debug - Error retrieving video: \(error?.localizedDescription ?? "unknown error")")
        return
      }
      self?.playbackController?.setVideos([_video] as NSFastEnumeration)
    }
  6. 您的播放器已準備好播放您的直播。