当前位置 : 主页 > 编程语言 > java >

项目中直播实现的原理解析

来源:互联网 收集:自由互联 发布时间:2022-10-26
项目中直播实现的原理解析 最近项目中涉及到了直播这快的内容,所以针对平时开发中的问题以及采用的技术做一波分享,希望对大家有所帮助。 1、直播视频从技术架构角度主要分为

项目中直播实现的原理解析

最近项目中涉及到了直播这快的内容,所以针对平时开发中的问题以及采用的技术做一波分享,希望对大家有所帮助。

1、直播视频从技术架构角度主要分为三个部分:

直播视频采集SDK=>直播CDN(也即直播流分发加速)=》直播视频播放器SDK

2、音视频处理的一般流程:

数据采集→数据编码→数据传输(流媒体服务器) →解码数据→播放显示

1、数据采集:

摄像机及拾音器收集视频及音频数据,此时得到的为原始数据,要用到摄像机和拾音器。

2、数据编码:

使用相关硬件或软件对音视频原始数据进行编码处理(数字化)及加工(如音视频混合、打包封装等),得到可用的音视频数据,编码的方式:CBR、VBR,编码格式分为音频和视频,音频一般有MP3、OGG、AAC,视频一般有TS、MKV、AVI、MP4等。

3、数据传输:

将编码完成后的音视频数据进行传输,早期的音视频通过同轴电缆之类的线缆进行传输,IP网络发展后,使用IP网络优传输

涉及技术或协议:

传输协议:RTP与RTCP、RTSP、RTMP、HTTP、HLS(HTTP Live Streaming)等

控制信令:SIP和SDP、SNMP等

4、解码数据:

使用相关硬件或软件对接收到的编码后的音视频数据进行解码,得到可以直接显示的图像/声音

涉及技术或协议:

一般对应的编码器都会带有相应的解码器,也有一些第三方解码插件等

5、播放显示:

在显示器(电视、监视屏等)或扬声器(耳机、喇叭等)里,显示相应的图像画面或声音

涉及技术或协议:

显示器、扬声器、3D眼镜等

上一篇:get和post的区别
下一篇:没有了
网友评论