硬核干货——《中小企业 AI 实战指南》免费下载! 了解详情
写点什么

专访 B 站高级开发工程师李超然:揭秘互动视频背后的故事

  • 2019-11-04
  • 本文字数:2805 字

    阅读完需:约 9 分钟

专访B站高级开发工程师李超然:揭秘互动视频背后的故事

2018 年 12 月 28 日,Netflix 推出《黑镜·潘达斯奈基》,电影片长为 90 分钟,交互总时长达到 312 分钟,五个主线结局上百种支线选择,虽然口碑两极分化,但服务器流量暴涨,拿奖拿到手软,被称为是“互动视频鼻祖级别的创新”。

作为一家以 UGC 内容为主的视频平台和文化社区,B 站(哔哩哔哩)也在互动视频领域做出了一些尝试。在2019 QCon上海站的现场,InfoQ 有幸采访到了 B 站高级开发工程师,同时也是 B 站互动视频的负责人李超然先生,并对互动视频进行全方位揭秘。


InfoQ:首先还是请您简单聊聊所谓“互动视频”的概念,一个完整的互动视频需要包含哪些元素?


李超然:我觉得,广义地说,但凡用户输入(比如点按按钮)会影响视频走向,就可以算是互动视频。所以,这会是一个很宽泛的概念,我们也是在项目推进的过程中,不断更新对互动视频这个概念的理解的。


起初,我们以为互动视频会类似《黑镜》,通过一个一个的选项按钮,把视频片段组织起来。这样一来,观看者可以按照自己的意愿,选择不同的选项,从而影响剧情走向,最终加强观看者的代入感。



互动视频《黑镜》片段


功能上线一段时间后,我们发现创作者的想象力,还是大大超出了我们的预期。比如,很多用户利用互动视频的隐藏变量功能,去创作测试类的视频,出现了很多类似性格测试、恋爱测试的投稿,甚至还有的用户利用互动视频的随机功能,创作了抽卡模拟器,用户可以在互动视频上体验随机抽卡的乐趣,就像很多手机游戏上的抽卡过程一样。


互动视频需要有什么必要的元素,这个问题可能不太好回答,互动视频品类真的太多了。当然了,接受和处理用户输入,一定是必要的,否则就不是互动视频了。但具体是怎么接受和处理用户输入,其中的交互形式以及逻辑机制,可能是多种多样的。具体交互形式可以是按钮,可以是滑杆,甚至是用户的摄像头。具体的逻辑机制,就更多种多样了,这一点可以参考传统游戏。



B 站部分互动视频


事实上,我们不太希望,抽象太多的规则出来,也不打算直接给出规则,互动视频应该包含哪些“元素”才算是“完整”。因为用户才是最有创造力的,会给我们带来无限惊喜。


InfoQ:互动视频在 Netflix 上取得成功之后,国内也以最快的速度引入了进来,在您看来互动视频对用户的吸引力主要体现在哪些方面?


李超然:对于观看者来说,视频画面里的视觉元素可以点击,点击之后还能影响剧情发展,这种新奇的体验本身就是很吸引人的。抛开新鲜感,互动视频本身淡化了视频和游戏的边界,观看者能够在视频中获得之前玩游戏才能获得的乐趣,这也很吸引人。再者,就像我刚才提到的,互动视频品类非常多,有的人把它当成可以代入主角的电影,有的人把它当性格测试,有的人把它当 RPG 游戏,这种内容的多样性和创意也同样吸引我们的用户。


另外,除了吸引观看者,更让我们感到高兴的是,互动视频对于创作者的吸引力同样很大。B 站的生态是很独特的,这是一家重 UGC 的视频平台,大量视频内容是用户自制的。像《黑镜》这类的片子,是由专业机构生产投入大量财力人力物力制作,对于我们大多用户来说,门槛太高。我们用户更多的是希望通过创新视频形式来产出优质内容,互动视频给他们提供了非常多的创作可能。


