做网站撘框架,西部数码 成品网站,西部数码 网站建设,中国建设人才网信息网证书是假的吗#x1f4a1; 如果想阅读最新的文章#xff0c;或者有技术问题需要交流和沟通#xff0c;可搜索并关注微信公众号“希望睿智”。 概述 Onvif协议的核心作用之一#xff0c;是定义了如何通过网络访问和控制IP摄像机和其他视频设备。Onvif协议不仅涉及设备发现、设备管理 如果想阅读最新的文章或者有技术问题需要交流和沟通可搜索并关注微信公众号“希望睿智”。 概述 Onvif协议的核心作用之一是定义了如何通过网络访问和控制IP摄像机和其他视频设备。Onvif协议不仅涉及设备发现、设备管理还包括音视频流的配置和传输。设备的配置和控制通过SOAP协议实现而音视频流传输主要基于RTSP协议进行。这一架构使得设备的配置和实时媒体流的传输得以分离既保证了灵活性又增强了安全性。 如果对RTSP协议感兴趣可以移步至专栏《从零开始精通RTSP》进行学习。 工作流程 客户端使用Onvif协议和RTSP协议向设备拉流的基本工作流程如下。 首先客户端通过发送GetProfiles请求获取设备预设的配置文件列表每个配置文件定义了视频流的参数比如编码算法、分辨率、帧率等。选择合适的配置后使用GetStreamUri方法获取具体的音视频流地址这个地址通常是RTSP URL。 获取到流地址后客户端通过RTSP协议与设备建立会话。这通常包括发送OPTIONS请求获取设备的RTSP能力然后发送DESCRIBE请求获取流的SDP描述接下来客户端发送SETUP请求选择传输通道和参数最后通过PLAY命令开始音视频流的传输。 一旦RTSP会话建立并开始播放设备便将音视频数据通过RTP封装传输给客户端。客户端解封装这些数据包解码后即可进行音视频的渲染。在音视频流的传输过程中客户端还可以通过RTSP的控制命令比如PAUSE、TEARDOWN来暂停或结束流。 获取拉流URL Onvif协议中的GetStreamUri方法是Media Service服务的一部分主要用于获取网络视频设备上音视频流的访问URL。这个URL允许客户端通过标准的流媒体协议比如RTSP、HTTP等来拉取实时的音视频数据流。 获取拉流URL的请求比较简单可以参考下面的SOAP报文其中的一些关键节点和属性描述如下。 onv:ProfileToken必填项表示设备上特定的配置文件的唯一标识符。配置文件定义了视频流的多个参数比如分辨率、帧率、编码格式等。 onv:Protocol可选项指定客户端期望使用的流传输协议比如RTSP、HTTP等。如果不指定默认值由设备决定通常为RTSP因为它是流媒体传输的常用标准协议。
soapenv:Envelope ...soapenv:Bodyonv:GetStreamUrionv:ProfileTokenProfile_1/onv:ProfileTokenonv:ProtocolRTSP/onv:Protocol/onv:GetStreamUri/soapenv:Body
/soapenv:Envelope 当设备接收到请求拉流URL的SOAP请求报文并成功处理后会返回一个包含拉流URI的SOAP响应报文给客户端。可以参考下面的示例报文来进行理解其中的一些关键节点和属性描述如下。 onv:MediaUri表示媒体资源的URI信息。 onv:Uri表示拉流的URL。通过这个URL客户端可以获取到设备的音视频流数据。
soapenv:Envelope ...soapenv:Bodyonv:GetStreamUriResponseonv:MediaUrionv:Urirtsp://192.168.1.100:554/channel0/h264/ns0:Uri!-- 其他可选信息比如流的类型、格式、有效期等 --/onv:MediaUri/onv:GetStreamUriResponse/soapenv:Body
/soapenv:Envelope