Class ima
方法
控制 IMA SDK 的全域函式。
        disableLogging()
      
      
        停用 SDK 記錄功能。記錄功能預設為開啟。
      
        getStreamManager()
      
      
        如果可用,則傳回串流管理員。如果串流管理員尚未提供,系統會傳回「Invalid」。如果建立串流管理員時發生錯誤,系統會傳回錯誤物件。
          
傳回 object:串流管理員或錯誤物件。
      
        initSdk(settings)
      
      
        初始化 SDK。
      
| 參數 | 類型 | 說明 | 
|---|---|---|
| settings | object | 選用的 IMA 設定物件。 | 
        requestStream(streamRequest)
      
      
        開始非同步串流要求。呼叫這個方法後,控制項會立即返回播放器。
          
傳回 object:如果沒有錯誤,則為錯誤或無效
| 參數 | 類型 | 說明 | 
|---|---|---|
| streamRequest | object | 
Class ima.AdBreakInfo
欄位
方法
內含廣告插播的相關資訊。由 SDK 傳遞至事件回呼。
屬性
| 名稱 | 類型 | 說明 | 
|---|---|---|
| adPosition |  | 廣告插播中廣告的索引。索引適用於 | 
| duration |  | 中斷時間長度上限 (以秒為單位),或  | 
| podIndex |  | 如果是直播,則會將廣告插播 ID 做為廣告群組索引,或將  | 
| timeOffset |  | 廣告連播在內容中的位置 (以秒為單位)。片頭廣告會傳回  | 
| totalAds |  | 這個廣告時段內的廣告總數。
獨立廣告的值為  | 
        createAdBreakInfo()
      
      
  
    類別 ima.AdEvent
欄位
廣告管理工具觸發的事件。
屬性
| 名稱 | 類型 | 說明 | 
|---|---|---|
| AD_PERIOD_ENDED |  | 每當串流從廣告或字卡切換為內容時,就會觸發這個事件。 即使廣告第二次播放或搜尋廣告時,也會觸發這個事件。 | 
| AD_PERIOD_STARTED |  | 每次串流從內容切換至廣告或字卡時觸發。 即使廣告第二次播放或搜尋廣告時,也會觸發這個事件。 | 
| COMPLETE |  | 廣告播放完畢時會啟動。 | 
| ERROR |  | 發生錯誤時觸發。 | 
| FIRST_QUARTILE |  | 廣告播放指標越過第一個四分位時觸發。 | 
| ICON_FALLBACK_IMAGE_CLOSED |  | 使用者關閉圖示備用圖片對話方塊時觸發。 | 
| ICON_FALLBACK_IMAGE_SHOWN |  | 顯示圖示候補圖片時觸發。 | 
| MIDPOINT |  | 廣告播放頭越過中點時觸發。 | 
| PROGRESS |  | 廣告進度更新時觸發。 | 
| SKIPPABLE_STATE_CHANGED |  | 廣告可略過狀態變更時觸發。 | 
| SKIPPED |  | 廣告遭到略過時觸發。 | 
| START |  | 廣告開始播放時觸發。 | 
| THIRD_QUARTILE |  | 廣告播放指標超過第三個四分位時觸發。 | 
Class ima.AdInfo
欄位
方法
內含廣告相關資訊。由 SDK 傳遞至事件回呼。
屬性
| 名稱 | 類型 | 說明 | 
|---|---|---|
| adBreakInfo |  | 與廣告所屬整個中斷相關的資訊。 | 
| adDescription |  | 廣告說明。 | 
| adId |  | 廣告 ID,如果不明則為空字串。 | 
| adSystem |  | 提供廣告素材的廣告系統。 | 
| adTitle |  | 廣告標題。 | 
| advertiserName |  | 放送方定義的廣告主名稱。 | 
| companions |  | VAST 回應中指定的隨播廣告。 | 
| creativeAdId |  | 廣告的 ISCI (業界標準商業識別碼) 代碼。 這是 VAST 回應中選定廣告素材的 Ad-ID。 | 
| creativeId |  | 廣告所選廣告素材的 ID。 | 
| currentTime |  | 廣告中的目前時間 (以秒為單位),如果不明則為 -1。 | 
| dealId |  | 傳回目前廣告包裝函式鏈中的第一個交易 ID (從頂端開始)。 | 
| duration |  | 這個單一廣告的時間長度 (以秒為單位),如果不明則為 -1。 | 
| skipOffset |  | 廣告可略過的時間,如果不明則為 -1。 | 
| universalAdIDRegistry |  | 這個字串用於識別登錄網站的網址,所選廣告素材的通用廣告 ID 會編目於該網站。 | 
| universalAdIDValue |  | 廣告所選廣告素材的通用廣告 ID。 | 
| wrappers |  | ima.WrapperInfo 陣列,內含這則廣告的包裝函式資訊。順序為從外層包裝到內層。 | 
        createAdInfo()
      
      
          
