直播技术专家蔡鼎:云导播的技术实现和玩法

分享人:阿里云 直播系统技术专家 蔡鼎

今天,阿里云直播系统技术专家蔡鼎将为大家从五个方面介绍阿里云云导播的技术实现和玩法:云导播台的概念和功能、云导播台的应用、技术方案的实现、衡量指标、潜在难点

一、云导播台的概念和功能

我们先来直观的看下案例,这个截图中的视频是最近比较火的英雄联盟的赛事,我们从直播流的4个片断进行了拼接,为了更突出拼接的边界采用了立体旋转等拼接方式,下面是其中一个画面的截图,有观众席和游戏精彩画面的直播流。

那么作为一场赛事直播,技术人员从中看到了什么?

第一, 直播流在切换,解说员的流和现场的流在切换;
第二, 三路直播流的混合,游戏界面、两名选手直播流的无缝 布局;

第三, 转场特效,从现场到游戏界面的直播流切换功能之间
第四, 贴图+3路直播流混流,以及贴图动画
第五, 背景图+2路直播流布局+布局动画特效+多路混音(两导播流串联)

那为了业务上达到这种效果,导播台要做什么呢?

实际上传统导播台的幕后工作场景是这样的:

左上角是导播间,一般它距离现场说非常近的,专业的导播人员通过操作台控制素材库中的流和现场直播流进行切换,让右下角观众观看的直播流发生变化。

现在阿里云云导播的操作界面是这样的:

以上是阿里云导播台的SAAS页面,用来验证我们的SAAS接口,用来做一些简单的切换。根据我们提供的是SAAS接口,用户可以做自己的导播台的页面或者流程。

云导播最重要的特点是在云端,所以,第一,它可以进行远程操作,无论现场在哪里,导播人员都可在任何场地任何移动设备进行导播切流操作。第二,在云端可以无人操作。直播播单编排好后,可配置各种自动监控报警,自动备份,自动恢复紧急预案等等,无需进行传统的人工操作。

云导播的功能,从业务上看,我们把他分成简单、常用、复杂、辅助、特有这几类:
最简单的功能包括:加台标、图片、水印等等;
最常用的功能包括:切视频流和切视频文件。自动切换和手动切换【节目单,滚动播放和轮播】,文字以及跑马灯等。
最复杂的功能包括:虚拟场景,抠图,转场特效和多布局混流【含混音】等。
辅助导播功能包括:素材库、PVW/PGM、预热和旁路延迟输出、紧急切换等。
阿里云特有功能包括:

  • 云的基本功能:防攻击/容灾/分布式多机房部署/断流秒级恢复等
  • ET字幕,语音翻译实时字幕
  • 可扩展的动态实时素材【诸如H5页面实现比分,实时弹幕等】,这是基于导播台的二次开发,实时素材直接合成到直播流中去。
  • 多个云导播台可以串联。

二、云导播台的应用

一、游戏

  1. 把游戏导播门槛和成本的降低,不需要设备,使得任何一场游戏直播都有可能为一场活动性的赛事直播。
  2. 让游戏玩家和游戏解说分开,玩家专注游戏。
  3. 播单功能可以让主播无需时刻在线,也即无需时刻的良好网络状况,录制的游戏视频可以循环利用。
  4. 结合点播的视频编辑,使用云导播台,可以制作一个个人网络电台。
  5. 结合视频云的转推功能,可以让一场直播分发到不同的直播平台的房间进行跨平台直播,增加流量。

二、活动
今年天猫双11也用了云导播台,作为底层服务志愿淘Live 10*24小时直播,千牛48小时直播和线下大屏同步直播。其中线下大屏直播是在商场人流比较密集的通道,直播肯定要有精彩的瞬间来吸引过往行人,那么在大屏幕直播48小时,导播人员肯定要在不同流中找精彩画面来不停切换。

