zos-open gb28181,rtsp,rtmp,hls直播储存回放,上下级级联

news2024/11/23 22:00:47

fslib框架

  • fslib框架是一套可运行于生产环境的支持c/c++线程死锁,线程cpu资源统计,死机时自动记录死机所对应的源码位置的调试框架,部分功能支持php语言;
  • fslib框架内置了很多实用库
  1. 配置库(FsConfig)--支持向上向下兼容的配置模块,同时可以导出与导入json和xml,可以参考 小雉配置--支持向上向下兼容的 配置文件 兼容性 设计 - 飞天雉&&小雉视频系统
  2. 端口代理--支持在一个端口上同时承载多种业务(比如rtsp,rtmp,http使用一个端口),一个业务分配多个端口(比如554和1554同时用作rtsp)
  3. xml、json库--用于xml同json互转,xml和json同FsConfig互转
  4. gb28181库--实现gb28181直播、回放、相机控制、上下级级联
  5. rstp库--实现rtsp拉流、推流、流分发、视频回放
  6. hls库--实现hls流分发,支持直播、回放
  7. rtmp库--实现rtsp拉流、推流、流分发
  8. 命令字算法--实现模块依赖解耦,在A模块需要调用B模块方法时允许A模块启动后再启动B模块
  9. 掩码通信算法--实现0和开关,在rtsp或rtmp需要分发流时调用此算法,任何一个模块需要流即会触发开关合上,所有模块都不需要流时即触发开关断开,在开关合上与断开时会调用预设的函数指针(比如rtsp拉流模块、rtmp拉流模块可以注册),以此实现汇总多个开启关闭信号,并隔离输出(可能是rtsp要流也可能是rtmp要流)与输入(可以是rtsp拉流接入也可以是rtmp拉流接入)

ZOS视频系统

ZOS视频系统是用c语言开发的一套基于fslib框架的视频服务器应用,在有fslib框架强大的调试功能及基础库的保驾护航的条件下,ZOS视频系统致力为开发成为单进程的极高性能的综合视频应用,既是支持rtmp,rtsp,hls,gb28181采集,支持rtmp,rtsp,hls,gb28181直播,点播的流媒体服务器,也是一款支持rtmp,rtsp,hls,gb28181的NVR产品,还是一款视频分析系统!

ZOS子模块

ZOS子模块主要有:ZOS去中心化的配置管理模块ZOS掩码通信模块(按需拉流,推流的核心)、ZOS流媒体ZOS NVRZOS水印叠加ZOS视频分析等多个模块,构成一套多功能的智能综合视频应用系统:

  • ZOS去中心化的配置管理模块
    所有服务器既是主服务器,也是从服务器,主从选举使用"比特币"的数据同步机制;

在去中心化的设计下,消灭了主节点与从节点的工程化区别,在配合系统配置自描述的向下兼容设计,让开发者及工程人员可渐进式学习,降低使用难度;

  • ZOS掩码通信模块
  • 借鉴"面向对象编程"每个对象有独立的空间和方法,需要通信的每个对象拥有自己的空间和管理自己空间的方法(一个二进制位,和这个bit置0和置1的方法);
  • 借鉴"内存池的方式",在空间不够用时增加一个long long变量(64位,一个对象只需要1bit空间),优化内存分配,使用数字计算可用一个cpu指令计算64个对象的结果;
  • 参考"汇编优化"及计算机的特性--函数及变量均是一个地址,把通信实现为函数指针的直接调用,让一次通信的时间在纳秒级别;
  • 在极快且极轻量的ZOS掩码通信模块设计支撑下,程序内部可实现随意的多线程通信,且耗时与开销均可忽略不计,让复杂的ZOS视频系统的各种逻辑及接口都可蜕化成单线程串行构架(实质是并行运算),降低了实现单进程的极高性能的综合视频应用的开发成本;
  • ZOS流媒体 支持rtsp,rtmp,gb2818采集,rtsp,rtmp,hls,gb28181直播:
  • ZOS NVR 支持rtsp,rtmp,gb2818采集,mkv录像,按时间的rtsp点播,正向单帧,慢放,快放(最大1080P 32倍速),倒向单帧,慢放,快放(最大1080P 32倍速);
  • ZOS水印叠加 支持rtsp,rtmp,gb2818采集,rtsp,rtmp,hls,gb28181直播视频上加水印输出;

ZOS-open

ZOS-openZOS视频系统的开源版本,继承fslib框架ZOS去中心化的配置管理模块ZOS掩码通信模块的所有功能及特性;

  • ZOS-open 编译
    下载源码解压到Centos7下 如/opt/ZOS-open,执行以下命令编译
  • cd /opt/ZOS-open
  • make
  • 编译结果在/opt/dist/linux下,文件名为zos
  • SOS-open 运行
          在通用操作系统下运行
  • 拷贝编译的zos及hls.html、sysinfo.gz、xiaozhi.run到/fs/bin目录(这4个文件放在同一目录即可)
  • cd /fs/bin
  • ./xiaozhi.run

      使用小雉系统的环境运行,参考 小雉系统安装 - 飞天雉&&小雉视频系统 搭建好小雉系统的环境运行,然后按如下操作进行;

  • 停止服务器: systemctl stop os ;
  • 用u盘或ftp把编译的后的文件"zos"拷贝到测试机上替换"/fs/bin/zos" ;
  • 启动服务器: systemctl start zos ;
  • 运行 debug 输入zos前的的序号,查看zos的实时信息;
  • ZOS-open 流地址规范
    配置工具可参考:小雉配置工具 - 飞天雉&&小雉视频系统

