音视频架构的三部分之推流过程(一)

网友投稿 677 2022-11-11

音视频架构的三部分之推流过程(一)

音视频架构的三部分之推流过程(一)

原始音视频数据采集,包括了音频采集和视频采集。

音频采集

采集过程:

设置采集设备的一些参数:采样率、采样数;将音频信号采集为PCM编码的原始数据;再把原始数据编码压缩成MP3或AC3等封装格式的数据;最后,将封装好的数据通过流媒体协议发给服务器。

常见的音频封装格式:MP3、AAC、OGG、AMR、APE、WMA等。

面临挑战: 音频采集面临去噪、回声消除、静音检测等问题。

重点考虑:

要重点考虑采样率的设置,因为不同声音效果的采样率有一定的阈值。位宽:即一次能传递的数据宽度,位宽越大,一次能处理的数据就越多,音频常用8或16位。声道数:一般采用单声道或双声音。

视频采集

采集过程:

利用手机摄像头采集,得到的是用NV21(YUV格式的一种)格式存储的原始数据;将得到的原始数据编码压缩成H.264等格式的数据;然后把编码好的数据进行封装,封装的格式有FLV等;最后,将封装好的数据通过流媒体协议发给服务器。

重点考虑:

传输通道:即数据在传输时所利用的媒介,常见的有TCP和UDP。分辨率:它代表图像中存储的信息量,图像分辨率=垂直像素x水平像素采样率:指分秒从连续的信号中提取并组成离散信号的采样个数,如720像素视频。不同采样个数对应的分辨率也是不同的。fps:一般为15~20fps就OK了。

音视频数据采集后的处理

渲染处理:主要从相机 中采集来的数据进行二次处理,如美颜。常用的美颜工具有商汤、FaceUnity,开源的有GPUImage。 美颜的基本概念:通过一定算法对原始图像数据进行二次处理并强化图像效果。

最后介绍一下推流协议

常用的有RTMP、WebRTC和一些基于UDP的私有协议。RTMP是主流的流媒体协议,在传输层是使用了TCP协议。RTMPT、RTMPS、RTMPE都是RTMP的变种。 RTMP的优点:对CDN内容分发网络友好,而且CDN对RTMP支持是最好。协议也相对简单。 RTMP的缺点:在弱网时丢包比较严重,它不支持浏览器推送。

WebRTC支持web浏览器进行实时的音视频数据推送,主要用于视频会议和连麦中。 WebRTC的优点:在弱网时优化较大,表现优于RTMP。它可以实现点对点通信,通信时延双方都较低。 WebRTC的缺点:传统CDN没有提供类似的服务。

谢谢阅读。

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:[gulp](未解决)gulp3转gulp4问题
下一篇:Maven的约定
相关文章

 发表评论

暂时没有评论,来抢沙发吧~