当前位置: 首页 > web >正文

SVMSPro平台获取Websocket视频流规则

SVMSPro平台获取Websocket视频流规则

Websocket 的服务端口为:53372,如需要公网访问需要开启这个端口

这里讲的是如何获取长效URL,短效(时效性)URL也支持,下回讲

一、如何获取Websocket实时流视频

ws://host:port/ws/live/ch{$deviceid}_{$channel}_{$stream}.flv

参数说明:

Host: 服务器IP
**Port:**ws端口,默认53372
deviceid 在SVMSPro平台中设备的ID(可在客户端或者网页查看ID得到)
channel 通道号(可在客户端上通过查看ID得到)
stream 码流类型,0–主码流,1–子码流

例子:

ws://192.168.0.123:53372/ws/live/ch601_0_1.flv

视频效果

在这里插入图片描述

二、如何获取Websocket回放(录像)流视频

ws://host:port/ws/vod/ch{$deviceid}_{$channel}_{$begintime}_{$endtime}_{$center}.flv

参数说明:

deviceid 在SVMSPro中设备的数据库ID(可在客户端上通过查看ID得到)
channel 通道号(可在客户端上通过查看ID得到)
begintime 录像开始时间,格式为yyyymmddhhmmss,如20210301080000
endtime 录像结束时间,格式为yyyymmddhhmmss,如20210301080500
center 录像类型,0–设备端录像,1–中心录像

例子:

设备端回放:

Ws://192.168.0.123:53372/ws/vod/ch1_0_20250404090000_20250404091000_0.flv

中心端录像

Ws://192.168.0.123:53372/ws/vod/ch1_0_20250404090000_20250404091000_1.flv

Websocket 流的优势如下:

实时性:

低延迟:WebSocket提供的是全双工通信,这意味着服务器和客户端可以同时发送和接收数据,这对于实时视频流来说非常关键。视频流通常要求低延迟,而WebSocket的低延迟特性使其非常适合用于实时视频传输。

双向通信:

交互性:WebSocket支持服务器主动向客户端推送数据,这在视频流中非常有用,例如实时聊天、弹幕、或者服务器的状态更新等。

协议效率:

减少开销:与HTTP相比,WebSocket在建立连接后只需要一个握手过程,之后的通信可以直接通过同一个TCP连接进行,减少了多次HTTP请求的开销。这对于视频流来说,可以减少因频繁的HTTP请求而引起的延迟。

数据帧管理:

灵活的数据传输:WebSocket允许发送二进制数据,这对于视频流来说是非常重要的,因为视频数据通常是二进制格式。这使得WebSocket能够高效地传输视频帧,而不必像HTTP那样先将视频转换为文本格式。

兼容性和扩展性:

易于集成:WebSocket协议已经得到了广泛的支持,几乎所有现代浏览器都支持WebSocket。此外,通过使用WebSocket,开发者可以更容易地集成视频流功能到他们的应用中。

安全性:

加密传输:WebSocket可以通过WebSocket Secure (WSS) 协议进行加密传输,这提供了数据传输的安全性,保护视频流不被未授权访问。

状态保持:

持续连接:一旦建立了WebSocket连接,客户端和服务器之间的连接将保持开启状态,直到一方显式关闭连接。这有利于维持视频流的连续性,无需每次播放都重新建立连接。

应用层协议:

灵活性:开发者可以在应用层定义自己的协议来控制数据传输,例如可以定义如何分割视频帧、如何控制播放速度等,这提供了很高的灵活性。

http://www.xdnf.cn/news/2978.html

相关文章:

  • 设计模式每日硬核训练 Day 17:中介者模式(Mediator Pattern)完整讲解与实战应用
  • 顺序结构双链表的实现
  • 【LLM】解析RAG增强检索技术:原理、实现与应用
  • 【HCIA】VRRP
  • LeetCode 2906 统计最大元素出现至少K次的子数组(滑动窗口)
  • 软件测试基础知识详解
  • 【AI面试准备】负责所有Al产品的模型能力评估及测试,保障AI产品的质量
  • AI Agent Protocols:现状、挑战与未来展望
  • 使用VS2022开发并部署QT应用
  • Karmada 多 Kubernetes集群管理实战
  • 如何查看和验证AWS CloudFront的托管区域ID
  • unity在编辑器模式调试音频卡顿电流声
  • 什么是向量库和数据向量化?建设向量库有什么作用?
  • vue.js中的一些事件修饰符【前端】
  • Pytest中的fixture装饰器详解
  • OpenCV 图形API(72)图像与通道拼接函数-----根据指定的方式翻转图像(GMat)函数 flip()
  • 布局元素组件 (Layout Element)
  • 功放IC搭配的升压芯片选型指南:为何FP5207更适合高保真功放系统?
  • 基于大模型的大肠息肉全程管理研究报告
  • 东土科技NewPre系列智能控制器的创新之旅
  • 第17节:传统分类模型-随机森林与决策树
  • 【Prometheus-Mongodb Exporter安装配置指南,开机自启】
  • 【安全扫描器原理】ICMP扫描
  • Docker基础(安装和命令)
  • 第三节:用户和用户组管理
  • 测试——BUG篇
  • python类中的 __contains__方法是什么?
  • unity Orbbec Femto Bolt接入unity流程记录 AzureKinectExamples 插件 使用记录
  • oracle 批量查询每张表的数据量
  • RoPE 相对位置编码 VS 传统位置编码