可跳过式 VOD 视频流广告

本指南演示了如何使用 DAI API 请求包含可跳过广告的 VOD 视频流、根据 Google Ads 要求呈现“跳过”按钮,以及发送关联的跟踪事件。

前提条件

针对可跳过式广告发出请求

如需请求包含可跳过广告的 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 结构体中的信息,具体取决于您是跳过当前广告还是跳过整个广告插播时间点。获取起始值并添加时长值,然后跳转至音频流中的该时间点。SkipMetadata 子消息还包含 offset 值,该值是可跳过广告之前以秒为单位的值。SkipMetadata 子消息仅包含在可跳过的广告上。

ad_breaks 广告插播时间点列表。
start (number) 视频流中插播广告开始的位置(以秒为单位)。
duration (number) 广告插播时长(以秒为单位)。
ads (object(Ad)) 流中的广告列表。
start (number) 视频流中广告开始播放的位置(以秒为单位)。
duration (number) 广告的持续时间,以秒为单位。
skip_metadata (object(SkipMetadata)) 可跳过广告的可选元数据。如果设置了此字段,则表示广告是可跳过的,并且包含有关如何处理跳过界面和跟踪事件的说明。
offset (number) 偏移量表示播放器应等待广告播放多长时间(以秒为单位)才能显示“跳过”按钮。如果 VAST 中未提供,则省略。
tracking_url (字符串)一个网址,应在发生跳过事件时对其执行 ping 操作。

示例响应

{
  ...
  "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 文件根据用户的语言区域翻译“跳过广告”文字。