问题标签 [onvif]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1397 浏览

c# - 发现 - ProbeMatch 响应被丢弃

我使用 onvif 相机,但发现有一些问题。

使用如下非常基本的发现代码,我得到了我们网络上大多数设备的回复,但有一些被丢弃了。我添加了跟踪日志记录,我可以看到发现客户端丢弃的消息以及描述

DiscoveryClient 删除了带有 messageId='uuid:xxx' 和 relatedTo='uuid:xx' 的 ProbeMatches 消息,因为相应的 Find 操作已完成或相关的值无效。

查看跟踪中的相关值以及 MS 网络监视器中的值,它们似乎完全相同,而被丢弃的那些在前几个回复中,所以我认为它们不是在操作完成之后。

我还运行了 sourceforge 上的 onvif 设备管理器,这有同样的问题,但使用不同的设备,以前有没有人遇到过这个问题或者有任何想法可能导致它。

0 投票
1 回答
2287 浏览

wsdl - 如何使用安讯士相机提供的onvif服务

我是 web 服务的新手,有人可以帮忙入门吗我发现的只是这个http://www.onvif.org/onvif/ver10/device/wsdl/devicemgmt.wsdl,如何获取wsdl文件?如何使用此 WSDL 生成客户端代码?

提前致谢。

0 投票
1 回答
1369 浏览

c++ - 如何在没有互联网连接的情况下运行 gSOAP 代码生成器?

我正在尝试使用 wsdl2h/soap2cpp 为 onvif 媒体 WSDL http://www.onvif.org/onvif/ver10/media/wsdl/media.wsdl生成代码。这个 wsdl 有一些依赖项。

阅读 gSOAP 常见问题解答http://www.cs.fsu.edu/~engelen/soapfaq.html,我最终在 typemap.dat 中提取了所需的命名空间

使用此映射,gSOAP 代码生成器可以正确运行:

但这需要有互联网连接。我想使用本地存储的文件进行构建。

在 wsdl2h 帮助中有一个看起来很有趣的选项:

-i 不导入(高级选项)

所以我下载了 wsdl2h 下载的内容:

  1. http://www.onvif.org/onvif/ver10/schema/onvif.xsd
  2. http://docs.oasis-open.org/wsn/b-2.xsd
  3. http://www.w3.org/2004/08/xop/include
  4. http://docs.oasis-open.org/wsrf/bf-2.xsd
  5. http://docs.oasis-open.org/wsn/t-1.xsd

下一次运行

但是这种输出失败了:

在 media.h 中,来自 ws-addressing 的代码引用结构。接下来我尝试了不同的方法来导入更多的 xsd,但我没有找到解决缺失依赖项的方法。也许这不是从本地文件构建的正确方法。无论如何,我想避免对 wsdls和 xsd 文件进行任何修改。另一种方法可能是将远程 url 映射到本地 url(如 Apache CXF)的目录,但我在 gSOAP 文档中没有找到类似的内容。

感谢您分享您的经验。

0 投票
1 回答
3006 浏览

video - ONVIF:创建新的视频编码器

我正在开发一个通过 ONVIF 查看视频流的应用程序,其中一个要求是不断改变视频分辨率。我遇到的主要问题是相机位于经常发生连接中断的地方。

此时,我让应用程序运行使用“SetVideoEncoderConfiguration”请求更改相机的分辨率(更改所需的参数),并使用“GetStreamUri”请求获取视频流,但我的目标不是通过 onvif 发出请求,相反,我想为每种分辨率存储一个配置文件,并直接将视频流上传到我的播放器上,例如直接加载(rtsp://onvif:test@192.168.30.234/onvif-media/media .amp?profile=profile_1_h264&sessiontimeout=60&streamtype=单播)。

所以,我打算做以下事情:一开始只创建两个配置文件,每个配置文件都有不同的“VideoEncoder”(一个用于高分辨率,另一个用于低分辨率)

我的问题是:如果我通过“GetCompatibleVideoEncoderConfigurations”请求为我的相机获取“视频编码器”,我的相机只返回一个“视频编码器”,所以我无法创建我想要的两个视频编码器。有没有办法通过 ONVIF 创建一个新的“视频编码器”?如果答案是否定的,是否有其他方法可以实现我的目的?

0 投票
1 回答
2459 浏览

java - 从 Onvif wsdl 文件生成客户端 Web 服务

我正在尝试从位于此处的Onvif 标准wsdl 文件创建客户端 Web 服务。在使用 Apache CFX 完成 Eclipse 向导中的所有步骤后,我得到以下输出:

我是网络服务的新手。任何人都可以解释我的问题是什么,我应该怎么做才能解决它?

0 投票
2 回答
2912 浏览

c# - OnVif 集成错误 - 未经授权使用客户端身份验证方案“摘要”

使用此代码在 C# .Net 4.5 中连接到我的 IP 摄像机上的 OnVif 服务。
在该代码旁边,我正在尝试获取设备信息,如下所示:

并遇到此错误:

我尝试了有关 Basic realm的信息。WWW-Authenticate通过向带有 value 的请求添加 Http 标头Basic realm="Our Site"。但没有运气。

那是什么呀?如何解决?

0 投票
3 回答
13835 浏览

onvif - ONVIF GetSystemDateAndTime 请求

一旦我收到从 UDP 多播请求返回到 239.255.255.250 的响应

我用 XAddrs 取回 ProbeMatch http://10.10.10.10:1234/onvif/device_service

我现在如何执行 GetSystemDateAndTime 和 GetDeviceInformation

这是对 10.10.10.10 端口 1234 的 TCP/UDP 请求吗?这是对 10.10.10.10 端口 80 的 HTTP 请求吗?

或者什么一旦我有了设备的地址 http:10.10.10.10:1234/onvif/device_service

然后呢

提前致谢

0 投票
0 回答
1825 浏览

c++ - 使用 gSOAP 定义 UDP 套接字源端口

我为 NVT(网络视频发射器)IP 摄像机开发了一个 ONVIF 应用程序。对于设备发现,ONVIF 使用 Ws-discovery 规范。发现使用多播 UDP 套接字在软件执行开始时发送“hello”消息。

当我使用wireshark 监视网络时,我看到我的UDP 请求在“dst 端口”中有正确的端口(3702),但“src 端口”是一个随机值。

是否可以使用 gSOAP 更改我的套接字的 src 端口,并将其用于源和目标。

我发送问候消息的代码:

0 投票
1 回答
2733 浏览

php - 如何在 PHP/Python 中解析 WSDL?

我想知道 PHP 或 Python 中是否有任何东西可以正确解析 WSDL 文件。例如我需要解析http://www.onvif.org/ver10/media/wsdl/media.wsdl。PHP SOAP 扩展生成如下代码:

我需要这样:

我已经设法通过扩展默认 SOAP 扩展来生成第二个示例中的请求,但我仍然需要添加所有类型、命名空间等......我不知道如何解析......所以可能有一些根据 WSDL 文档中提供的规范生成此请求的方法?

0 投票
0 回答
3508 浏览

android - Android 使用 ONVIF 与摄像头通信

Android 代码到 ONVIF 有人可以帮助我。从 Android 平板电脑我应该与三星相机 SNZ-5200 通信。我需要流式传输和放大/缩小。相机使用 ONVIF 协议我已经搜索了 ONVIF.com 和其他页面。请帮助我一些示例代码。