当前位置: 首页 > news >正文

云端一体助力体验升级和业务创新

随着音视频和AI技术的发展,在满足用户基础体验和需求情况下,更极致的用户体验和更丰富的互动玩法,成为各个平台打造核心竞争力的关键。LiveVideoStackCon 2022 北京站邀请到火山引擎视频云华南区业务负责人——张培垒,基于节跳动音视频业务实践沉淀,介绍音视频云端一体解决方案如何助力用户体验升级和业务创新。

文/张培垒

编辑/LiveVideoStack

大家好,我是火山引擎视频云商业化方向华南区的业务负责人,张培垒。

火山引擎视频云去年发布了音视频云端一体解决方案,来帮助音视频企业一站式构建抖音同款的音视频能力。

传统的视频观看调优场景中,遇到卡顿黑屏等问题,进行线路调整时通常比较粗粒度,比如只能针对云端CDN线路、特定片区或者运营商的线路调整,精度很难把控。我们在集团内部经过长期的经验积累,形成了一整套的云端一体化的联动、协同的体系,它由终端SDK,即埋点技术、策略调度中心、训练引擎,可以针对用户行为进行打标,最终结合A/B实验通道实现。

-01-

行业趋势与挑战

接下来进一步阐述,云端一体化在商业化场景中的实践和具体的优势。

首先,为什么要做云端一体化?

8f5b12815130878b00f6fde28c62f2bd.png

音视频行业随着移动互联网传输的发展,从早期的播放顺畅发展到现在更多的追求极致体验,主要体现在四个方面:

  • 观看顺畅的追求,短视频和直播场景下越来越追求首帧的加载,feed流切换的平滑。我们此前在短视频实践的分享中,100ms以内用户是没什么感知的,到210ms会出现一个拐点,一旦超过300ms用户离开速度会快速增加。

  • 清晰度上的追求,世界杯中抖音也是大面积尝试了超分,并且取得了不错的市场反馈,一旦尝试了超分的视觉体验后,再去看普通的1080P,就会觉得非常寡淡乏味。

  • 互动实时性,在抖音日常进行的赛事直播和互动直播中,我们都大面积的运用了低延时直播和RTC,低延时直播保障了观看的及时性,RTC的互动性,保障了互娱直播间的乐趣。

  • 沉浸,包括声音和视觉两方面,目前各家都在推出自己的VR/AR方案。我们也在PICO中不断优化升级,在RTC场景,如在游戏中感知队友的方位,运用空间音频技术进行定位。

    490d1f57d4684203755c3f536cd7549e.png

除了行业的方向,不同的业务的发展,也会经历不同的阶段。

针对初创期的业务,人力投入和买量投放是关键阶段,开发人员在此阶段通常面临着多模块之间进行拼凑的难题,比如同时需要RTC、美颜、剪辑,多模块对接时的SDK组合非常复杂,对接周期以月为单位。

一旦业务稳定后,这里的主要目标就会变成体验的优化,抖音内部面临秒开、首帧优化等体验优化的挑战,如何平衡业务体验和业务增长的关系也是重要的课题。

业务发展的成熟期,目标会更多转向降本增效,在降低内部的运营成本,增加日常维护和运维效率的基础上,同时探索新的业务方向。

-02-

云端一体业务实践

为了适配行业和业务的发展发向,如何借助云端一体化构建自己的业务呢?

f39431b21674bac152d7c34cff691355.png

图中是整个云端一体化的阶段:

针对初创期的业务,也就是从0-1构建业务的阶段,提供了一站式的全链路方案,覆盖内容的生产、服务、消费。

  • 生产端,我们提供基于短视频的拍摄剪辑制作,即抖音剪同款的能力。基于直播的实时音视频采集、推流,以及视频的二次渲染特效,音频的特性能力。最终采集到的音视频被传输到云端

  • 服务端,云端的服务能力分为三个场景:

    • RTC场景,将音视频合流录制后进入房间,大大降低用户的使用成本;在一些线教育客户中,将RTC房间的流转推到直播,我们提供服务端的转推场景。针对链路的优化,我们进行了弱网的优化,包括UDP防丢包策略。

    • 视频直播场景,可以做到云端的时移、转码、录制,分发一体化

    • 点播场景,具备媒资的管理、处理、分发、审核的能力。

  • 消费端,借助抖音集团生态下的播放器能力,嵌入SDK后即可具备秒开,零首帧,超分,265等能力。

    f3974352ead0e5bf903e6e8b5c92033c.png

