之前我看到过一家人工智能做算法的企业,用EasyDarwin+FFMPEG做了一个摄像机的模拟器,方法大概是:
- 用ffmpeg读取mp4等类型的视频文件(当然ffmpeg啥都能读取),再以RTSP协议的形式推送给EasyDarwin;
- 再由EasyDarwin输出RTSP流,这种方式就可以做到对于任何类型的视频文件都可以无门槛转换成RTSP流;
- 智能分析服务或者智能分析网关就可以直接请求EasyDarwin输出的RTSP流,做抽帧和智能分析了;
再说一下这种方式的几个弱点:
一、 要跑两个程序,一个是EasyDarwin系统服务,另一个是这个ffmpeg调用的exe;
二、 ffmpeg调用的程序没有做成系统服务,不能在系统重启的时候随系统自启动;
三、 没办法灵活指定要模拟转换的视频文件的名称,或者没办法多路模拟RTSP;
那么,怎么能解决上面说的这几个问题呢?
很好,新版本的EasyDarwin可以,我大概描述一下流程:
第一步:运行EasyDarwin系统安装指令,将EasyDarwin安装成系统服务随系统自启动;
第二步:上传要模拟的视频文件到EasyDarwin,系统会自动将视频文件转换成内置视频源;
第三步:在视频直播中建立视频直播间,视频源就用本地上传的点播文件;
第四步:在播放页就可以看到这个视频源循环输出的RTSP、HTTP等直播流协议;
就这样,一个服务就完成了视频模拟RTSP的全部工作,而且可以做成系统服务,不用担心程序被误关!
最新EasyDarwin下载可以到:www.easydarwin.org