把海康摄像机设置为H265模式,显示反序列化失败。设置成H264模式,可以成功,

通过研究发现 ,我使用的soap协议的wsdl是如下版本:

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

但是这个版本只支持:

并不支持H265的格式

然后,我就开始找啊找,终于找到了新版的wsdl,地址如下:

https://www.onvif.org/ver20/media/wsdl/media.wsdl

这个版本是支持H265格式的。

另外想要保存wsdl的话,直接右键链接地址下载即可。

想要查看怎么使用可以参考下面代码:

https://github.com/AlexBrochu/CameraManager

调用流程如下:

获取设备能力:

            var deviceUri = new UriBuilder("http:/onvif/device_service"){Host = ip,Port = port};Binding binding;HttpTransportBindingElement httpTransport = new HttpTransportBindingElement();httpTransport.AuthenticationScheme = AuthenticationSchemes.Digest;binding = new CustomBinding(new TextMessageEncodingBindingElement(MessageVersion.Soap12WSAddressing10, Encoding.UTF8), httpTransport);DeviceClient device = new DeviceClient(binding, new EndpointAddress(deviceUri.ToString()));Service[] services = device.GetServices(false);

查找需要的服务地址,主要通过Namespace

Service xmedia2 = services.FirstOrDefault(s => s.Namespace == "http://www.onvif.org/ver20/media/wsdl");

查找到服务之后,在拿这个服务的地址获取想要的数据:

                var media = new Media2Client(binding, new EndpointAddress(xmedia2.XAddr));media.ClientCredentials.HttpDigest.ClientCredential.UserName = username;media.ClientCredentials.HttpDigest.ClientCredential.Password = password;media.ClientCredentials.HttpDigest.AllowedImpersonationLevel = System.Security.Principal.TokenImpersonationLevel.Impersonation;var profiles = media.GetProfiles(null, null);string strRtspUrl = media.GetStreamUri("RTSP", profiles[0].token);

Onvif之获取媒体信息GetProfiles相关推荐

  1. Android之使用MediaMetadataRetriever类获取媒体信息

    一.昨天,介绍了使用MediaMetadataRetriever类来获取视频第一帧: http://blog.csdn.net/u012561176/article/details/47858099, ...

  2. 3.onvif实现获取RTMP地址完整流程

    获取摄像头推流地址 前面介绍了怎么来发现设备,接下来该介绍怎么来获取摄像头的推流地址,这也是项目需求,得到推流地址后就可以使用ffmpeg来拉去视频流,并推送到云端 先来看一下这个流程 probe:设 ...

  3. 03 SkeyeVSS国标视频汇聚云服务使用Onvif协议进行摄像机设备接入以及获取设备信息

    SkeyeVSS国标视频融合云平台基于端-边-云一体化架构,部署轻量简单.功能灵活多样,平台可支持多协议(GB28181/RTSP/Onvif/海康SDK/Ehome/大华SDK/RTMP推流等).多 ...

  4. android获取mp3/mp4媒体信息

    原文:http://blog.csdn.net/ameyume/article/details/7849641 API说明:MediaMetadataRetriever class provides ...

  5. linux c 读取摄像头,Linux下onvif客户端获取ipc摄像头 获取能力:GetCapabilities

    getcapabilities:获取能力,主要目的获取设备能力信息(获取媒体服务地址) 鉴权:但是在调用获取设备能力之前是需要鉴权的.onvif协议规定,部分接口需要鉴权,部分接口不需要鉴权,在调用需 ...

  6. Atitit onvif协议获取rtsp地址播放java语言 attilx总结

    Atitit onvif协议获取rtsp地址播放java语言 attilx总结 1.1. 获取rtsp地址的算法与流程1 1.2. Onvif摄像头的发现,ws的发现机制,使用xcf类库1 2. 调用 ...

  7. AVFoundation – AVMetadataItem 获取媒体属性元数据

    目录 一.前言 1.AVAsset 2.AVAssetTrack 3.AVComposition / AVMutableComposition 4.AVMutableVideoComposition ...

  8. 在vb中使用Iphlpapi.dll获取网络信息(上)

    ※================================================================== ※本连载文章说明: ※1.连载首发于<软件报>(ht ...

  9. 最简单的基于DirectShow的示例:获取Filter信息

    ===================================================== 最简单的基于DirectShow的示例文章列表: 最简单的基于DirectShow的示例:视 ...

最新文章

  1. 8月第1周安全回顾 0Day漏洞成企业最大威胁 应重视网络监听
  2. php 数组美化_PHP格式化输出数组,一目了然
  3. PyTorch分布式训练
  4. Windows 系统安装Docker Compose 步骤
  5. 财务大数据比赛有python吗-Python大数据与机器学习之NumPy初体验
  6. JQuery iframe 刷新效果
  7. Java虚拟机学习(5):内存调优
  8. Struts2中<s:iterator>基本用法及示例
  9. 龙珠直播php,斗鱼、全民TV、龙珠等直播平台排行榜 看视频直播发展趋势
  10. Simulink学习——弹球仿真三维动画模型(Simulink3D演示动画学习01)
  11. JZ17 树的子结构
  12. L1-079 天梯赛的善良 (20 分)——java语言
  13. AD域帐号批量查询锁定帐号,批量解锁域帐号
  14. oracle分页排序查询,Oracle分页查询中排序与效率问题解决方法详解
  15. 阵阵的挫败感,让我痛苦迷茫
  16. 如何删除服务器的文件,服务器上有顽固文件!如何删除?
  17. 数组的最大值和最小值
  18. 使用信号量机制解决生产者消费者问题
  19. chatgpt赋能python:Python开立方函数math:让数学计算更加简单
  20. pdf、图片转OFD怎么实现?附详细代码

热门文章

  1. UEFI win7系统的安装
  2. Linux设备驱动简析—PC重启源码分析
  3. Windows Server 2008 R2之二从介质安装 AD DS
  4. JavaScript设计一个框架
  5. Fort.js – 时尚、现代的进度提示效果
  6. LIBSVM在Matlab下的使用
  7. mysql hzpy_MySQL 实现查询汉字的拼音首字母 的字拼音
  8. Linux学习笔记 --组管理和权限管理
  9. 微信小程序图片上传九宫格拖拽组件
  10. php不能连接远程mysql_无法远程连接mysql怎么办