东亚银行、岚图汽车带你解锁 AIGC 时代的数字化人才培养各赛道新模式! 了解详情
写点什么

专访 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:013080
用户头像
陈思 InfoQ编辑

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

关注

评论

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

【Vue2.x 源码学习】第四十一篇 - 组件部分 - 生成组件的真实节点

Brave

源码 vue2 8月日更

解决参数依赖,接口之间传递数据——apipost

Proud lion

大前端 后端 Postman 开发工具 接口文档

ShardingSphere 知识库更新 | 官方样例集助你快速上手

SphereEx

数据库 开源

手撸二叉树之二叉树的层平均值

HelloWorld杰少

数据结构与算法 8月日更

神策分析 iOS SDK 全埋点解析之启动与退出

神策技术社区

程序员 大前端 后端 代码 神策数据

SpringBoot 自动装配源码解析

Rubble

8月日更

NDK 编译代码(一)

Changing Lin

8月日更

手把手教你写 Gradle 插件 | 数据采集

神策技术社区

android 程序员 Gradle 神策数据

数字化为企业带来哪些价值?

boshi

数字化转型

是时候封装限制 UITextField、UITextView 的最大字符长度了

fuyoufang

swift iOS 知识体系 8月日更

架构训练营模块三作业

高铎

再谈安全架构《一》

I

读书笔记 方法论 安全架构 企业安全 安全建设

图解:为什么非公平锁的性能更高?

王磊

Java 8月日更

架构训练营模块二作业

高铎

架构实战营

BPM敏捷Activiti开发平台,工作流引擎springboot整合activiti

金陵老街

Java MySQL Vue springboot Activiti

微博评论高性能高可用架构设计

tjudream

高可用架构 微博评论 高性能计算架构 多级负载均衡 多级缓存

埋土灰

箭上有毒

8月日更

方法调用:一看就懂,一问就懵?

阿Q说代码

8月日更 虚方法 非虚方法 静态分派 动态分派

vue入门:element组件与动画使用

小鲍侃java

8月日更

【Flutter 专题】62 图解基本 Button 按钮小结 (二)

阿策小和尚

Flutter 小菜 0 基础学习 Flutter Android 小菜鸟 8月日更

想知道你未来宝宝长什么样吗?

华为云开发者联盟

modelarts 图像 图像生成 父母照片 照片

架构训练营模块四作业

高铎

架构实战营

字节跳动《实时音视频通讯技术》学习笔记之服务器端开发入门

Regan Yue

git 字节跳动 Go 语言 8月日更

Springboot+quartz源码探索

4ye

Java 后端 springboot quartz 8月日更

面试侃集合 | LinkedBlockingQueue篇

码农参上

队列 Queue 8月日更

【LeetCode】反转字符串 IIJava题解

Albert

算法 LeetCode 8月日更

DCS_FunTester分布式压测框架更新(三)

FunTester

分布式 性能测试 测试框架 测试开发 FunTester

Python对系统数据进行采集监控——psutil

Python研究者

8月日更

python接口测试unittest使用详解

与风逐梦

Python 软件测试 接口测试

Python代码阅读(第14篇):列表求并集

Felix

Python 编程 Code Programing 阅读代码

LeetCode题解:2. 两数相加,迭代,JavaScript,详细注释

Lee Chen

算法 大前端 LeetCode

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