InfoQ:有观点认为,互动视频的核心主要在于剧本,并没有太多的技术含量,所以无法认同这是一项“黑科技”。对此您是如何看待的?


李超然:用户眼中的“黑科技”可能和技术人员眼中的“黑科技”不太一样。用户眼中的黑科技,更多的是一些超出用户原本认知的创意,而不是其中有多少硬核的技术突破。用户现在可以在视频里,答题完成性格测试,甚至体验推理游戏,也可以称之为”黑科技“。


回到技术人员的视角,互动视频带来的技术挑战,也是非常大的。我一直觉得,软件开发的根本困难,在于对复杂逻辑的整理和抽象。如我在前面的回答里提到的,互动视频本身概念是模糊的,用户的想象力总是超出我们的预期,对于一个技术人员,面对一个如此不清晰的需求,想要在工程层面进行抽象,挑战真的很大。


我们的整体技术方案,需要具有非常强的拓展性,能够快速响应创作者的新诉求,甚至需要让用户不更新我们的 App 就能够体验新的特性;数据结构的抽象,需要具有非常强的通用性,能够适应各种类型的互动视频,尽可能不限制创作者的想象力;技术栈的选择需要跨平台,保证多端一致的体验。整个互动视频,系统演化到最后,几乎变成了一个 2D 游戏引擎。


InfoQ:经过三个月的尝试,互动视频在 B 站内取得的效果如何?是否可以透露一些数据来进行说明。


李超然:目前互动视频的频道内,有超过 3 亿次的视频播放量, 1 万多个用户自制稿件,数据表现还是比较不错的。不少创作者,因为制作互动视频,得到观看者的好评,疯狂涨粉,也是让我们非常高兴的。


InfoQ:在您看来,目前互动视频这样的娱乐方式还存在哪些比较明显的短板?是否有比较合适的解决方案?


李超然:制作成本太高是一个比较大的短板。对创作者来讲,相比于制作一个普通视频,制作同样长度的互动视频的投入,往往要翻好几倍,但回报有多少却是个未知数。针对这个问题,我们可能会对一些常见的模式进行抽象,使其模板化,从而来降低创作成本。


另一方面,互动视频目前还是以视频作为载体,视频本身是线性的,具有非常强的时间轴概念,这某种程度上这会非常限制创作。我们需要很好的产品逻辑抽象,并且提供非常强大的创作工具,来打破这种限制,需要我们长时间一步一步地探索。


InfoQ:随着 5G 时代的到来,人们对于“5G+”也产生了各种期待,在您看来 5G、人工智能、VR/AR 等技术对于互动视频可以带来什么样的改变或者突破?


李超然:5G 带来的最直接的变化就是“高带宽、低延迟”。对于互动视频,高带宽,让我们能在运行时下载更多的视频外资源;低延迟,可以让以前很多为了低延迟而在客户端进行的计算,迁移到服务端了。这对增强用户体验,拓展功能,提供更多可能性,会有一些帮助。


至于 VR/AR 能在互动视频领域起多少作用,我们团队内部也会有讨论,但目前还没有太多可落地思路。可能之后我们会考虑通过 VR/AR 等技术,增强用户的观感,或者拓展用户的输入方式。


InfoQ:最后,能否请您简单谈一谈有关 B 站互动视频的未来发展规划,以及您本人对于互动视频这一领域的未来有哪些期待?


李超然:目前重点还是在内容生态的运营上,我个人最期待的,肯定是看用户还能创作出哪些新玩法。有很多用户给我们反馈,说很感谢我们做这样一个功能,让他把自己以前那些脑洞都做出来。看到用户做出一些超出我们预期的投稿,真的很令人兴奋。非常希望互动视频,能够为 B 站,甚至整个行业的内容生产,注入新的活力,带来更多的可能。


采访嘉宾简介


李超然,哔哩哔哩高级开发工程师,毕业于复旦大学物理系,现就职于哔哩哔哩,目前负责移动端 App 中的播放器与弹幕内核,主导移动端弹幕渲染引擎和互动视频的开发工作。工作内容涵盖音视频播放,画面与弹幕跨端渲染,以及相关的性能调优工作。个人对数学物理和计算机图形学有浓厚的兴趣,业余游戏开发者。


