艾克斯记事

好用的流媒体服务器支持HTTP-FLV、RTMP、HLS、DASH

  最近接了一个项目,其中一个需要是需要远程设备的视频要实时回传到客户端,只能通过TCP传输,经过一番讨论后,决定采取FFmpeg + Nginx +Nginx-HTTP-FLV +FLV.JS实现视频实时回传。

接口开发语言选择

  在测试了远程设备的实际系统环境后,决定采用Python开发接口控制设备,通过Nginx反向代理后对外提供服务。

实际上我个人更加倾向与使用GO作为开发语言,但是甲方爸爸要求开放源代码,所以决定干脆就采用Python吧,这样他们后续在维护几二次开发上会更加方便。

视频回传方式

  由于视频回传被限制在TCP范围内,同时需要支持网页播放,经过一番考量之后,选择HTTP-FLV方式做视频回传,及满足了实时性,又满足了网页播放(实测目前只能在谷歌浏览器上使用)

流媒体服务器配置

  甲方希望流媒体服务器能部署在远程设备上,这样这个设备可以不依赖服务器就可以独立工作,选来选去,最终决定采用NGINX + NGINX-HTTP-FLV模块来实现。

最终实现

最终实现通过一个WEB页面查看实时视频,并控制远程设备执行一些操作;