ffmpeg(静态编译版本)访问网络摄像头

海康的网络摄像头(rtsp流)大体的工作思路是

1. 网络摄像头在接入网络的时候就已经打开,通过rtsp从设备取流,或者通过SDK回调取流

2.给用户提供一个ip地址跟账号密码. 这个ip地址就是获取rtsp流的网络地址.需要在本地安装海康的应用软件,这个应用软件的功能就是提供网页flash插件.要知道flash插件技术在整个互联网行业被淘汰,现在主推的是h5+videojs(hls流),但是海康的摄像头推的是rtsp流,rtsp流本来是无法在网页环境播放的,在网页播放必须使用rtmp/http方式,因此推测在本地安装的海康应用软件的作用是将rtsp流转成了rtmp流并提供网页插件以在网页播放. 登录海康提供的ip地址并输入用户名密码就可以在浏览器查看网络摄像头推送的视频流(实际体验感觉延迟很高,差不多5秒,大概率是在rtsp转rtmp的时候造成的)

以上是海康网络摄像头的基本工作思路

由于上述的工作流程跟公司业务需求不贴合,需要单独打开网络摄像头,因此使用ffmpeg打开网络摄像头

ffmpeg打开本地摄像头跟网络摄像头的命令基本类似,区别就是设备的名字.

打开本地摄像头需要获取的是摄像头在本地的名字或者设备路径

打开网络摄像头需要获取的是摄像头拉流的网络路径

关于海康网络摄像头rtsp拉流的路径格式如下:

主码流取流:

rtsp://admin:hj123456@192.168.1.64:554/h264/ch1/main/av_stream

子码流取流:
rtsp://admin:hj123456@192.168.1.64:554/h264/ch1/sub/av_stream

其中:

rtsp为数据传输协议;
admin为摄像头登录名;
123456为摄像头登录密码;
192.168.1.64为摄像头IP地址;
554为海康摄像头rtsp协议数据端口;
h264为摄像头数据编码格式;
ch1代码摄像头通道1,当然也可以写ch2,ch3…海康威视的通道分模拟和网络两种,模拟的通道号从1到32,网络的通道号从33到64;
main/sub指主码流/子码流;
av_stream指数据流(音视频流);

了解了网络摄像头的推流网络地址,就可以使用ffmpeg官方提供的静态编译版本ffmpeg.exe跟ffplay.exe访问并拉流实现播放或保存本地mp4文件

指令如下:

播放指令:

ffplay rtsp://admin:hj123456@192.168.1.64:554/h264/ch1/main/av_stream

录制指令:
ffmpeg -y -i rtsp://admin:hj123456@192.168.1.100:554/h264/ch1/main/av_stream -vcodec copy -f mp4 record.mp4

  • 1
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值