边缘计算加速视频直播场景:更清晰、流畅、实时
随着 4G、5G 网络技术的发展和智能手机的普及,网络直播逐渐成为了新媒体主要的传播方式,在社交娱乐、产品展示、政务公开、展会发布等领域被广泛使用。
面对全国不同城市、不同运营商的用户,如何保障视频直播清晰、流畅、实时的观看和互动体验?本文主要分享边缘计算在视频直播场景中的应用,核心内容如下:
什么是直播?
直播的系统架构
边缘计算加速直播
总结
01 什么是直播?
根据《广播电视辞典》定义,直播是指广播电视节目的后期合成、播出同时进行的播出方式。这种方式中节目的后期合成过程就是节目的播出过程,它不经过事先录音或录像,而是同一时间内在现场或播音室、演播室完成节目的制作和播出。
直播能充分体现广播电视媒介传播的优势:
通过直播可以随时播出最新新闻,保证新闻报道的时效性。
可以同步报道新闻事件的发生和发展过程。
强烈的现场感,实现良好的播出效果。
随着 4G、5G 网络技术的发展和智能手机的普及,基于互联网和流媒体技术的网络直播逐渐开始发展。依托互联网广泛、便捷的网络资源,网络直播将音视频信号进行编码、压缩、封装处理后,通过流媒体传输协议在互联网上实时传输和播放。对比广播电视直播,网络直播对主播在专业技能、表现形式、直播内容等方面更加多元和宽松,且能提供和观众更加互动的双向交流,网络直播逐渐成为了新媒体主要的传播方式,在社交娱乐、产品展示、政务公开、展会发布等领域被广泛使用。
网络直播根据内容场景,主要分为电商直播、游戏直播、真人秀直播、演唱会直播、体育直播等类型。根据 CNNIC 发布的《第 48 次中国互联网络发展状况统计报告》数据,截至 2021 年 6 月,我国网络直播用户规模达 6.38 亿,同比增长 7539 万,占网民整体的 63.1%。受益于广泛的用户群体,网络直播将持续突显其经济和社会价值。
02 直播系统的架构
基础架构
直播基础架构由主播端、服务端、观众端三部分组成:
主播端:视频生产源头。通过硬件设备采集音频、视频数据后,进行编码、压缩、封装后,通过网络推流至服务端对应的媒体服务。
观众端:通过网络拉取服务端媒体服务器上的目标视频流,通过本地播放器进行音视频解码后进行播放。
服务端:包含一系列的媒体服务器,实现对视频直播的控制面(用户认证、房间管理等)和数据面(音视频流的推流和拉流)的统一接入、管理和调度能力。同时,媒体服务也可以根据直播平台业务需求,对视频流进行连麦、转码、内容审核、录制等功能。
业务架构
一般来说直播业务架构主要由主播端、媒体服务、播放端、直播业务平台等几部分组成:
主播端:通过在直播 APP 中集成推流 SDK,实现直播相关的采集、编码、推流及增值业务等能力。
观众端:通过在直播 APP 中集成播放 SDK,实现直播相关的拉流、解码、播放及播放体验优化等能力。
直播业务平台:主播和观众在发布/订阅直播内容时,都需要依赖直播 APP:比如主播只有在对应直播 APP 平台注册并通过审核后,才可以创建房间进行直播,然后观众也是通过直播 APP 进入某个主播的房间实时观看直播及互动。对应直播 APP 后端平台就是直播业务平台,实现用户注册和管理、房间管理、鉴权和授权管理能力。
媒体服务:实现对直播流的接入、发布、转发能力,对直播流和内容基于业务需求进行合流、审查、转码、录制等能力。
在商业化的直播 APP 中,还会有诸如弹幕、打赏、商品推荐等业务模块,提供更加趣味、新颖的直播交互和体验。
03 边缘计算加速直播
随着业务的发展,直播平台需要实现对全国不同城市、不同运营商的用户提供覆盖和直播服务,伴随而来就会产生如下的问题:
高并发瓶颈:直播中心难以承载百万级、千万级规模的用户并发请求。
带宽瓶颈:直播中心的网络资源难以满足大量用户的视频接入和分发。
体验不一致:不同地方用户因为物理距离差异带来额外的网络时延,从而导致用户体验不一致。
边缘计算旨在更加靠近用户的网络边缘,提供标准的计算能力和 IT 服务。通过将时延敏感业务、流量接入业务部署在用户本地,一方面可以就近接入用户降低业务响应时延,另一方面在边缘本地即可对业务进行处理可以有效分担中心瓶颈提升业务容量。
推拉流加速
如果将所有主播的直播流都推送至直播中心,然后所有观众也都从直播中心拉流,那么势必对直播中心带来巨大的业务压力。同时主播/观众到直播中心间的网络链路存在长距离传输,其网络性能存在带宽受限、不稳定等因素也会影响最终的用户体验。
通过边缘计算提供的边缘实例自建直播网络,将推拉流能力部署在更加靠近终端用户的边缘,实现就近接入、转发用户直播流数据,降低用户时延。同时边缘实例所在节点具备运营商高质量的专线出口,可以有效保证用户-边缘节点-直播中心的网络传输质量,提升业务稳定性。
上行推流加速:基于用户地理位置亲和性,智能调度用户(主播)到最近的边缘计算节点提供视频直播流媒体推流服务,降低用户接入响应时延提升体验。
下行拉流加速:基于用户地址位置亲和性,智能调度用户(观众)到最近的边缘计算节点提供视频直播流媒体拉流服务:如果本地已经缓存直播流,直接分发;如果本地无缓存,则回源直播中心拉流,有效降低用户拉流时延,并极大的节省直播中心带宽支出成本。
媒体处理加速
边缘计算提供的通用算力,能支持在用户本地即可对视频直播的用户媒体数据进行处理,比如将视频直播媒体服务中转码、切片、合流等服务直接在边缘本地部署,一方面本地媒体数据处理可以提升用户交互相关业务的响应效率,另一方面在数据源头对数据进行压缩、优化处理可以提升边缘-中心的数据传输效率优化成本。同时,从全局系统架构来看,采用物理位置分散的边缘计算架构可以实现直播业务的分布式部署,从而实现更高并发、更稳定的业务能力。
可以考虑在边缘节点实现如下媒体服务处理:
窄带高清/转码:在保证用户观看视频质量的前提下,对直播流视频进行压缩,降低回传带宽需求。
合流:对用户的多个视频流在边缘进行合流,降低回传带宽需求。
转封装:针对用户不同终端类型(IOS、Android、HTML5 等)动态转换流媒体封装协议。
转码:实现视频流不同编码格式的转换。
超分辨率:通过算法提升原片画质,满足高质量画面的用户需求。
动态分辨率:基于用户的实时网络环境动态切换不同码率视频,保证视频流畅度。
值得一提的是,在直播场景中涌现出越来越多有趣的玩法和特效,比如抖音中比较火的“蚂蚁呀嘿”、“漫画风”等视频特效,可以极大丰富用户趣味性提升用户粘性。高质量的视频特效,同样对用户终端提出更高的资源需求,但是很多中档、低档的终端受限于硬件性能瓶颈导致用户难以获得产品预期的效果从而影响体验。边缘计算节点提供通用的 GPU 算力资源,可以有效地辅助终端实现高质量的视频特效渲染,保证用户获得预期的直播体验。
AI 应用加速
随着 AI 技术的发展和成熟,越来越多的 AI 技术被应用于直播场景,比如通过 AI 算法在内容理解、内容创新、内容传输等方面实现更加优质、创新的直播体验。
从算力来源来看,中心云、边缘节点、用户终端都可以提供 AI 业务所需要的算力资源:
中心云,具备大规模、高性能的 AI 算力优势,能满足各种 AI 业务场景资源需求;受限于用户距离,在服务远距离用户时存在时效性低的缺点。
用户终端,部分中高档移动终端能提供一定的 AI 算力用于 AI 业务。用户终端的 AI 算力对用户来说时延最低、体验最佳,对业务方来说无需投入资源、成本最优;但是由于用户终端型号多样、性能层次不齐,需要业务方投入相当的资源做兼容适配,且最终效果受限硬件性能难以达到预期效果。
边缘计算,在更靠近的用户边缘能提供通用的计算能力,如和数据中心一致的 GPU 显卡,可以满足 AI 业务推流或渲染所需要的算力资源,同时距离用户更近保证业务相应的时效性,所以能很好的协调中心 AI 算力和端侧 AI 算力在时延、兼容性、算力能力、成本的差异。
04 总结
边缘计算提供全国各省市和运营商的全域覆盖,在视频直播场景将和用户交互与流量接入相关的推拉流、转码合流等服务在更加靠近用户的边缘部署,就近实现主播和观众的直播视频推拉流,确保低时延业务响应,提升高清直播的流畅业务体验。同时,随着对视频直播内容趣味性、创新性、沉浸性的需求的不断提升,边缘计算提供低时延、标准化、异构化的算力资源将持续助力直播场景提供更加极致的业务体验。
火山引擎边缘计算节点致力于为用户提供稳定、高性能、功能丰富的新一代边缘计算云平台服务,通过覆盖全国各省市和运营商的边缘节点,助力业务快速部署到用户与云中心之间的每个边缘层。
目前火山引擎边缘计算已在抖音直播、今日头条、西瓜视频、飞书等多款应用落地。欢迎关注边缘计算节点或开通服务~
评论