直播源代码搭建过程中的常用协议及模块划分种类

简介:

直播源代码常用协议:
RTMP协议,该协议与TCP是一个协议组,包括RTMP基本协议及RTMP/RTMPS/RTMPE等多种变种。RTMP协议主要用于实时数据通信的网络技术协议,目前RTMP协议还需要依靠播放器中的flash插件实现流媒体播放。
现在的直播平台用flash插件播放的已经很少了,毕竟到今年年底,flash插件就无法再使用。现在直播平台播放用到最多的是HTML5播放格式,这类格式对编解码要求小,能用最少的流量传递原视频质量。HTML5多用在网页端直播,软件类直播还是用RTMP居多。
根据运营商不同,Android端和iOS端使用的协议也不一样
iOS端多用HLS协议,HLS苹果动态码率的自适应技术,主要用户PC端和苹果终端的音视频服务,包括m3u8的索引文件和key加密串文件

直播源代码模块划分种类:
视频录制端。一般是指电脑上的音视频输入设备或手机端摄像头、麦克风,目前以移动端的手机视频为主,技术:webRTC
视频播放端。可以是电脑上的播放器,手机端的Native播放器,还有就是H5的video标签等,目前还是以手机端的Native播放器为主。技术:HLS协议或RTMP协议(用途:视频播放)、ffmpeg(用途:使用RTMP协议时负责移动端视频的解码)
视频服务器端。一般是一台nginx服务器,用来接受视频录制端提供的视频源,同时提供给视频播放端流服务。技术:RTMP协议(用途:上传视频流)、nginx rtmp-module或SRS(simple-rtmp-server)(用户:留服务器)

以上直播源代码的模块分类和播放协议仅为部分,具体选择还要看运营商的需求和平台搭建的需求。
本文已声明云豹原创,转载请注明出处。

目录
相关文章
|
7月前
|
Java 数据库 Maven
SpringBootWebProject学习3、各类包层级说明
SpringBootWebProject学习3、各类包层级说明
37 1
|
8月前
|
前端开发 算法 JavaScript
【新手解答3】深入探索 C 语言:头文件提供必要的接口、源文件保持实现细节的私有性 + 进一步学习的方向 + 如何快速编写程序并最终能制作小游戏
【新手解答3】深入探索 C 语言:头文件提供必要的接口、源文件保持实现细节的私有性 + 进一步学习的方向 + 如何快速编写程序并最终能制作小游戏
145 0
|
Cloud Native 前端开发
【性能优化上】第三方组织结构同步优化一,分状态,分步骤的设计,你 get 到了吗?
【性能优化上】第三方组织结构同步优化一,分状态,分步骤的设计,你 get 到了吗?
|
计算机视觉
队列的概念及结构(内有成型代码可供CV工程师参考)
队列的概念及结构(内有成型代码可供CV工程师参考)
78 0
|
数据采集 算法 数据可视化
MMdetection框架速成系列 第03部分:简述整体构建细节与模块+训练测试模块流程剖析+深入解析代码模块与核心实现
按照抽象到具体方式,从多个层次进行训练和测试流程深入解析,从最抽象层讲起,到最后核心代码实现,希望帮助大家更容易理解 MMDetection 开源框架整体构建细节
616 0
|
Linux
Linux驱动开发 数据的传输和辅助信息的作用
Linux驱动开发 数据的传输和辅助信息的作用
159 0
|
程序员
软件基本功:不会代码共用,因为没有设计能力;代码共用都不会,谈什么设计
软件基本功:不会代码共用,因为没有设计能力;代码共用都不会,谈什么设计
140 0
|
Web App开发 移动开发 网络协议
直播平台搭建划分的模块和用到的协议
视频录制端,一般是电脑上的音视频输入设备或手机端摄像头、麦克风,目前以移动端的手机视频为主
747 0
直播平台搭建划分的模块和用到的协议
根据不同环境需求来选择合适的光模块?
随着信息化的高速发展,光通信应用已经越来越普及,大到远距离的高速骨干网、小到光纤宽带入户,光纤凭借大容量高速传输优势愈来愈发挥着更大的作用。有光纤的地方就离不开光模块,光模块的选择选购也成为一线工程技术人员或者采购人员关注的问题。
1497 0
|
Windows
直播系统中使用SEI传输用户自定义数据方案讨论
      在直播系统中,除了直播音视频之外,有时候还想从主播端发布文本信息等,这些信息可以不通过视频传输通道发送给用户播放端,但如果传输的数据想和视频保持精准同步,那最好的办法就是这些信息和视频数据打包在一起传输, 通过h264 sei方式就可以把数据放入h264 Access Unit中传输。
1641 0