三、电视台
电台购物、播单直播等办可以为电视台提供更便捷的导播服务。播单直播是预先对媒体文件编排播放顺序,设定单个媒体文件的播放起开时间、结束时间,同时用户可根据业务需要叠加文字、图片水印, 导播服务依照编排播放次数实时产生直播媒体流。

四、在线教育
多路媒体流:PPT、教师直播流、学生直播流、教学视频、H5 教育互动,可任意编排内容布局,实时切换布局、切换视频源。

三、云导播的技术实现方案

业务功能是通过技术来实现,接下来我们来看看技术角度的功能。

第一,云导播台的云功能

  1. 依赖阿里视频云的基础架构和组件模块来保证【安全,稳定,高复用,可运营维护等】。
  2. 多机房部署。
  3. 全链路(端到端)监控和报警系统,全模块日志记录,追溯和分析等。
  4. 数据海量极速存取等【RDS/OSS】。

第二,云导播台的导播功能

  1. 通过预分配方式调度保证资源独享,稳定性
  2. 流媒体处理方式是基于LayerStack方式的混流策略,满足各种多布局多特效的功能需求。
  3. 音视频分开处理,灵活满足混音混流的需求。

云导播基本流程图:

前端创建业务场景(比如播单),然后进入到场景配置环节(输出的视频分辨率、码率是多少、编什么码、输出地址、背景色彩)、布局配置(怎么分屏、切屏)、视频源和组件配置(素材库、广告片等),完成后进入到场景应用,最后到了调度(某个机房某台机器)和流媒体处理,最后把这路流推到直播中心。

这其中,云导播台系统和直播中心的关系是它输出的结果会推给直播中心,同时直播中心也会拉一部分用户的流进行合并。

流媒体处理层包括的核心功能:

  • httpserver 【信令响应】。
  • httpclient 【异步状态回调】,每一路的状态通知给上层。
  • 背景输出,当用户没有推流上来的时候需要背景。
  • 多路视频源/画面/文字等混合 【混音/混画面】。
  • 多线程读取视频源和素材。
  • 编码,解码和输出。

流媒体处理流程:

首先网络层,从网络或本地协议读取视频源,读完需要解码,得出来是帧,这些视频帧和音频帧进行解码后处理,然后编码,得出packet,经过Mux合成,往后再经过网络或本地协议推出去实时流,或者写成本地文件。

其中混流的核心就是LayerStack混流方案,它就在视频帧处理和音频帧处理这块,用中文解释叫图层。每一个流媒体处理最后解码出来就是一帧图像,把图像和其他的流媒体处理的图像放到LayerStack中来,就完成了混流。

  • 音视频Layer依赖其音视频源的URL做为Key来关联进行音画同步。
  • Blender算法是以LayerStack次序从上到下进行yuva 的alpha-blend。采用 source-alpha 的为源色的 和One-minus-source-alpha 为目标色的blender 算法。可参考glblendFunc()里面的算法。
  • LayerStack最后一个Layer是背景。所以输出的帧就是最后混在这背景上的图。
  • 使用全量List来指定音视频的合并次序和显示,可根据List 来指定哪些音视频需要混或不混。
  • 支持全量批处理和增量处理,其中全量处理: 删除全面的设置,并同时设置多个元素的Layer 同时生效。增量式处理: 仅修改某几个或者1个Layer的某些属性让它生效。

从混流方案中可以看到,业务和底层技术上音视频是分开处理的,原因是:

  1. 业务上存在仅取某源的音频或者视频的需求,比如主持人的声音在,用户看到游戏画面等场景。
  2. 技术流程上,音频和视频的编解码是各自的模块。

那么,混流的混其实是各个源的混画面、各个源的混音,最后将最终的音频和视频再进行混合。

四、衡量指标

怎么评判云导播做的好不好,我们从性能方面和能力方面来看。

性能:

  1. 切换时间:从导播人员切换指令到端上看到的画面的时间,这是最关键的。
  2. 混流后的流畅度和同步误差。