2019-11-04 14:013490
用户头像
陈思 InfoQ编辑

发布了 576 篇内容, 共 301.7 次阅读, 收获喜欢 1306 次。

关注

评论

发布
暂无评论
发现更多内容

Android进阶(十二)Fragment与Activity讲解

No Silver Bullet

android Activity Fragment 8月月更

五分钟搞定YAML

俞凡

云原生 yaml

计算机网络知识点全面总结(一篇全懂)

C++后台开发

网络编程 计算机网络 网络协议 底层原理 C/C++开发

使用 JavaScript Promise 读取 Github 某用户的数据

汪子熙

JavaScript Promise 异步编程 Javascript框架 8月月更

SpringCloud OpenFeign 请求重试

程序知音

Java spring 程序员 微服务 SpringCloud

3-6月面经总结,200多页真题笔记和详解(含核心考点及6家大厂)

程序猿阿宇

Java java程序员 大厂面试 秋招 大厂面经

JSON 基本使用

兮动人

json

PyCharm 2022.2 发布了,支持最新 Python 3.11 和 PyScript 框架!

Python猫

应用系统日志打印规范实践之道

陈俊

日志 规范

TE数字化共创之路 | 这场旅程,从数字化共创平台开始

明道云

超新概念出炉,JDK17的封闭类使用解析

知识浅谈

8月月更

Java技术专家成长路线总结(思维导图)

程序猿阿宇

Java java程序员 大厂面试 秋招 大厂面经

开源一夏|OpenHarmony视频播放器

坚果

开源 OpenHarmony 8月月更

STM32入门开发 编写DS18B20温度传感器驱动(读取环境温度、支持级联)

DS小龙哥

8月月更

MySQL 原理与优化:意向锁,IS,IX

老崔说架构

Go-Excelize API源码阅读(九)——SetSheetBackground(sheet, picture string)

Regan Yue

Go 开源 源码解读 8月日更 8月月更

【LeetCode】检查数组是否存在有效划分Java题解

Albert

LeetCode 8月月更

95后跳槽阿里网晒工资条:多亏面试前补了这个,真香

程序猿阿宇

Java java程序员 大厂面试 大厂面经 内推

大逆不道,从天界偷下来的算法修仙秘籍竟然传到你手上~~(结尾有彩蛋)

武师叔

数据结构与算法 有趣的技术知识 复杂度分析 签约计划第三季 8月月更

史上最全的Java并发系列之Java中的线程池

自然

线程池 并发 8月月更

【云原生】Spring Cloud Alibaba 之 Feign 远程调用 实战

Bug终结者

分布式 微服务 云原生 8月月更

React Server Components 介绍 亮点

HullQin

CSS JavaScript html 前端 8月月更

美团二面:如何解决 bin log 与 redo log 的一致性问题

飞天小牛肉

签约计划第三季

千万级学生管理系统的考试试卷存储方案

张立奎

废除“网络君主制”,认识 Usenet ~

掘金安东尼

前端 网络 8月月更

如何正确理解Java领域中的多线程模型,主要用来解决什么问题?

PivotalCloud

Kubernetes宕机切换源码分析

Jason黄

源码分析 kubelet Kubernetes 集群 宕机

C++运算符重载(五)之关系运算符重载

CtrlX

c c++ C# 重载 8月月更

知乎疯传,吹爆阿里P7《K8s+Jenkins》的技术手册

程序知音

Java 编程 程序员 后端技术 #k8s

史上最全的Java并发系列之Java中的锁的使用和实现介绍(二)

自然

多线程 并发 8月月更

体验家辛济云:CEM不是MarTech,不仅要“从0到1”,更要规避“从1到0”

B Impact

专访B站高级开发工程师李超然:揭秘互动视频背后的故事_QCon_陈思_InfoQ精选文章