音视频编码推流的总流程

一、音视频为什么要编码?

音视频编码技术在音视频领域有着举足轻重的地位,这是由于音视频原始数据量较大,在传输的过程中如果不进行编码的话,则无法进行传输。比方说,一张普通的图片的大小大概是1-2M,假设我们传输的帧率是30帧,则相当于一秒钟三十张2M的图片,那这个传输量是不得了的。所以此时我们就要引入视频编码技术进行压缩处理,目前常见的视频压缩技术有H264/H265两种压缩技术(这方面我们后面再慢慢介绍),音频编码技术是AAC,这两种压缩格式可以使得每一帧数据的大小能够压缩100-200倍,这使得传输效率大大提高。

二.音视频编码总体框图

图片

这框图就是音视频从采集到编码到推流的全流程,

  • 2.1.第一步:采集摄像头、麦克风的数据:     编码的第一步基本上都是采集视频、音频的数据,并把采集到的数据送到对应的音视频编码器。视频数据送到H264/H265编码器,音频数据送到AAC编码器,编码处理过后分别送到视频编码队列和音频编码队列。
  • 2.2.第二步:音视频编码数据封装:

         从视频编码队列和音频编码队列拿出数据,并进行音视频的封装,所谓的音视频封装相当于把视频裸流和音频裸流合并在一起成为一个既有视频也有音频的复合流。常见的复合流有flv封装复合流、mpegts封装复合流(这两种具体的区别,在后面会说到)。

  • 2.3.第三步:把复合流推送到对应的流媒体服务器:

       把复合流拿到之后,就每一帧音频和视频数据往对应的流媒体服务器发送数据(这里要注意:不同的流媒体协议,用不同的封装格式。比方说RTMP用的是FLV格式,SRT/RTSP用的是mpegts复合流格式)。

版权声明:本文内容转自互联网,本文观点仅代表作者本人。本站仅提供信息存储空间服务,所有权归原作者所有。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至1393616908@qq.com 举报,一经查实,本站将立刻删除。

(0)

相关推荐

发表回复

登录后才能评论