除了业务模块的能力以外,结合C端用户的业务场景,提供了丰富的demo,如互动直播、电商直播和远程会议。目的是便于业务方快速集成,开发人员可以基于demo的源码快速构建业务。源码中的api覆盖了几乎所有常见的终端能力,最常见的是RTC和美颜的打通,直接调用美颜的api进行视频采集和二次渲染,极大提升了采集、渲染、传输联动式的一体化效率。整个demo里面把多端的能力融合,包体容量也可以根据需求做最小化的裁剪,帮助业务快速上线、验证。

70a2d92b3242c44c6bbebac66aefee86.png

在业务快速上线后,体验的优化会成为这一阶段的重要目标。此时,需要具备QoS/QoE体系,在我们的整个云+端体系中,对应有完整的数据体系,让业务开发者省去了数据上报、采集、治理的流程。可以直接借助全面的QOS指标来进行A/B实验,比如在点播场景的优化中,上传协议分为A/B采样组,A组使用QUIC,B组使用TCP,端侧实时观测首帧时间以及播放时长的指标情况,最终根据A/B实验结果进行快速策略调整。

同样,在观看直播分辨率的过程中,根据用户观看分辨率的集中性,来针对性修改转码的模版,什么样的终端适配什么样的分辨率等等。这里做的大量的QoS以及QoE的验证,都会沉淀为我们云端的服务策略,最终的体现就是,火山引擎视频云播放的策略、转码策略、存储沉降的策略都会非常适配业务的实际需求场景。

96d90013737c499ebb697f4ede2ad499.png

经过长时间大范围的A/B测试,我们积累了非常丰富的视频体验数据:

  • 直播延迟vs播放时长:直播延迟每增加4s,终端用户的播放时长会下降1个百分点;

  • 画质vs播放时长:开启720P超分后,时长增加2个百分点;

  • 编码优化vs播放时长:在采集、转码、解码全链路使用自研的BVC算法后,播放时长增加了5个百分点;

  • 卡顿率vs播放时长:降低卡顿率带来的播放时长的正向增长;

  • 首帧vs播放时长:短视频的feed流首帧时间在超过210ms以后,用户的留存会快速下降;

  • 成本vs收益:视频渲染,成本增加的同时带来业务增长。

5787ccf5a2e2f76bb7262e81a4cfb9da.png

业务发展到成熟阶段,降本增效就会成为主题,我们自己和很多外部客户在这一阶段会经常抱怨,当终端侧用户不断反馈卡顿、黑屏的问题时,我们很难在云端协助排查,最多提供客户端IP和运营商地址信息,很难准确定位到出现问题的播放阶段。

采用云端一体化方案后,很大程度解决了这一问题,将质量平台与终端和告警系统打通,精细化的追踪到生产端、服务端、消费端的指标数据。可以基于用户请求的session粒度追踪到问题存在的阶段,并采取针对性的策略调整,同时解决了质量优化和运维投入的矛盾,提高了问题定位的效率。

下面是几个具体的case:

4b8a6e683169ec73803e0bc74fc98587.png

第一个是在问题排障过程中的智能归因,根据终端播放失败的趋势对比,归因分析到是单用户问题还是聚集性问题,结合云端的线路错误码做进一步的趋势预判,错误的运营商,地区分布等,对比没有云端协调一体化的手段下,极大降低了排障时间,实现分钟级定位。

3e099da14bcd5f4b900892fd23773a52.png

8aedc77fd53db1144505b24b9bb680fe.png

第二个是单点追查,基于单用户和Session级别的问题定位,追踪到问题环节,每个环节都能够展示较详细的错误信息。进一步细分播放详情,如首屏时长细分为加载数据、预处理、播放器准备耗时、整个播放环节的播发码率和终端的下载速度情况。终端播放时的每次事件记录,以及事件发生的持续时间也都有记录。

最终用户投诉的解决效率提升50%。

2b033654ecc6726aad82d5d087f56791.png

效率提升后,另一个课题就是业务创新,我们融合了多种玩法,包括互动特效、AI算法、配套丰富的素材和工具,提升内容创作者的效率和成功率,最直接的体现就是在抖音业务上。

主要有几大模块组成:

视频创作,大家熟知的抖音拍同款、剪同款,各种特效,智能字幕,能够根据视频中说话的声音自动生成字幕并进行多语言翻译、BGM授权,我们购买了丰富的版权方素材,方便智能创作者生成背景音。

算法模块,达到一定的渲染效果需要算法积累,可以基于面部,手势,肢体,甚至是情绪和特征做点位识别,也就是日常大家抖音观看过程中的,给拍摄者增加笑脸,脸萌特效,增加了视频的趣味性,还有渲染模块,包括虚拟形象,AI小游戏等。