能力:

  1. 能支持多少路视频混合,取决于机器能力和算法以及方案策略。
  2. 能支持多高码率和分辨率的视频。

五、 云导播的潜在难点

1.同路流音画同步问题

  • 由于需要进行后处理,所以视频和音频需要进行解码,然后再合并。
  • 音频和视频的解码速度和性能,解码器内部的缓冲等不一致。
  • 视频存在B帧概念,容易造成进去好几帧后才会开始解出第一帧。
  • 传输过来的音视频序列化的音画交错不好。
  • 某些非标流时间戳突变或者中途突然没有音频或者没有视频。
  • 延迟缓冲不能太大。

2.多路流相互同步问题

  • 各不同视频源的网络状况不一样造成同一时刻产生的帧并不是同一时刻到达服务端。
  • 每个源的起始时间戳不一致,即不是参考同一个时间戳的。

3.网络的抖动

  • 用户直播推流的上行抖动,会出现延迟
  • 网络抖动会造成混流的画面卡顿,会影响同步和延迟策略。

4.机器性能问题

  • CPU 能够同时处理多少路流?涉及到 scale/blend/拉流等算法和策略。
    主频 【代码的优化以及机器的计算能力】

核数 【代码的并行度和机器处理的并行度】
如果代码并行度不够,就不能用核数解决问题,只能用到主频,但是主频是个瓶颈,所以只能把代码并行度加高。

  • GPU 并行度代码和算法,40ms内要把所有的流媒体处理完成。
  • 各种特效的算法以及数据策略等。

这些潜在的难点都是非常底层的,如果用户要自行开发云导播台,就要把这些难点逐一攻破。阿里云已经将底层封装了,用户只是使用上层服务,是不需要面对这些难点的。

时间: 2024-10-22 19:53:35

直播技术专家蔡鼎:云导播的技术实现和玩法的相关文章

虎牙直播观众端黑屏主播端如何设置教程

  虎牙直播观众端黑屏主播端如何设置教程 如果是笔记本,请将高级选项-开启DX性能优化的开关关闭. 如果是PC机,请到微软官网下载directx修复工具安装 重新打开助手开播,若再出现,关闭DX性能优化开关 .

云导购:中小企业现金管理 SaaS是首选

本文讲的是云导购:中小企业现金管理 SaaS是首选,[IT168 资讯]用友伟库网"现金管理"是其云计算SaaS平台众多服务中的一个--为中小企业量身打造的现金收支管理工具.它能帮助企业即时管理收付款.银行存取款以及企业内部跨行转账等业务,同时又提供了丰富.简单易懂的现金报表供用户查询.可以与网上记账.网上进销存完美结合,帮助企业全面实现财务业务的一体化管理.此前我们做过不少国外有关云计算产品和服务的导购: 概念差异与主要特点 不同于以往,伟库网提供的现金管理服务使得用户不用再购买软件

web 直播&即时聊天------阿里云、融云

随着直播越来越火,所在公司也打算制作自己的直播,所以去了解了这方面,使用后发现还是有些问题需要记录的. 经过分析,制作直播应该是分为两块来做,即直播与实时评论.这里先去制作实时评论,等直播ok后,也会将相应心得写上来. 我们直播采用了阿里云,评论采用了融云.   其实融云的api还是比较清晰的,只不过web demo只有ng的,个人对ng不是很熟悉,所以只能自己慢慢摸索.   1. 注册帐号,根据提示创建应用,获取appkey 2. 引入sdk(请去官网选择最新版本) <script src=&qu

第70届戛纳电影节:优酷全网首次广播级直播,阿里云提供海外专线技术