如配置的rtsp转发地址为"/ch1",ip为 192.168.1.254,则转发地址如下:

  • rtsp转发地址为: rtsp://192.168.1.254/ch1 ;
  • rtmp转发地址为: rtmp://192.168.1.254/zos/ch1 ;
  • hls转发地址为: rtsp://192.168.1.254:16880/ch1 ;

猜您可能喜欢
小雉系统安装: 小雉系统安装 - 飞天雉&&小雉视频系统
小雉系统安装包制作: 小雉系统安装包制作 - 飞天雉&&小雉视频系统
小雉系统网络配置:小雉系统网络配置 - 飞天雉&&小雉视频系统
小雉系统硬盘配置:小雉系统硬盘配置 - 飞天雉&&小雉视频系统
小雉系统远程升级:小雉系统升级 - 飞天雉&&小雉视频系统
zos-open:ZOS开源 - 飞天雉&&小雉视频系统
使用Google Authenticator为小雉系统增加动态密码功能:使用Google Authenticator为小雉系统增加动态密码功能 - 飞天雉&&小雉视频系统
小雉配置工具:小雉配置工具 - 飞天雉&&小雉视频系统
资源下载:资源下载 - 飞天雉&&小雉视频系统

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/89830.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Ajax(三)

1.form表单的基本使用 1.1 什么是表单 表单在网页中主要负责数据采集功能。HTML中的<form>标签&#xff0c;就是用于采集用户输入的信息&#xff0c;并通过<form>标签的提交操作&#xff0c;把采集到的信息提交到服务器端进行处理。 1.2 表单的组成部分 表单标签…

java+MySQL 基于ssm的网上定点餐外卖系统

网上订餐不是一蹴而就的事情,它需要的是线上线下的共同努力。对于线上来说,安全、稳定、功能完善的网站构建必不可少,这是主要的也是最重要的一部分,网站是“脸面”,好的脸面会吸引更多的顾客光顾。而对于线下来说,好的菜品是一个订餐网站的支柱,我们不能仅靠各色各样的图片满足…

mockito的详细使用

目录 1.概述 2.使用 2.1.依赖 2.2.校验 2.2.1.值校验 2.2.2.顺序校验 2.2.3.指定返回 2.3.注解 2.3.1.Mock 2.3.2.Spy 2.3.3.Captor 2.3.4.InjectMocks 1.概述 mock&#xff0c;一种JAVA单元测试技术&#xff0c;mock允许使用模拟对象替换测试中的系统部件&#xf…

【Redis】Redis 分布式锁

文章目录概述Redis 实现分布式锁加锁释放锁死锁概述 在单体项目中&#xff0c;我们处理多线程同时操作某一处代码块或者变量时就使用 Synchronized 或者 Lock 锁去保证数据的安全性&#xff0c;但是&#xff0c;现在我们基本上都是使用微服务&#xff0c;当我们把服务部署到多…

一文说透小程序插件及其作用价值

最近工作接触小程序插件比较多&#xff0c;就想着不如跟大家系统分享一下小程序插件相关的内容。 首先&#xff0c;我们要先弄清楚小程序插件究竟是什么&#xff1f; 简单来说&#xff0c;小程序插件就是可被添加到小程序内直接使用的功能组件。插件依附于主程序的辅助程序&a…

详解c++---string的介绍(上)

这里写目录标题什么是stringstring的构造函数string的赋值重载string的遍历第一种方式 [ ]第二种方式 范围for第三种方式 正向迭代器反向迭代器string中的capacitysize lengthmax_sizecapacityreserveresizeshrink_to_fitstring的element access什么是string 那这里大家就只用…

k8s编程operator实战之云编码平台——③Code-Server Pod访问实现

文章目录1、openresty介绍和安装2、实现code-server的反向代理3、动态反向代理实现启动多个code-server访问k8s编程operator系列&#xff1a;k8s编程operator——(1) client-go基础部分k8s编程operator——(2) client-go中的informerk8s编程operator——(3) 自定义资源CRDk8s编…

【提高代码可读性】—— 手握多个代码优化技巧、细数哪些惊艳一时的策略

回顾 前期 趁着下班前五分钟书写——Vue3通讯(常规写法、语法糖、v-modle、兄弟通讯)_0.活在风浪里的博客-CSDN博客Vue3 组件通讯https://blog.csdn.net/m0_57904695/article/details/128145150?spm1001.2014.3001.5501 目录 一、可选链接运算符【&#xff1f;.】 二、空…