4e734fdc6d7a3ab743f60af8a96c7245.png

最终这些业务运用到不同的创新场景下,比如我们有些客户做医美、微整形的效果体验, 电商场景下的基于人脸点位的AR试妆,在线教育下设计与课程相关的动画、特效,增加趣味互动性,视频直播场景下的视频美化,增加1V1场景中的观看时长。

-03-

音视频云端一体解决方案veVOS

最后基于以上几个阶段的最佳实践,总结一下抖音同款的音视频云端一体化解决方案veVOS。

0e7dcd4475ec48d804a23b440746b106.png

整体框架由底层的云端服务作为基座,针对RTC场景的下的音视频通话传输网络,视频后处理,弱网优化等,针对直播下的转码、分发录制,针对点播的媒体处理和分发。

客户端打包丰富的SDK套件,包括RTC音视频的采集、播放器、视频制作、特效、直播的SDK等。全链路配备质量平台监控,保障QoS和QoE,底层通过策略平台来进行相对应场景的策略调整。

应用场景从在线音视频到社交娱乐、媒体资讯及在线教育。

ec32b1dde1705d78ec14bd3e08978653.png

通过去年到现在商业化的情况对比,云端一体化方案取得了非常不错的效果,总结主要优势点如下:

  • 一站式方案,简单上手,传统的RTC场景客户对接到上线需要4-7周的时间,而一站式方案从接入到上线业务,时长缩短到2周,SDK的集成更是2天即可完成。

  • 通过完善的质量和体验监控,能够不断优化QoS和QoE,用户在集成方案后,视频秒开率和用户播放时长有了显著提升。

  • 集成很多创新玩法,在云加端的背景下,配合多个SDK孵化出了一起看抖音短剧,配合美颜贴纸,打造了脸萌社交场景,为客户制造很多新的增值服务。

  • 依靠亿级DAU产品,也就是抖音的打磨,不断发现很多未知的问题,机型也做了最大程度的兼容,是业界领先。

9f078eb38a469c6074f508124fc4eb90.png

最后,希望更多的业务合作伙伴体验云端一体化解决方案,希望抖音集团内部的科技创新能够助力用户体验升级和业务创新。

以上是本次的分享,谢谢!


a0385d2a2843f5d85770a62406197970.png

扫描图中二维码或点击“阅读原文 

查看更多LiveVideoStackCon 2023上海站精彩话题

相关文章:

云端一体助力体验升级和业务创新

随着音视频和AI技术的发展,在满足用户基础体验和需求情况下,更极致的用户体验和更丰富的互动玩法,成为各个平台打造核心竞争力的关键。LiveVideoStackCon 2022 北京站邀请到火山引擎视频云华南区业务负责人——张培垒,基于节跳动音…...

【Linux Network】高级IO

目录 前言 五种IO模型 阻塞IO 非阻塞IO 信号驱动IO IO多路转接 异步IO 小结 同步通信 vs 异步通信 阻塞 vs 非阻塞 其他高级IO 非阻塞IO fcntl函数 代码测试 高级IO🌷 前言 IO:所谓的I便是 input,所谓的O便是 output,简单点来说&a…...

Python语言基本控制结构

Python语言基本控制结构包括:条件语句:if、elif、else 循环语句:for、while 跳转语句:break、continue、return 下面是它们的基本用法: 条件语句 if condition1: statement1 elif condition2: statement2 else: stat…...

旅游网站版面设计方案

门户网站的页面设计:采用天蓝色为主色调、以红色、绿色为基调,突出网站的青春活波性。 网站风格尽量简单统一、容易让大多数上网者接受,个性化的网站,再者,网站有主体信息结构及布 word . . . . 局,它是总体…...

sudo unable to open read-only file system”的原因

此错误是由多种原因引起的,包括: 文件系统不一致。文件系统配置错误(/etc/fstab 文件中的错误条目)。由于各种原因(包括突然断电或电缆损坏)导致系统意外或突然关闭。在某些情况下,Windows 的双…...

Dynamics 365 DevOps CI/CD之WebResource

对于D365自身的发布,简单点来说就是Solution的发布,复杂一些会涉及周边集成接口等一系列的发布。如果是单纯的Solution的发布的Azure DevOps商店里有很多工具,比如Power DevOps Tools,这个我之前也有博文转载过相关文章&#xff0…...

Linux常用指令及基础配置

