rtmp协议详解
2016-07-06 15:25
232 查看
rtmp协议介绍
rtmp(Real Time Messaging Protocol)实时消息传送协议是Adobe Systems公司为Flash播放器和服务器之间音频、视频和数据传输开发的私有协议。
它有三种变种:
1. 工作在TCP之上的明文协议,使用端口1935;2. RTMPT封装在HTTP请求之中,可穿越防火墙;3. RTMPS类似RTMPT,但使用的是HTTPS连接;RTMP协议就像一个用来装数据包的容器,这些数据可以是AMF格式的数据,也可以是FLV中的视/音频数据。一个单一的连接可以通过不同的通道传输多路网络流。这些通道中的包都是按照固定大小的包传输的。
RTMP交互图现在主要有两种rtmp server,商业的和开源的。商业的比开源的支持的功能多商业的有FMS Wowza
FMS是Adobe公司的产品,license非常昂贵。下面就wowza这个商业软件讲下流媒体Server,不仅仅是RTMP Server,在达到生产环境所需要的功能。wowza最突出的特定是多终端适应性,这个在如今多媒体融合的网络环境下有很强的实用意义。究其原理并无深入研究。国内尚为视讯是其代理公司。Wowza Media Server是一款高性能、多线程的流媒体服务器软件。专为多种终端设备提供音视频内容播放服务,支持iOS、windows、Android、BlackMerry等系统的终端设备,以HTTP、RTSP/ RTP、RTMP传输协议的流播放,还支持利用机顶盒进行播放的IPTV。开源RTMP serverred5 java 有名
crtmpserver c++ 支持多种rtmp协议,移动设备以及IPTV相关网络协议; Erlyvideo erlong有开源和商业版本
aXeVideo haXe 一个实验性的,轻量级的服务器
FluorineFx .Net To be defined
nginx-rtmp c nginx模块,支持rtmp和HLS
Nginx rtmp功能点支持音视频直播
支持flv/mp4视频格式,输入可以是文件或者HTTP流
支持两种流的分发模式 push and pull
可以将直播流录制成flv文件
H264/AAC编码
支持在线转码 Online transcoding with FFmpeg
支持HLS (HTTP LiveStreaming)需要 libavformat (>= 8. 53.31.100) from ffmpeg (ffmpeg.org)
HTTP callbacks (publish/play/record/update etc)
支持外部程序(exec)
HTTP control module for recording audio/video and dropping clients
先进内存控制技术,可以在使用少量内存的情况下完成流畅的直播功能。
可以和以下协同工作。FMS server(Wirecast, FMS, Wowza,)Player(JWPlayer, FlowPlayer, StrobeMediaPlayback,)外部程序(ffmpeg,avconv,rtmpdump,flvstreamer )
Statistics in XML/XSL in machine- & human- readable form
支持跨平台 Linux/FreeBSD/MacOS
项目地址:https://github.com/arut/nginx-rtmp-module
nginx-rtmp-module Directives:https://github.com/arut/nginx-rtmp-module/wiki/Directives总的来说Nginx-rtmp是个比较轻量的项目,可以满足直播的采集,编码和分发工作,该项目丰富的完善了nginx对视频的支持,特别的nginx-rtmp实现了对HLS的支持。
rtmp(Real Time Messaging Protocol)实时消息传送协议是Adobe Systems公司为Flash播放器和服务器之间音频、视频和数据传输开发的私有协议。
它有三种变种:
1. 工作在TCP之上的明文协议,使用端口1935;2. RTMPT封装在HTTP请求之中,可穿越防火墙;3. RTMPS类似RTMPT,但使用的是HTTPS连接;RTMP协议就像一个用来装数据包的容器,这些数据可以是AMF格式的数据,也可以是FLV中的视/音频数据。一个单一的连接可以通过不同的通道传输多路网络流。这些通道中的包都是按照固定大小的包传输的。
RTMP交互图现在主要有两种rtmp server,商业的和开源的。商业的比开源的支持的功能多商业的有FMS Wowza
FMS是Adobe公司的产品,license非常昂贵。下面就wowza这个商业软件讲下流媒体Server,不仅仅是RTMP Server,在达到生产环境所需要的功能。wowza最突出的特定是多终端适应性,这个在如今多媒体融合的网络环境下有很强的实用意义。究其原理并无深入研究。国内尚为视讯是其代理公司。Wowza Media Server是一款高性能、多线程的流媒体服务器软件。专为多种终端设备提供音视频内容播放服务,支持iOS、windows、Android、BlackMerry等系统的终端设备,以HTTP、RTSP/ RTP、RTMP传输协议的流播放,还支持利用机顶盒进行播放的IPTV。开源RTMP serverred5 java 有名
crtmpserver c++ 支持多种rtmp协议,移动设备以及IPTV相关网络协议; Erlyvideo erlong有开源和商业版本
aXeVideo haXe 一个实验性的,轻量级的服务器
FluorineFx .Net To be defined
nginx-rtmp c nginx模块,支持rtmp和HLS
Nginx rtmp功能点支持音视频直播
支持flv/mp4视频格式,输入可以是文件或者HTTP流
支持两种流的分发模式 push and pull
可以将直播流录制成flv文件
H264/AAC编码
支持在线转码 Online transcoding with FFmpeg
支持HLS (HTTP LiveStreaming)需要 libavformat (>= 8. 53.31.100) from ffmpeg (ffmpeg.org)
HTTP callbacks (publish/play/record/update etc)
支持外部程序(exec)
HTTP control module for recording audio/video and dropping clients
先进内存控制技术,可以在使用少量内存的情况下完成流畅的直播功能。
可以和以下协同工作。FMS server(Wirecast, FMS, Wowza,)Player(JWPlayer, FlowPlayer, StrobeMediaPlayback,)外部程序(ffmpeg,avconv,rtmpdump,flvstreamer )
Statistics in XML/XSL in machine- & human- readable form
支持跨平台 Linux/FreeBSD/MacOS
项目地址:https://github.com/arut/nginx-rtmp-module
nginx-rtmp-module Directives:https://github.com/arut/nginx-rtmp-module/wiki/Directives总的来说Nginx-rtmp是个比较轻量的项目,可以满足直播的采集,编码和分发工作,该项目丰富的完善了nginx对视频的支持,特别的nginx-rtmp实现了对HLS的支持。
相关文章推荐
- 使用IIS Live Smooth Streaming技术搭建流媒体直播系统
- 用Windows Media Service打造的流媒体直播系统
- 为Nginx添加mp4流媒体支持
- 使用Python的Flask框架实现视频的流媒体传输
- Nginx搭建流媒体FLV视频服务器配置示例
- [总结]RTMP流媒体技术零基础学习方法
- nginx轻松搭建自己的flv流媒体服务器
- 移动直播的悖论,这是我不看好直播平台的六个理由
- 苹果收购Beats的交易,遭遇了五大障碍
- 顺序 IO 和 随机 IO
- 流媒体服务器网上最完全图解
- 微软新补丁软件再出故障 这次与流媒体有关
- 【Anychat音视频开发】视频直播系统的开发技术点
- 即时通讯AnyChat之移动流媒体的简介
- 流媒体Helix Server详细linux安装,配置
- 3GPP移动流媒体服务技术规范概述
- Linux 下五款出色的流媒体客户端
- 网络负载平衡群集(组图)
- 流媒体直播是什么?
- P2p视频直播与远程监控有什么区别?