crtmpserver搭建 linux
2016-08-17 19:51
309 查看
2. crtmpserver流媒体服务器的搭建(linux平台)
它的编译与build环境要求先安装一些linux工具
2.1 cmake的安装
下载最新的cmake(http://www.cmake.org/)。
#tar -zxvf cmake-2.8.7.tar.gz
#cd cmake-2.8.7
#./bootstrap
#gmake
#make install
2.2 openssl的安装
下载openssl-0.9.8版(crtmpserver暂只支持这个版本,我用的是openssl-0.9.8t。http://www.openssl.org/)
#tar -zxvf openssl-0.9.8t.tar.gz
#cd openssl-0.9.8t
#./Configure
#make .
#make install
2.3 crtmpserver的编译与安装
#svn co --username anonymous --password "" https://svn.rtmpd.com/crtmpserver/branches/1.0
crtmpserver
#cd crtmpserver
#sh ./cleanup.sh
#cd builders/cmake
#cmake .
#make
#./crtmpserver/crtmpserver ./crtmpserver/crtmpserver.lua
NOTE:
A. 如果make成功,最后一行命令是以“./crtmpserver/crtmpserver.lua”为配置脚本启动“crtmpserver"服务。
B. 最后一行命令的目录是在"builders/cmake"下。
2.4 测试流的接收与分发
最后一行命令执行后,可以看到默认脚本配置下启动的服务和对应的端口。如“RTMP”协议对应的是“1935”端口。
如下所示:
--- --------------- ----- ------------------------- -------------------------
|tcp| 0.0.0.0 |1935| inboundRtmp | appselector|
--- --------------- ----- ------------------------- -------------------------
推送:
可以使用Adobe 的FMLE(Flash Media Live Encoder)给这个服务器推送rtmp流。成功后会有相应的log信息提示。
也可以使用ffmpeg给这个服务器推送rtmp流。成功后会有相应的log信息提示。但是请注意,ffmpeg推送rtmp流给它一定要使用"librtmp"才能成功。使用ffmpeg自带的rtmp推送会导致失败。原因应该是ffmpeg自带的rtmp程序不完整,解析不了第二次握手时服务发送来的包信息。
观看:
推送成功后,用户端就可以用flash播放器或能播放rtmp流的播放器(如http://flv-player.us/index_mdv.php)看你推送的节目啦。
也可以使用像rtmpdump的软件将rtmp流录成文件。
3. 简单的配置修改
有时服务器会对某些端口做限制,这时就需要自己指定端口,如"80"端口。这个需求可以通过修改它的配置脚本“crtmpserver/crtmpserver.lua”来实现。
如要添加“80”端口的"rtmp"服务,可以给“crtmpserver/crtmpserver.lua”添加如下代码。(包含“port=80"的第一层大括号的代码是要添加的)
default=true,
acceptors =
{
{
ip="0.0.0.0",
port=80,
protocol="inboundRtmp"
},
{
ip="0.0.0.0",
port=1935,
protocol="inboundRtmp"
},
...
}
}
重启服务就可以看到端口生效,就可以从“80“接收rtmp流啦。
looking for openssl headers - not found
sudo apt-get install libssl-dev
sudo cmake .后出现如下提示:
-- Check for working CXX compiler: CMAKE_CXX_COMPILER-NOTFOUND
CMake Error: your CXX compiler: "CMAKE_CXX_COMPILER-NOTFOUND" was not found. Please set CMAKE_CXX_COMPILER to a valid compiler path or name.
CMake Error: Internal CMake error, TryCompile configure of cmake failed
-- Check for working CXX compiler: CMAKE_CXX_COMPILER-NOTFOUND -- broken
CMake Error: The C++ compiler "CMAKE_CXX_COMPILER-NOTFOUND" is not able to compile a simple test program.
It fails with the following output:
CMake will not be able to correctly generate this project.
CMake Error: your CXX compiler: "CMAKE_CXX_COMPILER-NOTFOUND" was not found. Please set CMAKE_CXX_COMPILER to a valid compiler path or name.
-- Configuring done
解决办法:
1. sudo apt-get install g++
2. cmake -D CMAKE_CXX_COMPILER="g++" cmake -D CMAKE_BUILD_TYPE=Release -D CMAKE_INSTALL_PREFIX:PATH="/usr/local"
它的编译与build环境要求先安装一些linux工具
2.1 cmake的安装
下载最新的cmake(http://www.cmake.org/)。
#tar -zxvf cmake-2.8.7.tar.gz
#cd cmake-2.8.7
#./bootstrap
#gmake
#make install
2.2 openssl的安装
下载openssl-0.9.8版(crtmpserver暂只支持这个版本,我用的是openssl-0.9.8t。http://www.openssl.org/)
#tar -zxvf openssl-0.9.8t.tar.gz
#cd openssl-0.9.8t
#./Configure
#make .
#make install
2.3 crtmpserver的编译与安装
#svn co --username anonymous --password "" https://svn.rtmpd.com/crtmpserver/branches/1.0
crtmpserver
#cd crtmpserver
#sh ./cleanup.sh
#cd builders/cmake
#cmake .
#make
#./crtmpserver/crtmpserver ./crtmpserver/crtmpserver.lua
NOTE:
A. 如果make成功,最后一行命令是以“./crtmpserver/crtmpserver.lua”为配置脚本启动“crtmpserver"服务。
B. 最后一行命令的目录是在"builders/cmake"下。
2.4 测试流的接收与分发
最后一行命令执行后,可以看到默认脚本配置下启动的服务和对应的端口。如“RTMP”协议对应的是“1935”端口。
如下所示:
--- --------------- ----- ------------------------- -------------------------
|tcp| 0.0.0.0 |1935| inboundRtmp | appselector|
--- --------------- ----- ------------------------- -------------------------
推送:
可以使用Adobe 的FMLE(Flash Media Live Encoder)给这个服务器推送rtmp流。成功后会有相应的log信息提示。
也可以使用ffmpeg给这个服务器推送rtmp流。成功后会有相应的log信息提示。但是请注意,ffmpeg推送rtmp流给它一定要使用"librtmp"才能成功。使用ffmpeg自带的rtmp推送会导致失败。原因应该是ffmpeg自带的rtmp程序不完整,解析不了第二次握手时服务发送来的包信息。
观看:
推送成功后,用户端就可以用flash播放器或能播放rtmp流的播放器(如http://flv-player.us/index_mdv.php)看你推送的节目啦。
也可以使用像rtmpdump的软件将rtmp流录成文件。
3. 简单的配置修改
有时服务器会对某些端口做限制,这时就需要自己指定端口,如"80"端口。这个需求可以通过修改它的配置脚本“crtmpserver/crtmpserver.lua”来实现。
如要添加“80”端口的"rtmp"服务,可以给“crtmpserver/crtmpserver.lua”添加如下代码。(包含“port=80"的第一层大括号的代码是要添加的)
default=true,
acceptors =
{
{
ip="0.0.0.0",
port=80,
protocol="inboundRtmp"
},
{
ip="0.0.0.0",
port=1935,
protocol="inboundRtmp"
},
...
}
}
重启服务就可以看到端口生效,就可以从“80“接收rtmp流啦。
looking for openssl headers - not found
sudo apt-get install libssl-dev
sudo cmake .后出现如下提示:
-- Check for working CXX compiler: CMAKE_CXX_COMPILER-NOTFOUND
CMake Error: your CXX compiler: "CMAKE_CXX_COMPILER-NOTFOUND" was not found. Please set CMAKE_CXX_COMPILER to a valid compiler path or name.
CMake Error: Internal CMake error, TryCompile configure of cmake failed
-- Check for working CXX compiler: CMAKE_CXX_COMPILER-NOTFOUND -- broken
CMake Error: The C++ compiler "CMAKE_CXX_COMPILER-NOTFOUND" is not able to compile a simple test program.
It fails with the following output:
CMake will not be able to correctly generate this project.
CMake Error: your CXX compiler: "CMAKE_CXX_COMPILER-NOTFOUND" was not found. Please set CMAKE_CXX_COMPILER to a valid compiler path or name.
-- Configuring done
解决办法:
1. sudo apt-get install g++
2. cmake -D CMAKE_CXX_COMPILER="g++" cmake -D CMAKE_BUILD_TYPE=Release -D CMAKE_INSTALL_PREFIX:PATH="/usr/local"
相关文章推荐
- Linux 搭建SVN server
- Linux搭建SVN Server
- Redhat Enterprise Linux Server 5.4搭建SVN服务器
- ffmpeg+ffserver搭建流媒体服务器 分类: arm-linux-Ubuntu ffmpeg-SDL-VLC-Live555 TI-AM335X 2015-08-04 09:35 6人阅读 评论(0) 收藏
- RTSP server搭建 for linux(ubuntu),实现RTSP点播
- Linux Server(一)搭建Java、PHP生产环境
- Linux 搭建PXE Server及Kickstart无人值守安装
- fedora搭建crtmpserver
- (总结)CentOS Linux搭建SVN Server配置详解
- CentOS Linux搭建SVN Server配置详解
- 使用live555 在linux下搭建 rtsp server
- CentOS Linux系统搭建SVN server服务
- Linux下搭建DHCP server
- Redhat Enterprise Linux Server 5.4搭建SVN服务器
- 在嵌入式linux下搭建Boa Webserver
- [linux]ubuntu14.04搭建dhcp server
- crtmp----linux下搭建
- 用crtmpserver搭建开源rtmp直播服务
- (总结)CentOS Linux搭建SVN Server配置详解
- Linux搭建使用SSH共享存取的 Git Server