退貨ima.AdInfo:
      
Class ima.Companion
欄位
方法
包含廣告隨播廣告素材的相關資訊。
屬性
| 名稱 | 類型 | 說明 | 
|---|---|---|
| adSlotId |  | 隨播廣告的廣告版位 ID。如果沒有,請留空。 | 
| apiFramework |  | 執行這則廣告所需的 API,如果無法使用則為「無效」。 | 
| companionClickThrough |  | 隨播廣告的到達網址。 | 
| creativeType |  | 代表廣告素材類型,通常是 MIME 類型。 | 
| height |  | 隨播廣告的高度 (以像素為單位)。如果無法使用,則為 0。 | 
| trackingEvents |  | 追蹤事件的地圖,其中鍵是事件,值則是該事件觸發時要 Ping 的網址清單。 | 
| url |  | 這個隨播內容的靜態資源網址。 | 
| width |  | 隨播廣告的寬度 (以像素為單位)。如果無法使用,則為 0。 | 
        createCompanion()
      
      
  
    Class ima.CuePoint
欄位
方法
內含提示點的相關資訊。
屬性
| 名稱 | 類型 | 說明 | 
|---|---|---|
| end |  | 提示點的結束時間 (以秒為單位)。這會對應到廣告插播。 | 
| hasPlayed |  | 布林值,指出提示點是否已播放。 | 
| start |  | 提示點的開始時間 (以秒為單位)。這會對應到廣告插播。 | 
        createCuePoint()
      
      
          
退貨ima.CuePoint:
      
類別 ima.Error
欄位
方法
如果發生錯誤,系統會將物件傳遞至錯誤處理常式。
屬性
| 名稱 | 類型 | 說明 | 
|---|---|---|
| id |  | 錯誤的 ID。如需錯誤代碼清單,請參閱 ErrorEvent 常數。 | 
| info |  | 錯誤的其他資訊。 | 
| type |  | 一律設為「error」,表示這個物件的類型。 | 
        createError()
      
      
          
退貨ima.Error:
      
類別 ima.ErrorEvent
欄位
SDK 可能傳回的所有錯誤。
屬性
| 名稱 | 類型 | 說明 | 
|---|---|---|
| BAD_STREAM_REQUEST |  | 串流要求未正確填入。 | 
| COULD_NOT_LOAD_STREAM |  | 無法載入串流。 | 
| ERROR |  | 不明錯誤。 | 
| INVALID_RESPONSE |  | 伺服器回應無效。 | 
| STREAM_API_KEY_NOT_VALID |  | 伺服器不接受提供的 API 金鑰。 | 
Class ima.Player
方法
        adBreakEnded(adBreakInfo)
      
      
        (選用步驟) 廣告插播結束時呼叫。
      
| 參數 | 類型 | 說明 | 
|---|---|---|
| adBreakInfo | ima.AdBreakInfo | 內含廣告插播的相關資訊。 | 
        adBreakStarted(adBreakInfo)
      
      
        (選用步驟) 廣告中斷開始時呼叫。
      
| 參數 | 類型 | 說明 | 
|---|---|---|
| adBreakInfo | ima.AdBreakInfo | 內含廣告插播的相關資訊。 | 
        allVideoComplete()
      
      
        (選用步驟) 所有影片都播放完畢時呼叫。
      
        createPlayer()
      
      
        建立空的 IMA Player 物件。您必須導入 
loadUrl 函式才能播放廣告。其他函式則為選用函式。
          
退貨 ima.Player:
      
        loadUrl(streamInfo)
      
      
        在播放器應開始播放網址時呼叫。您必須實作這個方法才能載入串流。
      
| 參數 | 類型 | 說明 | 
|---|---|---|
| streamInfo | ima.StreamInfo | 包含播放內容所需的資訊。 | 
        streamInitialized(streamInfo)
      
      
        在串流初始化時呼叫。
      
