流媒体技术学习笔记之(十一)Windows环境运行EasyDarwin
Github下载
下载地址:https://github.com/EasyDarwin/EasyDarwin/releases
解压安装
选择Windows 安装平台的安装包(下载解压)
把解压生成的文件夹重命名放在本地磁盘,我这里测试放在E盘:
介绍其中的来个批处理文件:
start.bat
Windows调试运行(这个批处理文件是用来做测试Debug服务的,下载安装包的时候已经自带好了)
server.bat
Windows服务方式运行(这个是我自己新建的)
脚本代码:
cd ./ set curPath="%cd%" echo service path:%curPath% sc create EasyDarwin binPath= "%curPath%\EasyDarwin.exe -c %curPath%\easydarwin.xml" start= auto sc failure EasyDarwin reset= 0 actions= restart/0 net start EasyDarwin pause
运行EasyDarwin
参考文档:https://github.com/EasyDarwin/EasyDarwin/tree/master/EasyDarwin
Windows调试运行:(开发环境)
直接运行start.bat,出现该界面表示运行成功:
推模式转发
格式:RTSP://[ip]:[rtsp_port]/EasyRelayModule?name=[relayName]&url="[RTSP_URL]"
案例:RTSP://192.168.18.73/EasyRelayModule?name=test&url="rtsp://192.168.18.240:554/onvif/live/1"
案例参数说明:
1、192.168.18.73:为本地局域网地址
2、rtsp://192.168.18.240:554/onvif/live/1:摄像头地址
3、 VLC播放器测试,打开网络串流吗输入以上案例测试地址:
RTSP://192.168.18.73/EasyRelayModule?name=test&url="rtsp://192.168.18.240:554/onvif/live/1"
4、 测试播放结果:
5、在CMD命令行模式检测结果(这里事先开启了Debug模式)
Debug模式开启,在配置文件easydarwin.xml中修改false为true
!!!注意:记得重新启动服务哦!(EasyDarwin.exe -c ./easydarwin.xml -d)
Windows服务方式运行:(生产环境)
- 直接运行server.bat
- 查看服务是否启动 命令行运行:services.msc
- 查看服务状态
- 开始一个服务 net start EasyDarwin
- 停止一个服务 net stop EasyDarwin
- 删除一个服务 sc delete EasyDarwin
三、FFMpeg推送摄像机视频到EasyDarwin
说明:FFmpeg推送,EasyDarwin转发,vlc播放,实现整个RTSP直播
- 测试地址:
ffmpeg -i "rtsp://192.168.18.240:554/onvif/live/1" -vcodec copy -acodec copy -rtsp_transport tcp -f rtsp "rtsp://192.168.18.73/test.sdp"
- 在Cmd命令行运行上面命令
前提是你必须在本地机已经安装好Windows 版本的FFmpeg编码器。
- 推流结果:
- VLC播放地址:rtsp://192.168.18.73/test123.sdp,
- 测试结果:
- Debug命令行输出信息
三、配置文件介绍
- RTSP服务器端口
<LIST-PREF NAME="rtsp_port" TYPE="UInt16" > <VALUE>554</VALUE> </LIST-PREF>
- 缓存模式:网络抖动,不应该设置为0
<PREF NAME="reflector_buffer_size_sec" TYPE="UInt32" >1</PREF>
- 拉取模式IP地址配置
<PREF NAME="local_ip_address" >服务器本机IP地址</PREF>
- 监听后台端口
<PREF NAME="http_port" TYPE="UInt16" >8088</PREF>
- 配置分发HLS服务器配置
<MODULE NAME="EasyHLSModule" > <PREF NAME="HTTP_ROOT_DIR" >http://www.easydarwin.com:8989/</PREF> <PREF NAME="M3U8_VERSION" TYPE="UInt32" >3</PREF> <PREF NAME="ALLOW_CACHE" TYPE="Bool16" >false</PREF> <PREF NAME="TARGET_DURATION" TYPE="UInt32" >4</PREF> <PREF NAME="PLAYLIST_CAPACITY" TYPE="UInt32" >4</PREF> </MODULE>
- 后台管理查看配置文件
注意:Mongoose端口就是后台访问端口,例如在这里设置的8888,则在本地浏览器打开的时候访问以下url地址:http://127.0.0.1:8888/index.html (正确路径)
- 发送的
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构