CRTMP简介
crtmpserver(C++ RTMP Server)是高性能的流媒体服务器,支持以下协议(直播或录制):
- 支持Flash(RTMP,RTMPE,RTMPS,RTMPS,RTMPT,RTMPTE)
- 支持嵌入式设备:iPhone,Android
- 支持监控摄像机
- 支持IP-TV(MPEG-tS,RTSP/RTCP/RTP)
此外,crtmpserver可以作为高性能
rendes-vous服务器,可以让你做:
- 音视频会议
- 在线游戏
- 在线协作
- 简单/复杂的聊天应用
crtmpserver不同之处
- 支持多种流媒体技术之间的通信(Adobe flash, Apple streaming, Silverlight, etc)
- 高性能,并发几千路连接
- 占用资源少
- 可移植性强,只要GCC支持,crtmpserver可以运行在: IP cameras, Android, ARM or MIPS based systems, SoC, etc
- 依赖少:lua, openssl
注:引自http://blog.chinaunix.net/uid-26000296-id-3776089.html
crtmp的目录结构:
1. 顶层(crtmpserver/) 下的文件夹结构
3rdparty/ : 对lua, xml进行解析的源代码文件夹
sources/ : 项目的核心实现源代码文件夹
builders/ : 各种环境(VS2010, android, linux)下的项目生成
configs/ : 一些预定义的配置文件和示例启动脚本
docs/ : 项目相关的文档
man/ : crtmpserver的man文档
appscaffold/ : 创建自定义APP的方法
constants/ : 项目的常量配置文件
media/ : 用于播放的媒体素材文件夹
cleanup.sh : 清除所有生成的项目
README : 指导如何编译、安装和使用crtmpserver
LICENSE : 版权声明
2. crtmpserver/3rdparty/
lua-dev/ : 解析lua型的配置文件
tinyxml/ : 解析xm工l型的配置文件
3. crtmpserver/docs/
ApplicationProtocols.doc : crtmpserver支持的协议详细
keepalive.txt : TCP的keep live 功能说明
startup_script_rtmpd : 一个启动,停止rtmpserver的shell脚本
architecture.txt : 协议链的介绍
RTMPEHandshake.pdf : crtmpserver在握手时的详细数据定义
stream_from_vlc.txt : 和VLC相关的一个配置
config.doxy : 配置项目的说明
server.xlsx : crtmpserver在握手时的详细数据定义
diagrams.cdd
simpleLive/ : 播放器的页面示例
3rdparty/ : 对lua, xml进行解析的源代码文件夹
sources/ : 项目的核心实现源代码文件夹
builders/ : 各种环境(VS2010, android, linux)下的项目生成
configs/ : 一些预定义的配置文件和示例启动脚本
docs/ : 项目相关的文档
man/ : crtmpserver的man文档
appscaffold/ : 创建自定义APP的方法
constants/ : 项目的常量配置文件
media/ : 用于播放的媒体素材文件夹
cleanup.sh : 清除所有生成的项目
README : 指导如何编译、安装和使用crtmpserver
LICENSE : 版权声明
2. crtmpserver/3rdparty/
lua-dev/ : 解析lua型的配置文件
tinyxml/ : 解析xm工l型的配置文件
3. crtmpserver/docs/
ApplicationProtocols.doc : crtmpserver支持的协议详细
keepalive.txt : TCP的keep live 功能说明
startup_script_rtmpd : 一个启动,停止rtmpserver的shell脚本
architecture.txt : 协议链的介绍
RTMPEHandshake.pdf : crtmpserver在握手时的详细数据定义
stream_from_vlc.txt : 和VLC相关的一个配置
config.doxy : 配置项目的说明
server.xlsx : crtmpserver在握手时的详细数据定义
diagrams.cdd
simpleLive/ : 播放器的页面示例
4. /crtmpserver/sources/
androidapplestreaming/ : 和andriod, apple的移动设备流生成相关
common/
thelib/
vm/
applications/
crtmpserver/
tests/
trafficdissector/
vmtests/