类 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.AdBreakInfo:
      
类 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 |  | 在广告播放头到达第三个四分位时触发。 | 
类 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:
      
类 ima.Companion
字段
方法
包含广告随播广告的相关信息。
属性
| 名称 | 类型 | 说明 | 
|---|---|---|
| adSlotId |  | 随播广告的广告位 ID。如果不可用,则为空。 | 
| apiFramework |  | 执行相应广告所需的 API,如果不可用,则为“无效”。 | 
| companionClickThrough |  | 随播广告的点击后到达网址。 | 
| creativeType |  | 表示广告素材类型,通常为 MIME 类型。 | 
| height |  | 随播广告的高度(以像素为单位)。如果不可用,则为 0。 | 
| trackingEvents |  | 跟踪事件的映射,其中键是事件,值是发生相应事件时要 ping 的网址列表。 | 
| url |  | 相应随播广告素材的静态资源网址。 | 
| width |  | 随播广告的宽度(以像素为单位)。如果不可用,则为 0。 | 
        createCompanion()
      
      
          
返回值 ima.Companion:
      
Class ima.CuePoint
字段
方法
包含有关 Cue 点的信息。
属性
| 名称 | 类型 | 说明 | 
|---|---|---|
| end |  | 广告插播点的结束时间(以秒为单位)。这对应于广告插播时间点。 | 
| hasPlayed |  | 一个布尔值,用于指示相应 Cue 点是否已播放。 | 
| 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()
      
      
          
返回值 ima.StreamInfo:
      
Class ima.StreamManager
方法
用于管理视频流播放的对象。
        addEventListener(event, callback)
      
      
        为指定事件添加监听器。如需查看支持的事件,请参阅 AdEvents 常量。
      
| 参数 | 类型 | 说明 | 
|---|---|---|
| event | string | |
| callback | function | 
        createStreamManager(streamRequest, streamInitResponse)
      
      
          
返回值 ima.StreamManager:
      
| 参数 | 类型 | 说明 | 
|---|---|---|
| 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:包含 start、end 和 hasPlayed 的对象。如果没有可用的提示点,则返回 Invalid。
      
| 参数 | 类型 | 说明 | 
|---|---|---|
| time | Float | 查找时间, | 
        getStreamTime(contentTime)
      
      
        根据 VOD 的内容时间获取直播时间(以毫秒为单位)。
如需了解详情,请参阅常见问题解答。
          
返回 Integer:与指定内容时间对应的流时间。
      
| 参数 | 类型 | 说明 | 
|---|---|---|
| contentTime | Integer | 内容的时间。 | 
        loadThirdPartyStream(streamManifest, streamSubtitle)
      
      
        加载广告元数据,并使用提供的 streamManifestUrl 和 streamSubtitle 数据调用 loadUrl 函数。此函数仅在视频流请求类型为 ima.StreamType.POD_VOD 时有效。
      
| 参数 | 类型 | 说明 | 
|---|---|---|
| streamManifest | string | 已拼接广告的流清单网址。 | 
| streamSubtitle | ifArray | 与视频流关联的字幕,如果没有则为  | 
        onMessage(msg)
      
      
        处理来自视频对象的所有消息。
必须针对在 roMessagePort 上收到的每条消息进行调用。
      
| 参数 | 类型 | 说明 | 
|---|---|---|
| msg | object | 来自 roVideo 端口的消息。 | 
        replaceAdTagParameters(adTagParameters)
      
      
        替换即将针对直播视频流发出的广告请求使用的所有广告代码参数。请注意,此调用对于 VOD 流是空操作。
      
| 参数 | 类型 | 说明 | 
|---|---|---|
| adTagParameters | string | 新的广告代码参数。 | 
        start()
      
      
        开始播放数据流。
      
Class ima.StreamRequest
字段
方法
用于指定视频流请求的属性。
属性
| 名称 | 类型 | 说明 | 
|---|---|---|
| adTagParameters |  | 可选。您可以在视频流请求中替换一组有限的广告代码参数。 如需了解详情,请参阅为视频流提供定位参数。您还可以使用 dai-ot 和 dai-ov 参数来设置视频流变体偏好设置。如需了解详情,请参阅替换视频流变体参数。 | 
| adUiNode |  | 展示广告界面的场景图节点。IMA 会在广告播放期间将“为什么显示此广告”和“跳过”按钮等元素放置在此元素上。元素必须覆盖整个视频元素。 | 
| apiKey |  | 可选。这些密钥可用于对视频流请求进行身份验证。 必须在 DFP 界面中设置 DAI 身份验证密钥。 | 
| 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 受众群体发布商提供的标识符。 | 
| streamActivityMonitorId |  | 用于通过视频流活动监控工具调试视频流的 ID。 此参数用于提供一种便捷的方式,让发布商能够在直播活动监控工具中找到直播日志。 | 
| videoId |  | 对于点播流是必需的。 视频内容来源的标识符。 | 
| videoObject |  | 负责在客户端应用上播放视频的视频对象(例如 Video roSGNode)。系统将轮询此对象以获取各种数据,从而正确安排实时 HLS ID3 事件的时间。 | 
| videoStitcherSessionOptions |  | 会话选项用于为 VideoStitcher streamRequests 设置视频拼接器专用参数。 | 
        createLiveStreamRequest(assetKey, apiKey, networkCode)
      
      
        初始化实时 StreamRequest 的必需属性。使用此 API 会导致忽略任何其他特定于 StreamType 的属性。如果任何必需参数为空字符串,系统会记录错误,并且 API 会返回常规 StreamRequest,而不会忽略任何属性。
          
返回具有必需的 Live 属性的 ima.StreamRequest: 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)
      
      
        初始化 ima.StreamRequest 的必需属性,以便在使用 DAI Pod 服务和第三方视频拼接器时注册 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)
      
      
        初始化视频拼接器实时 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)
      
      
        初始化视频拼接器 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)
      
      
        使用从云视频拼接器创建的 vodConfigId 初始化视频拼接器 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,而不会忽略任何属性。
          
返回包含必需 VOD 属性的 ima.StreamRequest ima.StreamRequest 对象。
      
| 参数 | 类型 | 说明 | 
|---|---|---|
| contentSourceId | string | |
| videoId | string | |
| apiKey | string | 分配给返回的  | 
| networkCode | string | 发出视频流请求的发布商的广告资源网代码。您可以选择是否添加广告资源网代码,但我们建议您添加。 | 
类 ima.StreamType
字段
定义播放器要播放的流的类型。 前贴片广告和 VOD 应从视频流的开头开始播放。
属性
| 名称 | 类型 | 说明 | 
|---|---|---|
| LIVE |  | 视频已发布。 | 
| VOD |  | 视频可供点播观看。 | 
类 ima.WrapperInfo
字段
方法
包含有关封装容器的信息。
属性
| 名称 | 类型 | 说明 | 
|---|---|---|
| adId |  | 广告的 ID;如果未知,则为空字符串。 | 
| adSystem |  | 广告系统的声明名称,如果未知,则为空字符串。 | 
| creativeAdId |  | 广告素材上的广告 ID,如果未知,则为空字符串。 | 
| creativeId |  | 相应广告素材的 ID;如果未知,则为空字符串。 | 
| dealId |  | 交易 ID;如果未知,则为空字符串。 | 
        createWrapperInfo()
      
      
          
返回值 ima.WrapperInfo: