音视频爆发
2020年到2021年,可以说是音视频技术迅猛发展的一年。除了直播外,还有一种不得不提到的新趋势,就是“云会议”场景。云会议凭借其便捷、高效、低成本的优势,越来越常见于我们的生活当中。
基于音视频的会议能在短时间内大肆兴起和爆发,不仅得益于强大的通信技术,更依托于刚性的市场需求。我们可以发现,由于疫情的隔离政策,云会议成为了企业员工之间以及校园和学生之前最直接的沟通工具。
所以咱们一定要理解视频会议实现的原理和思路,在以后求职中给我们加分
视频会议中实现的思路
小王将摄像头捕获的数据进行编码 编码输出成H264视频数据
小王通过p2p点对点的方式将H264数据推送给小李 与 小张
小李此时能够接受小王的H264视频数据,此时小李解码器开始工作,解码成画面并显示
小李和小张 分别重复 小王的步骤,给会议室每个人,发送自己的数据给其他人
这样就完成了视频会议
完成视频会议难点在哪里
编码出来的数据流(视频配置信息,I 帧 B帧 P帧)发送出去时 对方怎么才能正确解析
网络模型中只有点对点模型和C/S模型,但是没有多对多模型
当小王在内网时,会议室的其他人在公网,其他人怎么样才能将数据发送给处于内网的小张
小张与小王通信是,网络可能出现丢帧,假设丢的视频配置帧话(sps和pps帧),对方就算收到视频流时也没办法解析
因为视频配置帧含有宽高,此时没有宽高是没有办法解析出画面,而视频配置帧 只在编码器初始化才会输出
怎么避免因网络丢包造成视频帧丢失呢?
答案是 通过冗余设计,编码端重复在每一个I帧前发送视频配置帧
多对多网络模型怎么解决呢?
Socket通信是C/S模型(1对N模型),而音视频会议室多对多模型,怎么让Socket能够实现多对多模型
每个客户端都有一个服务端(SocketServer)和N个客户端(SocketClient)
小王的有N个SocketClient 分别于小李和小王链接
小王的视频画面通过N个SocketClient 推送给会议室其他人
小王收到 会议室其他人的数据 通过SocketServer 接受,并显示到UI上
多对多网络通信模式就此完成
p2p通信怎么实现呢?
可以看下下面的直播内容,课程中有详细分析p2p的实现原理
为了帮助大家更快更好的学习音视频开发技术,我特别邀请了前华为、OPPO 、阿里资深架构师 David,为大家带来《Webrtc多对多视频会议实战》系列直播分享,在这里给大家准备了一场干货十足的音视频学习之旅,将带大家从H265编码原理入手,从零手写H265多对多视频会议项目。
原价298元的《Webrtc多对多视频会议实战》,现在限时优惠只需要0.1元即可加入学习(限量100个名额)
大家手速要快,赶紧识别下方图中二维码加入学习!
报名学习后还将附赠一套系统的开发进阶资料,帮助大家在技术的道路上更进一步。
赶紧扫码报名领取资料,开启你的学习之旅!
(扫码添加时记得备注:"音视频"快速通过)
【如遇扫码频繁+VX:mm1591314250】