Linux常用指令及基础配置 Linux系统操作指令文件管理指令系统设置相关指令addr2line的运用 vim相关vim配置操作Vim功能操作分屏擦操作删除操作换行符转换操作:文件比较合并操作折叠指令 Linux系统操作指令 文件管理指令 find ./ -iname filename find ./ -name “…...

Linux 服务器上Nvidia相关指令

1、GPU驱动的内存常驻模式 1)操作命令: 确保你具有root或sudo权限,以执行下面的命令。打开终端或命令行界面。运行以下命令来设置GPU驱动的内存常驻模式: nvidia-smi -pm 1这会将GPU驱动程序设置为内存常驻模式。 4. 验证设置是否成功。运…...

ChatGPT的工作原理是什么?

ChatGPT是美国OpenAI研发的聊天机器人程序,2022年11月30日发布。ChatGPT是人工智能技术驱动的自然语言处理工具,它能够通过理解和学习人类的语言来进行对话。 ChatGPT的原理 ChatGPT是一种基于人工智能技术的自然语言生成模型,它能够从大量…...

C++进阶——红黑树

C进阶——红黑树 概念 红黑树,是一种二叉搜索树,但在每个结点上增加一个存储位表示结点的颜色,可以是Red或Black。 通过 对任何一条从根到叶子的路径上各个结点着色方式的限制,红黑树确保没有一条路径会比其他路径长出俩 倍&…...

什么是NTFS for Mac?2023新版本如何下载

在NTFS for Mac中包含了多种功能操作,促进软件更好地使用,可以进行全局设置,也可以针对某一各挂载的磁盘进行针对性设置。 本集小编主要向大家介绍它包含的一些基本功能,看看这款mac读写工具能够实现那些功能,全面了解…...

Python泰裤辣丨520写一个自动换壁纸软件,将女友照骗放进去送给她

Python泰裤辣!520写一个自动换壁纸软件,将女友照骗放进去送给她! 准备工作1、环境2、使用的模块3、如何配置pycharm里面的python解释器?4、pycharm如何安装插件? 代码实战1、获取壁纸 自动更换壁纸程序最后 话说兄弟们,今天520你们都送给女朋友啥礼物了…...

CMake: 设置编译选项

CMake: 设置编译选项 导言编译器选项相关概念编译器选项设置补充 导言 上一篇我们学习了构建类型的相关内容,并且可以生成了不同构建类型的库,这一篇我们将介绍编译器选项的相关内容。 编译器选项相关概念 编译器选项是指在编译程序时,可以…...

美团Java开发一面凉经

目录 1.HashMap底层数据结构2.列举几个常见的线程安全容器3.HashMap线程问题4.concurrentHashMap5.ConcurrentModificationException6.Spring AOP、IOC、DI介绍下7.不使用依赖注入,使用传统方式的声明会有什么问题8.最左前缀原则9.TCP三次握手、四次挥手 1.HashMap底…...

Java面试知识点(全)-spring面试知识点二

Java面试知识点(全) 导航: https://nanxiang.blog.csdn.net/article/details/130640392 注:随时更新 Spring 事物 事务简介: 事务管理是企业级应用程序开发中必不可少的技术,用来确保数据的完整性和一致性 事务就是一系列的动作&…...

【音视频开发】基础知识:视频封装格式和编码格式

文章目录 一、封装格式与编码格式的关系视频编码格式视频封装格式MP43GPRM、RMVBAVI、WMVVOBFLVMKVWebMMOVTS 封装格式与编码格式对应 一、封装格式与编码格式的关系 视频编码格式和视频封装格式的关系及区别 这两者的关系好比酒与酒瓶的关系,编码格式好比酒瓶里的…...

OData Web API 一个开放标准的协议

OData Web API 是一个开放标准的协议,用于创建和使用基于 RESTful 的 Web API。它允许开发人员通过统一的方式来发布、查询、操作和管理数据资源。 OData Web API 基于 OData 协议,该协议定义了一组规范和约定,用于建立与数据源交互的标准化…...

PT100温度采集

1、信号采集的基本原理 PT100是将温度信号转换为电阻输出,其电阻值变化范围为0~200Ω。AD转换器只能对电压进行转换,无法采集直接采集温度,因此,需要一个1mA恒电流源给PT100供电,将电阻变化转换为电压变化。使用恒流源…...

ThinkSystem DM 全闪存阵列 —— 通过全闪存 NVMe 转型加速您的业务

ThinkSystem DM 全闪存阵列——通过全闪存 NVMe 转型加速您的业务 挑战 要缩短产品上市时间并提高客户满意度,企业必须不断改善关键业务运营的速度和响应能力。其中的一个关键要素是全闪存存储,它可以大幅加速关键工作负载。 不过,随着全闪…...

