返回 登录
0

聚焦CSDN技术主题月:视频直播架构新解读专场回顾

阅读6215

9月3日下午,在北京联合创业办公社,由CSDN社区主办的技术主题月系列之——《视频直播技术架构的新解读》活动成功举办。CSDN邀请了迅达云SpeedyCloud工程VP李雨来、dotEngine音视频通话云创始人刘连响、布卡互动创始人张玺辉、七牛创始合伙人兼产品副总裁徐立共同围绕“直播”这个热点话题,分享了视频直播秒开技术与优化、WebRTC使用、互动体验、移动直播技术优化等议题。近200位开发者利用周末参加了本次活动,现场提问踊跃,嘉宾互动很有深度。

图片描述

CSDN社区运营总监石晓锐担任活动主持人

图片描述

迅达云SpeedyCloud工程VP李雨来:视频直播秒开背后的技术与优化经验

就视频播放原理,李雨来首先解释了视频编码中I-frame,P-frame和B-frame 三个技术概念。其中I-Frame (Inter Frame)的特点是自描述帧、无其他帧引用、压缩比最小。P-Frame (Predicted Frame) 的特点是前置引用预测帧、需要该帧之前的帧才能解码 、压缩比高(大约是I帧的50%)。B-Frame (Bi-directional Predicted Frame) 的特点是双向引用预测帧 、需要该帧之前和之后的帧才能解码、压缩比更高(大约是I帧的25%)。

李雨来还阐述了GOP(Group of Picture),即从一个I帧开始到下一个I帧之前的一组视频帧。视频首屏播放速度和对GOP的处理、解码器与缓冲的架构设置密切相关。解码器需要一个缓冲区来保存解码后的帧数据以供后面的P帧和B帧引用 ,缓冲区开始的第一个帧是I帧的数据。缓冲区的清空机制与视频直播流畅度密切相关。

此外,数据包受网络抖动的影响也会制约视频打开速度。对此,在设计相关解决方案的时候李雨来认为要考虑以下几个因素:发包频率有讲究、积累时间长影响首屏时间、不积累 当网络不太好的时候会对延迟有一定影响,积累太多一旦丢包重传会导致解码器饥饿。

dotEngine音视频通话云创始人刘连响:WebRTC在音视频通话开发中的使用

刘连响首先解释了WebRTC技术,让用户在浏览器、移动平台、嵌入式设备中进行实时音视频通话。目前,90%的音视频通话都采用了WebRTC技术来搭建。

图片描述

WebRTC开发中涉及到的主要模块:webrtc client、signaling、stun/turn、mcu/sfu。

在视频编码选择方面,刘连响认为vp8是默认编码,vp9已经可用,同样质量编码率可以比vp8小30%。h264在硬件支持上还有不少问题。

就音视频通话开发的技术解决方案,刘连响给出了自己的建议:不要使用最新的代码、开发阶段自己搭建stun server和turn server、视频h264编码、硬编软解。

布卡互动创始人张玺辉:在直播中如何做到完美的互动体验

张玺辉认为今年是直播市场化的元年,未来潜力巨大。他将直播划分为几个领域:传统秀场、游戏直播、电商、移动轻秀场、直播+。在游戏直播领域,游戏用户还没完全转换,长尾游戏领域扩展加速,网生一代消费能力增加;在移动轻秀场方面,未来将会全民参与。最终直播则会渗透到各领域的行业应用中。

在互动直播方面,目前主要解决的技术问题有:1.万人直播,小班互动;2.全终端支持;3.不卡,不掉线,不延时;4.全文档共享支持,白板支持;5.权限控制;6.文字聊天,答题,投票,抽奖,鲜花,红包…;7.数据统计等。张玺辉认为互动直播中主要解决的技术问题有:1.万人直播,小班互动;2.全终端支持;3.不卡,不掉线,不延时;4.全文档共享支持,白板支持;5.权限控制;6.文字聊天,答题,投票,抽奖,鲜花,红包…;7.数据统计等。

随后,张玺辉就直播技术架构涉及的几个方面:音视频框架设计、网络传输选型、编解码选型、千万级并发服务器设计、声音方案的处理,分别给出了自己的建议。

七牛创始合伙人兼产品副总裁徐立:移动直播技术上的坑与优化经验

徐立首先介绍了在移动直播中常见的技术场景问题:推流发烫、崩溃、闪退;观众大量点赞“飘星”、送花,导致主播和观众画面卡顿;延时较高,播放时间越长,延时越大;直播推流过程中接听电话、切换应用,导致丢失声音;播放首屏打开慢,超过数秒打不开,有时黑屏、卡住;点击一个正在进行中的直播,提示直播已经结束等等。
图片描述
活动现场座无虚席

归结起来,直播性能的技术要点主要在三个层面:首屏秒开、流程不卡顿、低延时。徐立对每一个环节的技术解决方案都给出了详细的解读。

例如在秒开方面,在服务器端要注意:1.边缘节点缓存GOP,每次播放请求过来无需回源,省却回源时间;2. 主动预热GOP,省却来自边缘节点首次播放请求的路由和回源时间。在客户端要注意:1.无需下载整段GOP,下载关键帧后立即予以渲染显示;2.画面首帧渲染环节避免音画时间戳同步校验。

最后,徐立对移动直播优化经验做出了总结:

• 支持硬编和软编,提供软编解决安卓机型推流兼容性和稳定性问题

• 软编还能解决码率精确控制、画质清晰度等问题

• 视频编码与图像处理分离(美颜、水印、滤镜等图像处理走GPU),减少处理耗时

• 播放优先硬解(性能优先), 其次软解(兼容性适配)

• 支持HTTPDNS防DNS劫持,避免黑屏卡住等问题

• 根据QoS数据实时反馈进行动态精准IP调度,缩短RTT便于秒开、保障直播流畅度

•支持弱网丢帧策略,保障直播流畅度

• 支持弱网动态码率调节,保障直播流畅度

• 支持编码前丢帧策略,不损失画质的前提下减少编码耗时、保障直播低延时、流畅度

• 支持动态追帧,消除由于网络抖动导致的累积延时

• 支持后台播放暂停视频解码,降低功耗节省流量
图片描述
在互动答疑时段,开发者提问火爆,纷纷提出了自己在直播平台技术方面的困惑,现场嘉宾一一给出了解答。
图片描述
活动结束后参会者围绕在讲师周围讨论

CSDN技术主题月是由CSDN社区主办的线下技术交流活动,旨在和国内技术领先的企业共同围绕行业趋势和话题进行解决方案的探讨、分享和交流。在技术开放的氛围下,希望开发者们能够通过CSDN社区平台结识更多技术达人,交流&分享技术观点,并碰撞出精彩火花。

推荐资料:扫描二维码,获得直播知识库内容
图片描述

评论