| 參數 | 類型 | 說明 | 
|---|---|---|
| streamInfo | ima.StreamInfo | 包含播放內容所需的資訊。 | 
Class ima.StreamFormat
欄位
定義串流格式。
屬性
| 名稱 | 類型 | 說明 | 
|---|---|---|
| DASH |  | |
| HLS |  | 
Class ima.StreamInfo
欄位
方法
從 SDK 傳送至播放器的串流相關資訊。
屬性
| 名稱 | 類型 | 說明 | 
|---|---|---|
| format |  | 影片格式:hls 或 dash。 在 ima.StreamFormat 中定義。 | 
| manifest |  | 串流的網址。 | 
| streamId |  | 串流的專屬 ID。 | 
| streamType |  | 影片類型:直播或隨選。 定義於 ima.StreamType。 | 
| subtitles |  | 字幕 (如有)。否則為無效。 | 
        createStreamInfo()
      
      
  
    Class ima.StreamManager
方法
用於管理串流播放作業的物件。
        addEventListener(event, callback)
      
      
        為指定事件新增監聽器。如要查看支援的事件,請參閱 AdEvents 常數。
      
| 參數 | 類型 | 說明 | 
|---|---|---|
| event | string | |
| callback | function | 
        createStreamManager(streamRequest, streamInitResponse)
      
      
        | 參數 | 類型 | 說明 | 
|---|---|---|
| streamRequest | ima.StreamRequest | |
| streamInitResponse | ima.StreamInitResponse | 
        enableInteractiveAds()
      
      
        不支援。請改為直接將資料從隨播廣告傳遞至 RAF。這項作業現在已無效。
      
        getContentTime(streamTime)
      
      
        取得 VOD 串流的時間 (以毫秒為單位),代表不含廣告的內容時間。詳情請參閱常見問題。
如要取得目前串流時間的內容時間,請傳入 -1。
          
傳回 Integer:與指定串流時間對應的內容時間。
      
| 參數 | 類型 | 說明 | 
|---|---|---|
| streamTime | Integer | 串流中的時間。 | 
        getCuePoints()
      
      
        傳回所有對應廣告插斷的提示點。這項功能僅適用於所有廣告插播時間點都已知的隨選影片內容。所有時間皆以秒為單位,代表串流時間。
如果是 Cloud Stitching API 串流,每個 ima.CuePoint 的 hasPlayed 屬性一律為 false。
          
傳回 Object:包含所有提示點的陣列。
      
        getPreviousCuePoint(time)
      
      
        傳回這個時間之前的提示點。提示點表示廣告插播時間點。所有時間皆以串流時間 (以秒為單位) 表示。
          
傳回 ima.CuePoint:含有開始、結束和 hasPlayed 的物件。如果沒有可用的提示點,則傳回「Invalid」。
| 參數 | 類型 | 說明 | 
|---|---|---|
| time | Float | 要查詢的時間, | 
        getStreamTime(contentTime)
      
      
        從隨選影片的內容時間 (以毫秒為單位) 取得串流時間。詳情請參閱常見問題。
          
傳回 Integer:與指定內容時間對應的串流時間。
      
| 參數 | 類型 | 說明 | 
|---|---|---|
| contentTime | Integer | 內容的時間。 | 
        loadThirdPartyStream(streamManifest, streamSubtitle)
      
      
        載入廣告中繼資料,並使用提供的 streamManifestUrl 和 streamSubtitle 資料呼叫 loadUrl 函式。只有在串流請求類型為 ima.StreamType.POD_VOD 時,這項函式才會運作。
      
| 參數 | 類型 | 說明 | 
|---|---|---|
| streamManifest | string | 已縫合廣告的串流資訊清單網址。 | 
| streamSubtitle | ifArray | 與串流相關聯的字幕,如果沒有則為  | 
        onMessage(msg)
      
      
        處理來自 Video 物件的所有訊息。
必須針對 roMessagePort 收到的每則訊息呼叫。
      
| 參數 | 類型 | 說明 | 
|---|---|---|
| msg | object | 來自 roVideo 埠的訊息。 | 
        replaceAdTagParameters(adTagParameters)
      
      
        取代近期即將發出的直播廣告請求所使用的所有廣告代碼參數。請注意,這項呼叫不適用於隨選視訊串流。
      
| 參數 | 類型 | 說明 | 
|---|---|---|
| adTagParameters | string | 新的廣告代碼參數。 | 
        start()
      
      
        開始播放串流。
      
