谷歌:你的视频可以同样满载“精彩时刻”
极诣在不久前介绍了在自有网站部署视频的要点。HTML5为我们提供了许多方便,这更符合移动时代的要求。
7月,谷歌终于兑现了Google I/O上披露的视频高光时刻自动定位的功能,这意味着发布者可以仅仅通过告诉谷歌如何在自己的视频中实现定位的方式来让谷歌自动理解视频内容从而节选出高光片段展示在搜索结果页面上。
我们先来看看这样的视频结果长什么样。
在过去,除非是在YouTube上的视频,你必须通过结构化数据才能标注出这些Key Moments。具体方法是把视频中的每个重要时段定义成clip。下面是谷歌官方的一个使用Clip的例子,用的是json-ld的实现方法。
<html>
<head>
<title>Cat jumps over the fence</title>
<script type="application/ld+json">
{
"@context": "http://schema.org/",
"@type": "VideoObject",
"name": "Cat video",
"duration": "P10M",
"uploadDate": "2019-07-19",
"thumbnailUrl": "http://www.example.com/cat.jpg",
"description": "Watch this cat jump over a fence!",
"contentUrl": "http://www.example.com/cat_video_full.mp4",
"regionsAllowed": "US",
"hasPart": [{
"@type": "Clip",
"name": "Cat jumps",
"startOffset": 30,
"endOffset": 45,
"url": "http://www.example.com/example?t=30"
},
{
"@type": "Clip",
"name": "Cat misses the fence",
"startOffset": 111,
"endOffset": 150,
"url": "http://www.example.com/example?t=111"
}]
}
</script>
</head>
<body>
</body>
</html>
在上面这个例子中,粉色部分定义了两个视频片段(clip)。第一个始于第30秒,终于45秒;第二个始于第111秒,终于150秒。它们分别被取名并附上了直达URL。这就是搜索引擎能在前端展现该样式的秘密。
那么问题来了,如果有着大量的视频,需要人工去为这些视频打标签的工作量十分巨大,此时使用Clip的效率就不会很高。于是,在人工智能的时代,谷歌为你提供了自动产生高光时刻的途径。
正是因为这个原因,现在你只要告诉谷歌如何快速空降到视频的第几秒即可。具体的做法是使用potentialAction属性的SeekToAction类型。
{
"@context": "https://schema.org",
"@type": "VideoObject",
"potentialAction" : {
"@type": "SeekToAction",
"target": "https://video.example.com/watch/videoID?t={seek_to_second_number}",
"startOffset-input": "required name=seek_to_second_number"
}
)
这个SeekToAction类型的potentialAction属性只需要两个属性target和startOffset-input。第二个不需要改,所以只有target我们需要赋值。
target的值需要把视频页面的URL模板填进去,还需要包含跳转到某一秒的参数。上面的例子就用了t作为参数。因此这里有一个前提,那就是你放视频的页面必须要有一个参数能够控制开始播放时的位置。
我们上次说了如何用HTML5播放器来控制开始播放的位置。实际上只要我们稍加利用这个t参数即可。既可以用后端直接返回预定义位置的视频代码,也可以用JavaScript从前端获取t的值,更改开始播放位置。
<source src="maxket.webm#t=5,20" type="video/webm">
是不是炒鸡简单?这里我们再强调一下实现这一效果的前提:
- 你的视频文件对搜索引擎未禁封。
- 你加载视频的网页能够通过参数来控制播放开始位置。
- 你放心谷歌用人工智能来自动给你的视频内容片段打标签。
最后,因为这段代码的自定义程度并不复杂,你仍然可以使用GTM来批量对大量页面添加结构化数据。相关操作请参阅极诣旧文《巧用GTM实现结构化数据SEO》