您的位置:首页 > 其它

[流媒体服务器搭建] EasyDarwin服务器搭建及客户端推流完整示例

2016-12-15 23:05 211 查看
Windows下环境搭建

一、准备工作,需要先下载我们需要的程序

1、EasyDarwin 下载地址:https://github.com/EasyDarwin/EasyDarwin

2、ffmpeg 下载地址:http://ffmpeg.org/

3、nginx 下载地址:http://nginx.org/en/download.html

二、搭建WEB服务

1、修改nginx配置文件,

一个是WEB服务监听的端口,之后EasyDarwin服务端会用到;

另一个是WEB服务根目录,也是HLS切片和视频存放的位置。为了测试方便新建一个test.txt文件,里面随便录入内容,如:good luck

2、启动WEB服务

开启命令:start nginx.exe

停止命令:nginx.exe -s stop

三、编译源程序,修改配置文件

1、编译下载下来的EasyDarwin,用VS 打开 .\EasyDarwin-master\EasyDarwin\WinNTSupport\EasyDarwin.sln,编译。正常情况下不会出错,如果出错了检查下是否丢失文件。

2、拷贝必要动态库到运行目录下,将EasyDarwin-master\EasyDarwin\Lib下所有文件拷贝到你的运行目录下,默认是\EasyDarwin-master\EasyDarwin\WinNTSupport\Debug

3、手动新建目录,在运行目录下,新建目录 Movies(存放视频文件和切片等) 和 Logs(日志目录)

4、修改配置文件,

HTTP_ROOT_DIR是WEB服务地址;LOCAL_IP_ADDRESS是服务器IP地址

如果是采用HLS,需要将参数设置为true。

其他的一些参数可以根据个人需要做修改。

四、系统测试

1、首先启动WEB服务(命令:start nginx.exe),浏览器中访问:http://192.168.1.107:8088/test.txt,如果没看到”good
luck“,那就在检查下端口是否被占用(命令:netstat -ano)。

2、启动EasyDarwin服务器(命令:EasyDarwin.exe -d -c easydarwin.xml)

启动成功后,输出是这样子,说明运行的动态库加载,端口设置都没有问题。(EasyDarwin服务器端口是554,有可能和系统的一个media服务冲突,需要关闭掉此服务)

3、启动ffmpeg.exe,开始推流

推流命令:E:\ffmpeg\bin>ffmpeg.exe -i rtsp://192.168.1.100:10554/udp/av0_1 -vcodec
copy -acodec copy -rtsp_transport tcp -f rtsp rtsp://192.168.1.107/live2.sdp

注:rtsp://192.168.1.100:10554/udp/av0_1,是我们IPCamera的RTSP地址;

后面rtsp://192.168.1.107/live2.sdp 是我们推送到服务端,用于外部访问的RTSP地址;

正常情况下FFMPEG输出是这样的,说明推送成功。

4、验证推送的视频流

测试RTSP地址:用客户端程序VLC或者EasyPlayer,打开地址 rtsp://192.168.1.107/live2.sdp

测试HLS地址:

可以先请求获得真正的HLS地址,再访问。(请求链接:http://192.168.1.107:8081/api/easyhlsmodule?name=live&url="RTSP://192.168.1.107/live2.sdp")

再用客户端程序VLC或者EasyPlayer,打开地址 http://192.168.1.107:8088/live/live.m3u8
LINUX系统上除了EasyDarwin编译不同,其他配置基本是一样的,之后我再把LINUX上需要的命令都贴下。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: