- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
我有一个 ONVIF 网络摄像头。
我想从相机捕捉图像,以便我可以处理该图像并将其保存到文件系统。
我发现有一个 onvif api 提供了一个方法 GetSnapshotUri
,它应该为我提供一个图像快照:
http://www.onvif.org/onvif/ver10/media/wsdl/media.wsdl
我通过向它添加服务引用设法在 visual studio 中导入了这个 api:
我如何构造一个客户端来从该服务调用 GetSnapshotUri
?
最佳答案
因此,经过大量搜索后,我设法从相机中捕捉到了图像。
第一个问题是我使用了“添加服务引用->高级->添加 Web 引用”,而不是直接在“添加服务引用”框中键入服务地址。
在这里,我添加了地址:http://www.onvif.org/onvif/ver10/media/wsdl/media.wsdl
然后我可以使用 MediaClient
类,pepOS 在评论中正确指出,最终代码如下所示:
var messageElement = new TextMessageEncodingBindingElement();
messageElement.MessageVersion = MessageVersion.CreateVersion(EnvelopeVersion.Soap12, AddressingVersion.None);
HttpTransportBindingElement httpBinding = new HttpTransportBindingElement();
httpBinding.AuthenticationScheme = AuthenticationSchemes.Basic;
CustomBinding bind = new CustomBinding(messageElement, httpBinding);
EndpointAddress mediaAddress = new EndpointAddress("http://192.168.1.168:10001/onvif/Media");
MediaClient mediaClient = new MediaClient(bind, mediaAddress);
mediaClient.ClientCredentials.UserName.UserName = "admin";
mediaClient.ClientCredentials.UserName.Password = "admin";
Profile[] profiles = mediaClient.GetProfiles();
string profileToken = profiles[1].token;
MediaUri mediaUri = mediaClient.GetSnapshotUri(profileToken);
图像的 uri 然后可以在 MediaUri.Uri
地址
关于c# - C# 中的 ONVIF api 捕获图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32779467/
我正在尝试使用 gsoap 实现具有 onvif 配置文件标准的相机设备服务器。在 ws 动态发现上,当我尝试在 https://github.com/mpromonet/ws-discovery/b
嗨,我正在尝试开发一个使用 onvif web 服务的 android web 服务客户端,但我手中没有任何 onvif 相机。我需要的是一个 onvif 相机模拟器、测试工具(可能是一个 onvif
为了使用 ONVIF 从安讯士摄像头提取事件,我创建了以下内容: CreatePullPointSubscriptionResponse pullPointSubscriptionResponse =
我有索尼的相机 SNC-CH110。默认用户是“admin”,密码也是“admin”。我的大问题是身份验证。 SOAP-ENV:Sender
创建第一个用户后(在我的例子中,用户名为“root”,密码为“root”),AXIS P3301(固件 5.11.2)返回 未授权 肥皂故障,对于任何 onvif 请求:
一旦我从 UDP 多播请求得到响应,返回到 239.255.255.250 我得到一个带有 XAddrs 的 ProbeMatch http://10.10.10.10:1234/onvif/devi
我正在用 C 语言编写一个 API,用于使用 ONVIF 验证用户身份。我编写了一些代码来制作身份验证 header 。但是,当我发送这些 header 时,服务器响应“安全 token 无法进行身份
我需要发现局域网中所有支持onvif 协议(protocol)的网络摄像头。我尝试使用 WSDiscoveryClient,但它没有发现 onvif 服务,尽管它发现了其他服务。它就像 onvif 不
我正在开发一个通过 ONVIF 查看视频流的应用程序,其中一个要求是不断改变视频分辨率。我遇到的主要问题是相机位于经常发生连接中断的地方。 此刻,我正在运行应用程序,使用“SetVideoEncode
我正在用 C++ 实现 ONVIF 客户端以驱动 Onvif 相机。 我需要获得放大倍数(例如,最小变焦为 x1,最大变焦为 x200),但到目前为止,我只能设法获得 PTZ 值(平移、倾斜和缩放百分
我打算做一个 java onvif 应用程序。我创建了一个新项目并从 devicemgmt.wsdl 生成了源代码。还从 remote discovery.wsdl 生成了类。如何使用这些生成的类发现
首先,我完全没有使用 ONVIF 的经验。我在一家公司获得了奖学金,并被要求与之合作(控制一些相机并从中获取照片),但他们也不知道它是如何工作的,所以没有人能帮助我...... 我正在通读 ONVIF
我的公司为其客户提供安全和监控服务,我被要求对如何使用 onvif api 进行研发。我访问了他们的operations页面及相关wsdl一些操作的定义。到目前为止,我的探索表明 onvif 已经为安
我正在尝试使用 ONVIF 获取流 URL,但我被卡住了。方法 GetStreamURL 总是返回 Null,但是当我在 wireshark 中嗅探流量时,我从摄像头得到了正确的响应。也许有人有类似的
我正在尝试从某些 ONVIF 设备获取事件消息。我的代码在 C# 中。 在 EventPortTypeClient.CreatePullPointSubscription 上的(Axis 相机)设备上
已关闭。此问题旨在寻求有关书籍、工具、软件库等的建议。不符合Stack Overflow guidelines .它目前不接受答案。 我们不允许提问寻求书籍、工具、软件库等的推荐。您可以编辑问题,以
我正在使用 Onvif 设备管理器 dll(onvif.services、discovery、session 和 utils.async、common、diagnostic、fsharp dll)实现
我目前正在尝试从可从以下位置访问的 .xsd 文件生成类: https://www.onvif.org/ver10/schema/onvif.xsd 我将该 .xsd 文件保存在我计算机上的一个文件夹
我想从 onvif wsdl 文件生成客户端代码,但我不知道在哪里可以找到 wsdl 文件。我发现了这样的东西 http://www.onvif.org/onvif/ver10/device/wsdl
我的公司正在设法弄清楚如何将我们当前的相机产品线转变为符合 ONVIF 标准的相机。 我找到的是规范文档和一堆 WSDL 文件。但到目前为止,我所看到的一切似乎都在建立事物的“客户端”。 我正在尝试创
我是一名优秀的程序员,十分优秀!