類別 ima.StreamRequest
欄位
方法
用於指定串流要求的屬性。
屬性
| 名稱 | 類型 | 說明 | 
|---|---|---|
| adTagParameters |  | (選用步驟) 您可以在串流請求中覆寫一組有限的廣告代碼參數。詳情請參閱「為串流提供指定目標參數」一文。您也可以使用 dai-ot 和 dai-ov 參數,指定偏好的串流變體。詳情請參閱「覆寫串流變體參數」。 | 
| adUiNode |  | 廣告 UI 顯示的場景圖節點。IMA 會在廣告期間,將「為什麼會顯示這則廣告?」和「略過」按鈕等元素放在這個元素上。元素必須疊加在整個影片元素上。 | 
| apiKey |  | (選用步驟) 這些金鑰可用於驗證串流要求。 動態廣告插播驗證金鑰 必須在 DFP 使用者介面中設定。 | 
| assetKey |  | 直播影片必須符合這項規定。這項資訊可用於判斷要播放哪個串流。直播串流要求的素材資源金鑰是識別碼,可在 DFP 使用者介面中找到。 | 
| authToken |  | 串流要求授權權杖。用來取代 API 金鑰,以進行更嚴格的內容授權。發布者可以根據這個權杖,控管個別內容串流的授權。 | 
| contentSourceId |  | 這是隨選串流的必要項目。cmsid 來自 DFP 使用者介面中的 DFP 影片內容來源。 | 
| customAssetKey |  | 自訂素材資源金鑰可用於判斷要播放哪個串流。 Pod 放送串流要求必須使用自訂素材資源金鑰。 | 
| format |  | 串流格式。預設值為  | 
| networkCode |  | 提出串流要求的發布商聯播網代碼。使用 createPodLiveStreamRequest 或 createPodVodStreamRequest 提出廣告連播放送串流要求時,必須提供聯播網代碼。使用 createVideoStitcherLiveStreamRequest、createVideoStitcherVodStreamRequest 或 createVideoStitcherVodStreamRequestWithVodConfig 提出的 Cloud 縫合串流要求,也必須提供這些代碼。這些代碼為選用項目,建議用於透過 createLiveStreamRequest 或 createVodStreamRequest 提出的全方位服務串流要求。加入聯播網代碼會套用在 Ad Manager 使用者介面中選取的設定,例如啟用程式輔助受限制廣告。如果是 Pod 放送和雲端縫合,加入聯播網代碼即可找到並播放串流。如要找出聯播網代碼,請參閱這篇文章。 | 
| player |  | 播放器介面的實作項目。 | 
| ppid |  | 已淘汰,使用 adTagParameters。 (選用步驟) DFP 目標對象發布商提供的 ID。 | 
| streamActivityMonitorId |  | 用於透過串流播放活動監控器偵錯串流的 ID。 發布商可透過這項功能,在串流活動監控工具中輕鬆找到串流記錄。 | 
| videoId |  | 這是隨選串流的必要項目。 影片內容來源的 ID。 | 
| videoObject |  | 負責在用戶端應用程式上播放影片的影片物件 (例如 Video roSGNode)。系統會輪詢這個物件的各種資料,以便適時觸發 Live HLS ID3 事件。 | 
| videoStitcherSessionOptions |  | 工作階段選項可用於為 VideoStitcher streamRequests 設定影片縫合器專屬參數。 | 
        createLiveStreamRequest(assetKey, apiKey, networkCode)
      
      
        初始化 Live StreamRequest 的必要屬性。使用這個 API 會導致系統忽略任何其他 StreamType 專屬屬性。如果任何必要參數是空字串,系統會記錄錯誤,且 API 會傳回一般 StreamRequest,不會忽略任何屬性。
          
傳回 ima.StreamRequest:具有必要 Live 屬性的 ima.StreamRequest 物件。
      
| 參數 | 類型 | 說明 | 
|---|---|---|
| assetKey | string | |
| apiKey | string | 指派給傳回  | 
| networkCode | string | 提出串流要求的發布商聯播網代碼。網路代碼為選填項目,但建議填寫。 | 
        createPodLiveStreamRequest(customAssetKey, networkCode, apiKey)
      
      
        初始化 Pod Live ima.StreamRequest 的必要屬性。
使用此 API 會導致系統忽略任何其他 ima.StreamType 專屬屬性。如果任何必要參數是空字串,系統會記錄錯誤,且 API 會傳回一般 StreamRequest,不會忽略任何屬性。
          
傳回 StreamRequest:具有必要 PodLive 屬性的 ima.StreamRequest 物件。
      
| 參數 | 類型 | 說明 | 
|---|---|---|
| customAssetKey | string | |
| networkCode | string | |
| apiKey | string | 指派給傳回  | 
        createPodVodStreamRequest(networkCode)
      
      
        使用第三方影片縫合器搭配 DAI Pod 放送時,初始化 ima.StreamRequest 的必要屬性,以註冊 VOD 串流。這項函式會將要求類型設為 ima.StreamType.POD_VOD,並驗證所有必要屬性是否缺少資料。如果驗證失敗,偵錯控制台就會記錄錯誤。
          
傳回 StreamRequest:ima.StreamRequest 物件。如果指定所有必要屬性,要求類型會設為 ima.StreamType.POD_VOD。
| 參數 | 類型 | 說明 | 
|---|---|---|
| networkCode | string | Google Ad Manager 聯播網代碼 | 
        createStreamRequest()
      
      
          
傳回 ima.StreamRequest:空白 ima.StreamRequest 物件。
      
        createVideoStitcherLiveStreamRequest(customAssetKey, networkCode, liveConfigId, region, projectNumber, oAuthToken)
      
      
        初始化 Video Stitcher Live 的必要屬性 StreamRequest。使用此 API 會導致系統忽略任何其他 StreamType 專屬屬性。如果任何必要參數是空字串,系統會記錄錯誤,且 API 會傳回一般 StreamRequest,不會忽略任何屬性。
          
傳回 ima.StreamRequest:具有必要 VideoStitcherLive 屬性的 ima.StreamRequest 物件。
      
| 參數 | 類型 | 說明 | 
|---|---|---|
| customAssetKey | string | |
| networkCode | string | |
| liveConfigId | string | |
| region | string | |
| projectNumber | string | |
| oAuthToken | string | 
        createVideoStitcherVodStreamRequest(adTagUrl, networkCode, contentSourceUrl, region, projectNumber, oAuthToken)
      
      
        初始化 Video Stitcher VOD StreamRequest 的必要屬性。使用此 API 會導致系統忽略任何其他 StreamType 專屬屬性。如果任何必要參數是空字串,系統會記錄錯誤,且 API 會傳回一般 StreamRequest,不會忽略任何屬性。
          
傳回 ima.StreamRequest:具有必要 VideoStitcherVod 屬性的 ima.StreamRequest 物件。
      
| 參數 | 類型 | 說明 | 
|---|---|---|
| adTagUrl | string | |
| networkCode | string | |
| contentSourceUrl | string | |
| region | string | |
| projectNumber | string | |
| oAuthToken | string | 
        createVideoStitcherVodStreamRequestWithVodConfig(vodConfigId, networkCode, region, projectNumber, oAuthToken)
      
      
        使用從 Cloud Video Stitcher 建立的 vodConfigId,初始化 Video Stitcher VOD StreamRequest 的必要屬性。使用此 API 會導致系統忽略任何其他 StreamType 專屬屬性。如果任何必要參數是空字串,系統會記錄錯誤,且 API 會傳回一般 StreamRequest,不會忽略任何屬性。
          
傳回 ima.StreamRequest:具有必要 VideoStitcherVod 屬性的 ima.StreamRequest 物件。
      
| 參數 | 類型 | 說明 | 
|---|---|---|
| vodConfigId | string | |
| networkCode | string | |
| region | string | |
| projectNumber | string | |
| oAuthToken | string | 
        createVodStreamRequest(contentSourceId, videoId, apiKey, networkCode)
      
      
        初始化 VOD ima.StreamRequest 的必要屬性。使用這個 API 會導致系統忽略任何其他 ima.StreamType 專屬屬性。如果任何必要參數是空字串,系統會記錄錯誤,且 API 會傳回一般 StreamRequest,不會忽略任何屬性。
          
傳回 ima.StreamRequest:具有必要 VOD 屬性的 ima.StreamRequest 物件。
      
| 參數 | 類型 | 說明 | 
|---|---|---|
| contentSourceId | string | |
| videoId | string | |
| apiKey | string | 指派給傳回  | 
| networkCode | string | 提出串流要求的發布商聯播網代碼。網路代碼為選填項目,但建議填寫。 | 
Class ima.StreamType
欄位
定義播放器要求播放的串流類型。 前置廣告和隨選影片應從串流的開頭播放。
屬性
| 名稱 | 類型 | 說明 | 
|---|---|---|
| LIVE |  | 影片已上線。 | 
| VOD |  | 影片為隨選影片。 | 
類別 ima.WrapperInfo
欄位
方法
內含包裝函式的相關資訊。
屬性
| 名稱 | 類型 | 說明 | 
|---|---|---|
| adId |  | 廣告 ID,如果不明則為空字串。 | 
| adSystem |  | 廣告系統的宣告名稱,如果不明則為空字串。 | 
| creativeAdId |  | 廣告素材上的廣告 ID,如果不明則為空字串。 | 
| creativeId |  | 廣告素材的 ID,或未知時為空字串。 | 
| dealId |  | 交易 ID,或不明時為空字串。 |