AD20和立创EDA设计(2)提取立创EDA的原理图库和PCB库

&#xff08;1&#xff09;因为AD20需要自己画原理图库和PCB库。所以我建议新手先用立创EDA画好原理图&#xff0c;转换为PCB&#xff08;注意&#xff0c;只需要转换出PCB即可&#xff0c;因为我们需要立创EDA的PCB库。不懂没关系&#xff0c;后面就清楚了&#xff09; &#…

把随身WiFi的esim卡移植到SIM卡放到手机使用

esim移植到实体sim卡&#xff0c;手把手教你esim改实体卡操作 自用先机的棒子&#xff0c;3-5倍虚标&#xff0c;在单位用&#xff0c;网速还行就是信号不好&#xff0c;uz801_v3.0的板子&#xff0c;410单天线&#xff0c;没有改装潜力&#xff0c;发热还大&#xff0c;加了风…

炸裂!速度百倍提升,高性能 Python 编译器 Codon 火了!

众所周知&#xff0c;Python 是一门简单易学、具有强大功能的编程语言&#xff0c;在各种用户使用统计榜单中总是名列前茅。相应地&#xff0c;围绕 Python&#xff0c;研究者开发了各种便捷工具&#xff0c;以更好的服务于这门语言。 编译器充当着高级语言与机器之间的翻译官…

[附源码]Nodejs计算机毕业设计基于Web企业客户管理系统Express(程序+LW)

该项目含有源码、文档、程序、数据库、配套开发软件、软件安装教程。欢迎交流 项目运行 环境配置&#xff1a; Node.js Vscode Mysql5.7 HBuilderXNavicat11VueExpress。 项目技术&#xff1a; Express框架 Node.js Vue 等等组成&#xff0c;B/S模式 Vscode管理前后端分…

数据分析图表-FineReport 图表切换接口

1. 概述 1.1 问题描述 图表往往是按照从左往右或从右往左的顺序来切换。那么如何实现点击图表直接切换到其他不相邻的图表呢&#xff1f;效果如下图所示&#xff1a; 1.2 实现思路 给图表添加 JavaScript 类型的超级链接&#xff0c;调用图表接口FR.Chart.WebUtils.getChart(…

如何选择美股l2接口类型?

如何选择美股l2接口类型&#xff1f; 首先要选择稳定的美股l2接口&#xff0c;因为在进行股票行情分析的时候对于其数据的真实性和准确性都有很高的要求。不靠谱的数据平台容易造成数据传输卡顿&#xff0c;或数据获取不准确的情况&#xff0c;轻则影响企业运作&#xff0c;重…

SpringSecurity[6]-Thymeleaf中Spring Security的使用/退出登录/Spring Security中CSRF

上一篇:SpringSecurity[5]-基于表达式的访问控制/基于注解的访问控制/Remember Me功能实现 链接:SpringSecurity[4]-访问控制url匹配/内置访问控制方法介绍/角色权限判断_豆虫儿的博客-CSDN博客 十一、基于表达式的访问控制 十四、Thymeleaf中Spring Security的使用 Spring…

java计算机毕业设计基于安卓Android的校园财务流水系统APP

项目介绍 首先,论文一开始便是清楚的论述了系统的研究内容。其次,剖析系统需求分析,弄明白“做什么”,分析包括业务分析和业务流程的分析以及用例分析,更进一步明确系统的需求。然后在明白了系统的需求基础上需要进一步地设计系统,主要包罗软件架构模式、整体功能模块、数据库设…

Unity脚本基础

【重点面试题】1、Unity3D中的协程&#xff08;coroutine&#xff09;&#xff0c;C#线程和进程之间的区别是什么&#xff1f; 简记&#xff1a;协程和线程区别 协程(协同程序Coroutine): 同一时间只能执行某个协程。开辟多个协程开销不大。协程适合对某任务进行分时处理。 Un…

workerman+TP6实战网站客服系统之项目初始化

TP6 官方手册: 安装 ThinkPHP6.0完全开发手册 看云 安装TP6: composer create-project topthink/think tp6 报错: 解决问题: PHP默认把这个 proc_open 函数禁用了,取消禁用即可 取消禁用函数流程参考之前一篇文章 php workerman入门之运行起来_山山河川的博客-CSDN博…

Java中的匿名内部类

一、什么是匿名内部类&#xff1f; 定义&#xff1a;巴拉巴拉巴拉&#xff0c;就不写了。 语法&#xff1a; 部分内容来源于&#xff1a;什么是匿名内部类&#xff0c;如何使用匿名内部类_Weihaom_的博客-CSDN博客_匿名内部类 二、为什么要有匿名内部类&#xff1f; 在开发…

【大数据入门核心技术-Flume】(二)Flume安装部署

目录 一、准备工作 1、基本Hadoop环境安装 2、下载安装包 二、安装 1、解压 2、修改环境变量 3、修改并配置 flume-env.sh 文件 4、验证是否安装成功 一、准备工作 1、基本Hadoop环境安装 参考 Hadoop安装 【大数据入门核心技术-Hadoop】&#xff08;五&#xff09…