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,或不明時為空字串。  |