本页提供了与浏览器、视频格式和平台的 IMA DAI 支持及兼容性相关的一般信息。
支持的视频格式和浏览器
HTML5 仍是一项不断发展的新标准。因此,不同浏览器对各种功能的支持也不同,而且并非所有主流浏览器都支持单一的默认视频格式。大多数浏览器使用三种主要的视频格式是 H.264、HLS 和 Dash。
VAST 事件兼容性
本部分列出了根据 VAST 响应中返回的信息自动向服务器报告的 VAST 事件。
完全支持
complete
、creativeView
、firstQuartile
、impression
、midpoint
、pause
、resume
、rewind
(在快退时触发)、start
、thirdQuartile
。
部分支持
click
系统仅针对视频广告发送
Click
事件。在 Android、iOS 或桌面设备上的原生全屏播放器上无法捕获点击,但在视频关闭时,仍可通过页内点击跟踪元素捕获点击。但是,如果视频元素在 iPad 上使用原生控件,则无法捕获点击。fullscreen
IMA 支持模拟全屏模式,在该模式中,视频会占据整个浏览器窗口。 当视频的
offsetWidth
和offsetHeight
不小于文档正文的大小时,IMA 会将该视频视为全屏模式。 所有浏览器均支持此模式。在 iPhone 及 3.0 之前版本的 Android 平台上,视频始终在全屏模式下播放。
mute
、unmute
iOS 和 Android 只有对音量的原生控制。因此,IMA 无法确定音量或静音状态,SDK 也无法收到有关更改的通知。下面列出了支持和不支持
mute
和unmute
的浏览器版本:- 支持:Firefox 3.5+、Chrome 8+、Safari 4+
- 不支持:iOS、Android
有关 VAST 广告投放的更多详细信息,请参阅 IAB 指南。
重新观看广告插播时间点时的广告事件
出于以下原因,IMA 不会在用户重新观看广告时触发广告事件:
- 事件网址只能触发一次,否则可能会被视为垃圾内容行为。
- 这可让用户在已经看过的广告插播时间点处四处寻找,从而打造更好的跳转体验。
重新观看广告插播时间点时仅会触发以下事件:
AD_PERIOD_STARTED
AD_PERIOD_ENDED
支持的视频播放器平台
以下平台支持 Google IMA SDK:
平台 | 版本 |
---|---|
HTML5 | 桌面设备:Chrome、Firefox、Safari、Edge、Opera 移动版:Chrome/Android 浏览器(适用于手机和平板电脑的 Android 设备)、Safari 和 Chrome (iOS) |
iOS | iOS 10.0 及更高版本 |
Android | Android 4.4 及以上版本 |
Google Cast | 所有投放设备 |
tvOS | tvOS 14 及更高版本 |
Roku | 仍在接收 Roku 软件更新的所有设备 |
视频流格式支持
IMA 在其所有 SDK 中同时支持 HLS 和 DASH。有关特定 SDK 平台的支持情况,请参阅此表。为了正确播放流,您的视频播放器需要支持所使用的流类型。
IMA SDK 平台 | HLS | DASH |
---|---|---|
HTML5 | ||
iOS | ||
Android | ||
Google Cast | ||
tvOS | ||
Roku |
视频功能和 SDK 版本
如需详细了解以下功能,请参阅视频广告概览。
IAB 视频套件 | 支持 |
---|---|
VAST 4 | 1 |
VAST 3 | 2 |
VAST 2 | |
VPAID 2 | |
VMAP 1.0.1 | 3 |
Ad Manager 视频广告功能 | 支持 |
线性广告 | |
非线性广告(重叠式广告) | |
随播广告 | 4 |
VAST 3 备用随播广告资源 | |
Active View 可见度 | |
VAST 重定向 | |
包含展示请求的随播补余广告 | |
Google 发布商代码 (GPT) 兼容性 | |
内容认知度 | |
广告规则 | |
广告连播 | |
导视广告 | |
生成多事件跟踪 (MET) 报告 | |
可跳过的广告(预订型 / 非 TrueView 广告) | 5 |
AdSense 视频广告功能 7 | 支持 |
TrueView InStream | 6 |
插播可选广告 | |
标准插播广告 | |
全幅 | |
随播广告 | 4 |
随播补余广告 | |
叠加层 | |
Ad Manager Ad Exchange 功能 | 支持 |
TrueView InStream | 6 |
插播可选广告 | |
标准插播广告 | |
全幅 | |
随播广告 | 4 |
随播补余广告 | |
叠加层 | |
Active View 可见度 | |
为什么显示该广告? | 8 |
1 在 Google Ad Manager 支持的 VAST 4 功能中,IMA 支持以下功能:
- VAST 4.2
- 支持安全交互式媒体接口定义 (SIMID)
- 允许使用多个
UniversalAdID
节点
- VAST 4.0
- AdID
- Mezzanine 文件
- 新的 VAST 错误代码
- 新的 VAST 宏
AdVerifications
支持
2 目前尚不支持以下 VAST 3.0 功能:
- 副屏模式:
adSlotId
- 随播广告素材投放选项
- 图标
3 目前尚不支持以下 VMAP 功能:
- VMAP 专属跟踪事件
- VMAP 专用错误代码
- 重叠式广告
- 除 hh:mm:ss 或“start”和“end”以外的时间偏移
- 显示
breakType
属性 repeatAfter
个属性
4 仅支持图片随播广告素材。图片随播广告素材需要采用自定义实现方式来填充广告。tvOS 不支持随播广告。
5 只有适用于 HTML5、iOS、tvOS、Roku 和 Android(包括 Android TV)的 IMA DAI SDK 才支持传统的可跳过广告。使用 Cast SDK 时,您必须使用 StreamRequest.senderCanSkip
声明跳过功能,以支持 tradditional 可跳过的广告。
6 只有适用于 HTML5、iOS 和 Android(包括 Android TV)的 IMA DAI SDK 才支持 TrueView 可跳过广告。
7 Cast SDK 不支持 AdSense 功能。
8 为什么显示该广告?要求在创建 StreamManager
时传递 adUiElement
参数。
Cast SDK 不支持为什么显示该广告?。
JavaScript 框架注意事项
将 JavaScript 框架(例如 React 或 AngularJS)与 IMA HTML5 SDK 结合使用时,有一些注意事项。这些框架通常会移动 DOM 的元素,这可能会破坏 IMA SDK,因为 SDK 会认为 DOM 在启动时是静态的。IMA SDK 支持 JavaScript 框架,只要 SDK 是在该框架完成 DOM 元素移动之后启动的即可。具体而言,构建 StreamManager
时作为 adUiElement
参数传递的 HTML5 元素在实例化后就不应再移动了。
Apple AirPlay 支持
IMA SDK 不支持 Apple AirPlay。在检测到 AirPlay 时停用 AirPlay 或停用广告请求。