rtmp学习记录(3) 项目需求

说说项目的实际需求吧,

项目用的是天地伟业的录像机,我们用unity创建大楼三维场景,并对接视频。

实时视频用rtsp从录像机取,没问题。历史视频(视频回放,playback)我原本以为也能用rtsp取,仅仅是url地址中加上时间参数,谁找到不支持,根据查到的资料,海康威视和宇视支持这种回放,其他场景不支持。

参考:最新海康摄像机、NVR、流媒体服务器、回放取流RTSP地址规则说明(https://www.jianshu.com/p/7fa312f168f8

海康的回放url规则

然后天地伟业提供的sdk的接口是用句柄获取

NetClient_PlayBack
录像回放

int __stdcall NetClient_PlayBack(
  unsigned int*		_ulConID,
  int			_iCmd,
  PlayerParam*		_PlayerParam,
  void*			_hWnd
);
Parameters
_ulConID 
[out] 连接ID。 
_iCmd 
[in] 配置命令,参见配置命令。 
_PlayerParam 
[in] 下载回放参数。 
_hWnd 
[in] 播放窗口句柄。 
Return Values
0:成功。

<0:操作失败,通过GetLastError获得错误码信息

句柄在unity中是无法使用的,码流的话还有办法(以前对接海康的sdk,码流在unity中解析也好累,同事做的)。

通过前面的学习,以及想到他提供视频下载的功能,那我是不是可以在服务端下载视频,服务端电脑搭建rtmp服务器,把下载的视频通过ffmpeg推到rtmp服务器上,用HLS在unity中取刚刚的文件。

但是现在有问题,视频监控下载下来的文件是sdv格式(换式视频广播,英文全称是Switch Digital Video, 以下简称SDV)。然后我没有查到能否直接用ffmpeg把sdv格式图片推流。

而且我还不在现场,现在在现场的人忙着做其他事,时间还紧,我现在还没有个sdv文件。关键是这个功能合同里面并没有明确写上,甲方要,领导不让做,有其他任务。

哎,我是想搞的,这个技术本身对我们其他项目是有帮助的。

最最关键的我现在搞不到sdv格式的文件。

-----------------------------------------------------------------------------

最新进展,发现天地伟业的SDK可以下载mp4格式的视频,(下载格式是sdv是他们技术支持人员说的,技术支持通常不是技术人员......),他们自己后缀是ps,ps(mp4),不知道怎么想的。反正下载下来后,放到hls目录中,vlc和unity的ump可以播放。

这样子的话,技术可行性算是通过了,接下来就是堆积代码,构建应用了。不保证用户体验效果,总之应该能做。

1.客户端(unity)构建一个查询界面,没有界面也没关系,传给服务端要查询哪段时间的哪个摄像头,因为是通过录像机取的,就是哪个通道。

2.服务端调用SDK代码,下载文件。

3.客户端同时轮询下载进度,SDK的Demo就是这么干的,Timer里面轮询进度。

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值