想做好直播间搭建,推流与拉流的详细过程你都知道吗

2020-07-27 17:37:58 浏览数 (1)

直播间搭建的成功离不开基本的流媒体传输,随着网络技术的不断提高,对音视频传输的质量与速度要求也不断提高,想做好一套直播系统,推流与拉流的详细过程原理你都知道吗?

一、推流端

直播间搭建推流端即主播使用的终端设备。

1、iOS手机端。

2、Android手机端。

3、PC电脑端。

二、推流的过程

1.通过摄像头或录屏功能进行视频采集用于直播间搭建。

2.通过话筒进行音频采集,音频原始数据格式:PCM。

3.将视频文件编码,视频格式从YUV(RGB)变为H.264(H.265)。

将音频文件编码,视频格式从YUV(RGB)变为H.264(H.265)。

4.将音频文件编码,音频格式从PCM变为AAC。

5.将视颊与音频文件编码为有“流媒体”特性的多媒体容器格式(Multimedia Container Format),此时音颊和视频(H.264和AAC)结合成了FLV或TS或RTMP Packet,这要视传输协议的规定而定)。

6.选择一种向服务器推流的协议(“流”即“有流媒体特性的多媒体容器格式的文件”),应用层协议:HLS;RTSP;RTMP,传输层协议:RTCP、RTP,网络层协议:RSVP。

7.传入推流地址(URL)来定位我们的推流目标(即将流媒体发送给「谁」)然后开始推流,直播间搭建中比如你在斗鱼当主播,OBS中的推流地址就写斗鱼的,你要是在六间房当程序员,程序中默认的推流地址就写六间房的。

三、服务器

1、服务器在下不是很熟悉,简要说一下其最基木功能:生成拉流URL(用户可以使用该URL拉流,从而观看直播)。

2、并且服务器还需要有其他功能:如转码、录制、截图、鉴黄。

四、拉流

1、直播间搭建通过某种渠道获取拉流URL(或者叫播放URL),并选取一种从服务器拉流的协议,然后开始拉流应用层协议:HLS;RTSP;RTMP,传输层协议:RTCP、RTP,网络层协议:RSVP。

2、将处于「多媒体容器格式」的流解复用成为「视频编码格式」的视颊数据(如H.264)和「音频编码格式」的音频数据(如AAC)。

3、使用硬解码(GPU解码 CPU辅助)或软解码(CPU解码)解码后视频数据格式为YUV或RGB,音频数据格式为PCM解码后视频数据格式为YUV或RGB,音频数据格式为PCM。

4.执行音画同步操作。

5.将同步后的音频(PCM)送到音频输出设备播放。

将同步后的视频(YUV或RGB)送到视频输出设备播放。

上述就是关于直播间搭建会用到的关于推流和拉流的过程原理,看似复杂的操作步骤,实则都是为了数据传输的稳定与完整,带给用户更加完美的体验。

以上内容为作者"云豹短视频嘉兴“ 原创,未经作者本人同意,禁止转载,否则将追究相关法律责任

0 人点赞