本指南演示了如何使用 DAI API 请求包含可跳过广告的 VOD 视频流、根据 Google Ads 要求呈现“跳过”按钮,以及发送关联的跟踪事件。
前提条件
- 一个应用,用于实现 VOD 视频流的 DAI API 调用。如需了解详情,请参阅 DAI API VOD 视频流指南。
针对可跳过式广告发出请求
如需请求包含可跳过广告的 VOD 视频流,您必须在视频流请求中传递 dai-sas
参数。
API 端点
POST: /ondemand/v1/hls/content/{CMS_ID}/vid/{VIDEO_ID}/stream
Host: dai.google.com
Content-Type: application/x-www-form-urlencoded
路径参数
{CMS_ID} |
视频流的 CMS ID。 |
{VIDEO_ID} |
视频流的视频 ID。 |
正文参数
dai-sas |
设置 dai-sas=1 可启用可跳过的广告。
|
示例请求 (c网址)
对于 HLS 视频流请求:
curl -X POST \
-d 'dai-sas=1' \
-H 'Content-Type: application/x-www-form-urlencoded' \
https://dai.google.com/ondemand/v1/hls/content/{CMS_ID}/vid/{VIDEO_ID}/stream
将网址中的 'dash'
替换为 DASH 流:
https://dai.google.com/ondemand/v1/dash/content/{CMS_ID}/vid/{VIDEO_ID}/stream
请使用以下格式在请求正文中包含多个数据流参数:
-d 'dai-sas=1&cust_params=key1%3dvalue1%26key2%3dvalue2' \
处理跳过广告的操作
如需处理跳过广告,请使用 Ad
结构体或 AdBreak
结构体中的信息,具体取决于您是跳过当前广告还是跳过整个广告插播时间点。获取 start
值并添加 duration
值,然后跳转至音频流中的该点。SkipMetadata
子消息还包含 offset
值,该值是可跳过广告之前以秒为单位的值。SkipMetadata
子消息仅包含在可跳过的广告上。
ad_breaks |
广告插播时间点列表。
|
示例响应
{
...
"ad_breaks":[
{
...
"start":0,
"duration":10,
"ads":[
{
...
"start":0,
"duration":10,
"skip_metadata":{
"offset": 5,
"tracking_url": "https://example_skip_url.com"
}
}
}
}
用户跳过广告后,对视频流响应中包含的跳过事件网址执行 ping 操作。
它包含在 SkipMetadata
子消息中。
“跳过”按钮要求
对于可跳过式广告,应按照以下设计要求呈现“跳过”按钮。如果不遵守这些要求,我们可能会限制在您的网站或应用中投放的 Google 广告。
倒计时器
在 VAST 中指定的 skipoffset
时间之前,广告不得处于可跳过状态。
在此不可跳过的时间段内,您必须向用户显示一条通知,告知他们可在 X 秒后跳过广告。通知必须翻译成用户的语言。
“跳过”按钮位置
对于从左到右书写的语言,请将“跳过”按钮放置在视频播放器的右下方。对于从右到左书写的语言,请将“跳过”按钮放置在视频播放器左下角。
“跳过”按钮大小
按钮和文字必须足够大,以便用户在舒适体验时清晰易读。
文字和图标
“跳过”按钮必须同时包含文字和图标。您可以使用“跳过下一个 Material”图标作为图标。
无障碍
用户应该能够使用键盘或遥控器导航到“跳过”按钮。倒计时结束后,应用应聚焦于跳过按钮。
国际化
建议将跳过的文本翻译成用户的语言。
广告连播
“跳过”按钮可用于跳过广告连播中的当前广告,或跳过整个广告连播。
“跳过广告”翻译
使用 skipAdTranslations.json
文件根据用户的语言区域翻译“跳过广告”文字。