Net Core 3.1 ONVIF 操控海康摄像头

先给出实现的代码

https://github.com/lu1770/onvif-client.git

也可以通过安装包来使用功能

dotnet add package Onvif

基本用法

复制代码
Agent = new OnvifAgent(ipAddress, userName, password)
var channels = Agent.Media.GetChannels();

// 上移 Agent.Ptz.MoveUp();
Thread.Sleep(1000); Agent.Ptz.Stop();
// 下移
Agent.Ptz.MoveDown();
Thread.Sleep(1000); Agent.Ptz.Stop();

// 左移 Agent.Ptz.MoveLeft();
Thread.Sleep(1000); Agent.Ptz.Stop();
// 右移
Agent.Ptz.MoveLeft();
Thread.Sleep(1000); Agent.Ptz.Stop();

// 复位
Agent.Ptz.GotoHomePosition();
复制代码

 如果使用nuget安装的形式,就到此为止了,

 

以下是直接使用源码并做扩展的部分:

这里实现了设备发现,登录,获得码流列表,获得画面rtsp,vlc播放,云台上下左右控制,放大缩小

安装nuget包

 引入SOAP服务引用

http://www.onvif.org/ver10/device/wsdl/devicemgmt.wsdl

http://www.onvif.org/ver10/media/wsdl/media.wsdl

http://www.onvif.org/ver20/ptz/wsdl/ptz.wsdl

 


 

 

 

发现设备列表,也就是界面左边这个列表

 登录

 

我在登录之后让摄像机云台位置复位.

上下左右移动

 

 缩放

 

 此处感谢网上诸多大佬的帖子,有些没找到无法溯源了,这里开放全部源码.

https://github.com/lu1770/onvif-client.git

 

 

posted on   ZhengyaoLu  阅读(571)  评论(0编辑  收藏  举报

相关博文:
阅读排行:
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 上周热点回顾(3.3-3.9)

导航

< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5
点击右上角即可分享
微信分享提示