近日,第70届戛纳电影节在法国举行,共有来自13个国家的20部影片角逐最佳影片金棕榈奖.作为欧洲三大电影节之一,自然是明星和影迷追逐的焦点.为了让不能亲赴戛纳感受现场氛围的影迷没有遗憾.优酷全网率先采用了眼镜采集实时回传.VR信号实时回传.全网中文实时字幕匹配等技术.尤其突出的是,优酷首次全网实现了无压缩广播级专业高清直播.让国内观众足不出户,即可全视角畅享本届戛纳国际电影节的饕餮盛宴. 在优酷网观看过本届戛纳直播的观众可以感受到,本次直播的清晰度非常高.而实际上优酷已经达到了目前视频精度的最高

高级算法专家储开颜:无端不视频 阿里视频云三大端上技术能力

近日,阿里云高级算法专家储开颜在云栖大会北京峰会上进行了<视不可挡,无端不视频>的主题演讲,介绍了当今视频行业的发展情况,并对阿里视频云三大端上的技术能力做了详细解读. 视不可挡 在线视频市场发展现状 本次分享从"视不可挡"开始,根据行业报告显示,2017上半年中国在线视频行业用户规模已经接近6亿,从2014年至今,用户规模增长率一直稳中有升.而2017年在线视频市场规模已经达到了503.3亿元,可以预见的整个2017年在视频领域,发展的机会越来越多. 另外有数据报告显示,

阿里巴巴直播防控中的实人认证技术

阿里巴巴直播防控中的实人认证技术         直播作为近来新兴的互动形态,已经成为近几年最风生水起的行业之一.在2016年仿佛进入了"千团大战"的繁华.欢聚时代10亿砸向虎牙和ME直播,斥资1亿签下主播MISS:腾讯4亿投资斗鱼,后者估值10亿美元:新成立的映客获得昆仑万维.复赛等机构的8000万人民币投资:易直播获得6000万人民币A轮融资:360推出花椒.秒拍推出一直播....网络直播正享受其最好的时光,直播"风口"成投资方必争之地. 然而网络直播也因为走的

花椒直播VR直播怎么玩?花椒直播VR立体直播玩法介绍

花椒直播VR直播怎么玩 1.通过咨询花椒直播的客服后,发现如果想开通vr直播,需要主播电脑开启直播.vr摄像头链接电脑.还有粉丝需要佩戴vr眼镜 2.另外,观众如果想要观看立体直播,无法直接找到vr分类的直播,因为目前还没有发布这样的直播间,所以想体验的小伙伴需要等等了 花椒直播VR立体直播玩法详解 人脸识别与VR直播相结合 用户纷纷"路转粉" 变脸只是花椒在技术革新方面的牛刀小试.此次新版的花椒还设置了VR直播专区,成为全球首家移动VR直播社交平台.为提升用户体验,花椒豪掷5000万

智能诊断——人工智能在云平台上的新玩法

摘要:在12月7日召开的云栖大会苏州峰会上,由阿里云高级技术专家许玲带来了"智能诊断--人工智能在云平台上的新玩法"的演讲.分享了云上IT系统运维的诉求,需要解决的问题,典型场景与案例的分析以及目前取得的成果与实践.   以下为精彩视频整理:   阿里云在某一些具体领域把人工智能和企业级云上架构结合起来,解决一些刚需问题.有些人工智能落地的问题在传统的IT架构里面是很难做到,但现在在云上可以完成了. 云上IT系统的运维诉求 在把系统上云之后,我们发现在运维层面的诉求和原来有很大的不同.

阿里云快照2.0技术优势有哪些

  阿里云快照2.0技术优势对比 阿里云ECS快照2.0数据服务相比于传统存储产品数据快照功能,具备诸多优势,详情如下. 对比项 ECS 快照 2.0 数据服务 传统存储快照功能 容量限制 无限容量,满足超大业务规模数据保护需求 有限容量,受限于初次购买的存储设备容量,只能满足少量核心业务的数据保护需求 扩展性 弹性伸缩,用户可根据业务规模任意扩展,一次点击,秒级生效 扩展性较差,受限于生产存储性能.可用容量.供应商支持能力等,一次调整周期约为 1-2 周时间 成本投入 根据用户业务实际数据变化