SpringCloud------代码demo(二)

SpringCloud------代码demo(二) 编码实操 以订单——支付微服务模块作为基础,开始逐渐扩充 微服务架构编码构建 1.约定 > 配置 > 编码 2.IDEA新建project工作空间 3.Rest微服务工程构建 总父工程 POM project module 首先创建maven项…...

日语学习-日语知识点小记-构建基础-JLPT-N4阶段(33):にする

日语学习-日语知识点小记-构建基础-JLPT-N4阶段(33):にする 1、前言(1)情况说明(2)工程师的信仰2、知识点(1) にする1,接续:名词+にする2,接续:疑问词+にする3,(A)は(B)にする。(2)復習:(1)复习句子(2)ために & ように(3)そう(4)にする3、…...

MySQL 隔离级别:脏读、幻读及不可重复读的原理与示例

一、MySQL 隔离级别 MySQL 提供了四种隔离级别,用于控制事务之间的并发访问以及数据的可见性,不同隔离级别对脏读、幻读、不可重复读这几种并发数据问题有着不同的处理方式,具体如下: 隔离级别脏读不可重复读幻读性能特点及锁机制读未提交(READ UNCOMMITTED)允许出现允许…...

Python爬虫实战:研究feedparser库相关技术

1. 引言 1.1 研究背景与意义 在当今信息爆炸的时代,互联网上存在着海量的信息资源。RSS(Really Simple Syndication)作为一种标准化的信息聚合技术,被广泛用于网站内容的发布和订阅。通过 RSS,用户可以方便地获取网站更新的内容,而无需频繁访问各个网站。 然而,互联网…...

HTML 列表、表格、表单

1 列表标签 作用:布局内容排列整齐的区域 列表分类:无序列表、有序列表、定义列表。 例如: 1.1 无序列表 标签:ul 嵌套 li,ul是无序列表,li是列表条目。 注意事项: ul 标签里面只能包裹 li…...

使用van-uploader 的UI组件,结合vue2如何实现图片上传组件的封装

以下是基于 vant-ui&#xff08;适配 Vue2 版本 &#xff09;实现截图中照片上传预览、删除功能&#xff0c;并封装成可复用组件的完整代码&#xff0c;包含样式和逻辑实现&#xff0c;可直接在 Vue2 项目中使用&#xff1a; 1. 封装的图片上传组件 ImageUploader.vue <te…...

在WSL2的Ubuntu镜像中安装Docker

Docker官网链接: https://docs.docker.com/engine/install/ubuntu/ 1、运行以下命令卸载所有冲突的软件包&#xff1a; for pkg in docker.io docker-doc docker-compose docker-compose-v2 podman-docker containerd runc; do sudo apt-get remove $pkg; done2、设置Docker…...

pikachu靶场通关笔记22-1 SQL注入05-1-insert注入(报错法)

目录 一、SQL注入 二、insert注入 三、报错型注入 四、updatexml函数 五、源码审计 六、insert渗透实战 1、渗透准备 2、获取数据库名database 3、获取表名table 4、获取列名column 5、获取字段 本系列为通过《pikachu靶场通关笔记》的SQL注入关卡(共10关&#xff0…...

Element Plus 表单(el-form)中关于正整数输入的校验规则

目录 1 单个正整数输入1.1 模板1.2 校验规则 2 两个正整数输入&#xff08;联动&#xff09;2.1 模板2.2 校验规则2.3 CSS 1 单个正整数输入 1.1 模板 <el-formref"formRef":model"formData":rules"formRules"label-width"150px"…...

Fabric V2.5 通用溯源系统——增加图片上传与下载功能

fabric-trace项目在发布一年后,部署量已突破1000次,为支持更多场景,现新增支持图片信息上链,本文对图片上传、下载功能代码进行梳理,包含智能合约、后端、前端部分。 一、智能合约修改 为了增加图片信息上链溯源,需要对底层数据结构进行修改,在此对智能合约中的农产品数…...

安全突围:重塑内生安全体系:齐向东在2025年BCS大会的演讲

文章目录 前言第一部分&#xff1a;体系力量是突围之钥第一重困境是体系思想落地不畅。第二重困境是大小体系融合瓶颈。第三重困境是“小体系”运营梗阻。 第二部分&#xff1a;体系矛盾是突围之障一是数据孤岛的障碍。二是投入不足的障碍。三是新旧兼容难的障碍。 第三部分&am…...