RTSP基础之EasyDarwin流媒体转发环境搭建

这里只是最基本EasyDarwin配置,Windows版本EasyDarwin,配置基本完成,下载地址:点这里,下载完把EasyDarwin-Windows-x86_64解压到windows中。

1.启动EasyDarwin,运行EasyDarwin/start.bat启动EasyDarwin。或者右键以管理员身份运行install service.bat,安装EasyDarwin服务,以服务方式运行EasyDarwin。

2.运行nginx/nginx.exe 。

3.通过http://ip:10080 登录EasyDarwin web后台,默认账号admin,密码admin。

4.本地有个大华IPC,通过ffmpeg向EasyDarwin推流,EasyDarwin对UDP方式推流支持不好,反正用UDP推流总是失败。

命令:

 ffmpeg.exe -i “rtsp://admin:1234qwer@192.168.1.100:554/cam/realmonitor?channel=1&subtype=1”  

-vcodec copy -acodec copy -rtsp_transport tcp -f rtsp rtsp://192.168.1.108:554/live.sdp 

 5.拉流客户端采用EasyPlayer,播放结果成功。

 

问题: 

1. 拉流客户端的问题,这里的拉流客户端采用EasyPlayer,播放时成功的。但是采用VLC拉流,Describe后服务器返回500错误,采用testRtspclient播放也是成功的。可能是EasyDarwin做了限制,这句报文做了限制“User-Agent: LibVLC/2.2.4 (LIVE555 Streaming Media v2016.02.22)”,比较了一下三种拉流客户端的报文如下。

 EasyPlayer

OPTIONS rtsp://192.168.1.108:554/live.sdp  RTSP/1.0
CSeq: 2
User-Agent: EasyRTSPClient v1.0.16.0909 (RTSPClient v2016.05.20)

RTSP/1.0 200 OK
Server: EasyDarwin/7.3 (Build/17.0325; Platform/Win32; Release/EasyDarwin; State/Development; )
Cseq: 2
Public: DESCRIBE, SETUP, TEARDOWN, PLAY, PAUSE, OPTIONS, ANNOUNCE, RECORD

DESCRIBE rtsp://192.168.1.108:554/live.sdp  RTSP/1.0
CSeq: 3
User-Agent: EasyRTSPClient v1.0.16.0909 (RTSPClient v2016.05.20)
Accept: application/sdp

RTSP/1.0 200 OK
Server: EasyDarwin/7.3 (Build/17.0325; Platform/Win32; Release/EasyDarwin; State/Development; )
Cseq: 3
Cache-Control: no-cache
Content-length: 331
Date: Tue, 13 Nov 2018 08:06:59 GMT
Expires: Tue, 13 Nov 2018 08:06:59 GMT
Content-Type: application/sdp
x-Accept-Retransmit: our-retransmit
x-Accept-Dynamic-Rate: 1
Content-Base: rtsp://192.168.1.108:554/live.sdp/

v=0
o=- 0 0 IN IP4 127.0.0.1
s=Media Server
c=IN IP4 0.0.0.0
t=0 0
a=tool:libavformat 57.71.100
a=control:*
m=video 0 RTP/AVP 96
a=rtpmap:96 H264/90000
a=fmtp:96 packetization-mode=1; sprop-parameter-sets=Z2QAHqw0ygsBJ/wFuCgoKgAAB9AAAYah0MALFAALE9d5caGAFigAFieu8uFA,aO48MA==; profile-level-id=64001E
a=control:trackID=0
SETUP rtsp://192.168.1.108:554/live.sdp/trackID=0 RTSP/1.0
CSeq: 4
User-Agent: EasyRTSPClient v1.0.16.0909 (RTSPClient v2016.05.20)
Transport: RTP/AVP/TCP;unicast;interleaved=0-1

RTSP/1.0 200 OK
Server: EasyDarwin/7.3 (Build/17.0325; Platform/Win32; Release/EasyDarwin; State/Development; )
Cseq: 4
Cache-Control: no-cache
Session: 74599286964378
Date: Tue, 13 Nov 2018 08:06:59 GMT
Expires: Tue, 13 Nov 2018 08:06:59 GMT
Transport: RTP/AVP/TCP;unicast;interleaved=0-1

PLAY rtsp://192.168.1.108:554/live.sdp/ RTSP/1.0
CSeq: 5
User-Agent: EasyRTSPClient v1.0.16.0909 (RTSPClient v2016.05.20)
Session: 74599286964378
Scale: 0.000000
Range: npt=0.000-

RTSP/1.0 200 OK
Server: EasyDarwin/7.3 (Build/17.0325; Platform/Win32; Release/EasyDarwin; State/Development; )
Cseq: 5
Session: 74599286964378
Range: npt=now-
RTP-Info: url=rtsp://192.168.1.108:554/live.sdp/live.sdp

VLC

OPTIONS rtsp://192.168.1.108:554/live.sdp+ RTSP/1.0
CSeq: 2
User-Agent: LibVLC/2.2.4 (LIVE555 Streaming Media v2016.02.22)

RTSP/1.0 200 OK
Server: EasyDarwin/7.3 (Build/17.0325; Platform/Win32; Release/EasyDarwin; State/Development; )
Cseq: 2
Public: DESCRIBE, SETUP, TEARDOWN, PLAY, PAUSE, OPTIONS, ANNOUNCE, RECORD

DESCRIBE rtsp://192.168.1.108:554/live.sdp+ RTSP/1.0
CSeq: 3
User-Agent: LibVLC/2.2.4 (LIVE555 Streaming Media v2016.02.22)
Accept: application/sdp

RTSP/1.0 500 Internal Server Error
Server: EasyDarwin/7.3 (Build/17.0325; Platform/Win32; Release/EasyDarwin; State/Development; )
Cseq: 3
Connection: Close

 testRtspclient

DESCRIBE rtsp://192.168.1.108:554/live.sdp RTSP/1.0
CSeq: 2
User-Agent: testRTSPClient.exe (LIVE555 Streaming Media v2016.05.18)
Accept: application/sdp

RTSP/1.0 200 OK
Server: EasyDarwin/7.3 (Build/17.0325; Platform/Win32; Release/EasyDarwin; State/Development; )
Cseq: 2
Cache-Control: no-cache
Content-length: 331
Date: Tue, 13 Nov 2018 08:19:06 GMT
Expires: Tue, 13 Nov 2018 08:19:06 GMT
Content-Type: application/sdp
x-Accept-Retransmit: our-retransmit
x-Accept-Dynamic-Rate: 1
Content-Base: rtsp://192.168.1.108:554/live.sdp/

 2. ffmpeg推流采用UDP的方式,好像ffmpeg会崩溃,提示“av_interleaved_write_frame() Broken Pipe”,网上说ffmpeg发送报文超时出错,网络状况差的情况超时,需要放大ffmepg超时时间,目前好像是800MS,但是没有测试过。

EasyDarwin CSDN 下载地址:点击下载

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值