預先載入媒體內容

IMA SDK 支援預先載入影片廣告素材資源。您可以在 SDK 整合中啟用這項功能,讓廣告和內容之間的轉換更為流暢。本指南將介紹使用 IMA SDK 實作媒體預先載入功能的技術細節。

啟用預先載入功能

如要啟用預先載入功能,請將 AdsRenderingSettings.enablePreloading 設為 true。這項操作必須是 ADS_MANAGER_LOADED 事件的結果:

function onAdsManagerLoaded(adsManagerLoadedEvent) {
  var adsRenderingSettings = new google.ima.AdsRenderingSettings();
  adsRenderingSettings.enablePreloading = true;
  ...
  var adsManager = adsManagerLoadedEvent.getAdsManager(
      videoContent, adsRenderingSettings);
}

時間

下表概略說明啟用預先載入功能後,廣告載入時間的變更情形:

活動 附預先載入 不使用預先載入
已要求的廣告 VAST AdsLoader.requestAds() AdsLoader.requestAds()
載入片頭廣告 (單一廣告) AdsManager.init() AdsManager.start()
載入片頭廣告 (VMAP/廣告規則) AdsManager.init() AdsManager.init()
載入片中或片尾廣告 廣告插播中第 1 個廣告的廣告開始時間前 8 秒。 如果是連續廣告,則是上一個廣告開始播放時。 廣告開始播放時。

限制

預先載入有下列限制:

  • 在 iOS 裝置的行動版網站上,或在連網智慧型電視上使用 HTML5 IMA SDK 時,無法使用媒體預先載入功能。
  • VPAID 會預先載入,但廣告的所有依附元件 (包括廣告播放的媒體) 都會在廣告執行前載入。
  • 您必須啟用自動播放功能,才能預先載入 VMAP 廣告。確認 settings.isAutoPlayAdBreaks() 已設為 true,這是預設值。
  • 如果使用 AdsRequest.contentDuration 設定時間長度,系統會在最後一個片中廣告之後,或內容結束前 8 秒預先載入片尾廣告。

常見問題

媒體預先載入功能是否會載入完整廣告素材?
否,廣告素材通常不會在廣告開始播放時就完全載入。預先載入可縮短廣告載入時間,進而改善使用者體驗。不支援離線廣告放送。IMA SDK 會載入瀏覽器允許的媒體,但會受到使用者的網路連線和廣告素材大小限制。
是否需要為廣告的 VAST 和媒體啟用媒體預先載入功能?
否,無論預先載入設定為何,SDK 一律會預先載入廣告的 VAST。