新版国标GB28181设备端Android版EasyGBD支持国标GB28181-2022,支持语音对讲,支持位置上报,开源在Github

经过近3个月的迭代开发,新版本的国标GB28181设备端EasyGBD安卓Android版终于在昨天发布到Github了,最新的EasyGBD支持了国标GB28181-2022版,还支持了语音对讲、位置上报、本地录像等功能,比原有GB28181-2016版的EasyGBD更加高效、可靠!
EasyGBD
安卓版本EasyGBD的发布,为更多做国标GB28181开发的厂家带来了福利,不论是从产品集成的角度,还是从国标GB28181验证的角度,都给大家带来了一门利器!

/* DO NOT EDIT THIS FILE - it is machine generated */
#include <jni.h>#ifndef _Included_com_easygbs_Device
#define _Included_com_easygbs_Device
#ifdef __cplusplus
extern "C" {
#endif#define F(x,y,z) ((x & y) | (~x & z))
#define G(x,y,z) ((x & z) | (y & ~z))
#define H(x,y,z) (x^y^z)
#define I(x,y,z) (y ^ (x | ~z))
#define ROTATE_LEFT(x,n) ((x << n) | (x >> (32-n)))
#define FF(a,b,c,d,x,s,ac) \{ \a += F(b, c, d) + x + ac; \a = ROTATE_LEFT(a, s); \a += b; \}
#define GG(a,b,c,d,x,s,ac) \{ \a += G(b, c, d) + x + ac; \a = ROTATE_LEFT(a, s); \a += b; \}
#define HH(a,b,c,d,x,s,ac) \{ \a += H(b, c, d) + x + ac; \a = ROTATE_LEFT(a, s); \a += b; \}
#define II(a,b,c,d,x,s,ac) \{ \a += I(b, c, d) + x + ac; \a = ROTATE_LEFT(a, s); \a += b; \}typedef struct{unsigned int count[2];unsigned int state[4];unsigned char buffer[64];}MD5_CTX;void MD5Init(MD5_CTX *context);void MD5Update(MD5_CTX *context, unsigned char *input, unsigned int inputlen);void MD5Final(MD5_CTX *context, unsigned char digest[16]);void MD5Transform(unsigned int state[4], unsigned char block[64]);void MD5Encode(unsigned char *output, unsigned int *input, unsigned int len);void MD5Decode(unsigned int *output, unsigned char *input, unsigned int len);extern JavaVM *g_vm;JNIEXPORT jint JNICALL Java_com_easygbs_Device_create(JNIEnv *pEnv, jobject obj, jint version, jstring jstrServerIP, jint serverPort, jstring jstServerID, jstring jstServerDomain,jstring jstrDeviceId, jstring jstrDeviceName, jint localSipPort, jint channelNum, jstring jstPassword, jint protocol, jint mediaProtocol,jint regExpires, jint heartbeatInterval, jint heartbeatCount);JNIEXPORT jint JNICALL Java_com_easygbs_Device_addChannelInfo(JNIEnv *pEnv, jobject obj, jint channelId, jstring jstrIndexCode, jstring jstrName, jstring jstrManufacturer, jstring jstrModel,jstring jstrParentIndexCode, jstring jstrOwner, jstring jstrCivilCode, jstring jstrAddress,jdouble longitude, jdouble latitude);JNIEXPORT jint JNICALL Java_com_easygbs_Device_setVideoFormat(JNIEnv *env, jobject obj, jint channelId, jint codec, jint width, jint height, jint framerate);JNIEXPORT jint JNICALL Java_com_easygbs_Device_setAudioFormat(JNIEnv *env, jobject obj, jint channelId, jint codec, jint samplerate, jint channels, jint bitPerSamples);JNIEXPORT jint JNICALL Java_com_easygbs_Device_setLotLat(JNIEnv *env, jobject obj, jint channelId, jdouble longitude, jdouble latitude);JNIEXPORT jint JNICALL Java_com_easygbs_Device_pushVideo(JNIEnv *pEnv, jobject obj, jint channelId, jbyteArray framedata, jint framesize, jint keyframe);JNIEXPORT jint JNICALL Java_com_easygbs_Device_pushAudio(JNIEnv *env, jobject obj, jint channelId, jint srcFormat, jbyteArray framedata, jint framesize, jint nbSamples);JNIEXPORT jint JNICALL Java_com_easygbs_Device_release(JNIEnv *, jobject);#ifdef __cplusplus
}
#endif
#endif

从接口代码看,简单的几个接口就搞定了直播、对讲、位置上报等功能,国标GB28181的开发变得特别简单!

可以直接下载测试看看:http://app.tsingsee.com/easygbd

Github地址:https://github.com/EasyDarwin/EasyGBD/tree/GB28181-2022(Android)

下一期带来EasyGBD-Android的使用方法~

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

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

YOLO-World:Real-Time Open-Vocabulary Object Detection

目录 摘要 Abstract YOLO-World 1 模型架构 1.1 Text Encoder 1.2 YOLO Backbone 2 RepVL-PAN 2.1 T-CSPLayer 2.2 I-Pooling Attention 2.3 预测 3 消融实验 3.1 预训练数据 3.2 RepVL-PAN的消融实验 3.3 文本编码器 4 效果展示 4.1 零样本 4.2 根据词汇表检…

MySQL -- 库的相关操作

目录 查看数据库 创建数据库 直接创建&#xff1a; 加约束条件 if not exists 字符集和校对规则 什么是字符集 什么是校对规则 校对规则的主要功能 校对规则的特性 查看指定的数据库使用的字符集和校对规则&#xff1a; 比较是否区分大小写字母差异 显示创建语句 …

【spring-cloud-gateway总结】

文章目录 什么是gateway如何导入gateway依赖路由配置gateway配置断路器导包配置 什么是gateway 在微服务架构中&#xff0c;gateway网关是一个服务&#xff0c;它作为系统的唯一入口点&#xff0c;处理所有的客户端请求&#xff0c;然后将这些请求路由到适当的服务。提供了几个…

mac iterm2 使用 lrzsz

前言 mac os 终端不支持使用 rz sz 上传下载文件&#xff0c;本文提供解决方法。 mac 上安装 brew install lrzsz两个脚本 注意&#xff1a;/usr/local/bin/iterm2-send-zmodem.sh 中的 sz命令路径要和你mac 上 sz 命令路径一致。 /usr/local/bin/iterm2-recv-zmodem.sh 中…

数智化医院分布式计算框架融合人工智能方向初步实现与能力转换浅析

人工智能中心计算机 一、引言 1.1 研究背景与意义 近年来&#xff0c;人工智能&#xff08;Artificial Intelligence&#xff0c;AI&#xff09;与大数据技术的迅猛发展为医疗行业带来了前所未有的变革机遇。医疗领域积累了海量的数据&#xff0c;如电子病历&#xff08;Elec…

airflow docker 安装

mkdir -p /root/airflow cd /root/airflow && mkdir -p ./dags ./logs ./plugins ./configcd /root/airflow/ wget https://airflow.apache.org/docs/apache-airflow/2.10.4/docker-compose.yaml nano docker-compose.yamlAIRFLOW__CORE__LOAD_EXAMPLES: false #初始化…

【数据安全】如何保证其安全

数据安全风险 数字经济时代&#xff0c;数据已成为重要的生产要素。智慧城市、智慧政务的建设&#xff0c;正以数据为核心&#xff0c;推动城市管理的智能化和公共服务的优化。然而&#xff0c;公共数据开放共享与隐私保护之间的矛盾日益凸显&#xff0c;如何在确保数据安全的…

springboot463学生信息管理系统论文(论文+源码)_kaic

摘 要 使用旧方法对学生信息管理系统的信息进行系统化管理已经不再让人们信赖了&#xff0c;把现在的网络信息技术运用在学生信息管理系统的管理上面可以解决许多信息管理上面的难题&#xff0c;比如处理数据时间很长&#xff0c;数据存在错误不能及时纠正等问题。这次开发的学…

postman读取文件执行

要从文件获取的变量 text 在pre-request 中写从文件获取数据的脚本。脚本实现了&#xff0c;设置了text默认值&#xff0c;从文件读取text列&#xff0c;将text存入环境变量 //获取text参数 var text "济南天气"; if(data.text){ text data.text } pm.environment.…

我的个人博客正式上线了!

我的个人博客终于上线啦点此访问 经过一番折腾&#xff0c;我的个人博客终于上线啦&#xff01;这是一个属于我自己的小天地&#xff0c;可以用来记录生活点滴、技术分享以及一些随想。 在这里&#xff0c;我想分享一下搭建博客的整个过程和心得体会。 为什么要搭建博客&…

摩尔信使MThings的逻辑控制功能范例

数值自增控制 数值自增/自减控制流程可广泛应用于生产线控制、工业机器人轨迹跟踪、输送带速度调整、空间环境模拟、炼油厂加热炉温度控制、啤酒和制药发酵过程控制、造纸机水分和基重控制以及多回路瞬态热流跟踪控制等多个领域&#xff0c;通过精确调整和优化关键参数&#xf…

高效处理PDF文件的终极工具:构建一个多功能PDF转换器

在日常工作中&#xff0c;处理PDF文件几乎是每个人都不可避免的任务。无论是从PDF中提取数据、合并多个PDF文件&#xff0c;还是处理文件中的敏感信息和图像&#xff0c;PDF文件的处理都可能成为繁琐且耗时的工作。如果你是数据分析师、工程师&#xff0c;或者从事文档管理的工…

ROS1入门教程3:自定义消息

一、新建项目 # 创建工作空间 mkdir -p demo3/src# 创建功能包 catkin_create_pkg demo roscpp rosmsg message_generation# 打开功能包 cd src/demo 二、创建自定义消息 # 创建消息目录 mkdir msg# 打开消息目录 cd msg# 创建消息文件 vim User.msg# 定义消息字段 string n…

《Java核心技术I》Swing的滑动条

滑动条 组合框在离散值中选择&#xff0c;滚动条从连续值中选择。 构造滑动条最常用方法&#xff1a;var slider new JSlider(min,max,initaValue); 如果忽略参数&#xff0c;最大值&#xff0c;最小值&#xff0c;初始值分别为0,100,50. 垂直滑动条&#xff0c;new JSlid…

STM32单片机使用CAN协议进行通信

CAN总线&#xff08;控制器局域网总线&#xff09; 理论知识 CAN总线是由BOSCH公司开发的一种简洁易用、传输速度快、易扩展、可靠性高的串行通信总线 CAN总线特征 两根通信线&#xff08;CAN_H、CAN_L&#xff09;&#xff0c;线路少&#xff0c;无需共地差分信号通信&…

基础爬虫案例实战

我们已经学习了多进程、requests、正则表达式的基本用法,但还没有完整地实现过一个爬取案例。这一节&#xff0c;我们就来实现一个完整的网站爬虫&#xff0c;把前面学习的知识点串联起来&#xff0c;同时加深对这些知识点的理解。 准备工作 我们需要先做好如下准备工作。 安…

网络安全防范

实践内容 学习总结 PDR&#xff0c;$$P^2$$DR安全模型。 防火墙&#xff08;Firewall&#xff09;&#xff1a; 网络访问控制机制&#xff0c;布置在网际间通信的唯一通道上。 不足&#xff1a;无法防护内部威胁&#xff0c;无法阻止非网络传播形式的病毒&#xff0c;安全策略…

【QSS样式表 - ⑤】:QLineEdit控件样式

文章目录 QLineEdit控件样式QSS示例1 - select-QSS示例2 - read-onlyQSS示例3 - echoModeQSS示例4 - 自定义密码模式 QLineEdit控件样式 常用属性 常用选择器 QSS示例1 - select- 代码&#xff1a; QLineEdit{selection-color: red;selection-background-color: yellow…

ScottPlot学习的常用笔记-02

ScottPlot学习的常用笔记-02 写在前面Why&Target&#xff1a;这里记一些杂项。上下文&背景 先记一下这几个小时的新收获先说一下&#xff0c;为什么可开发可视工具缩放的问题ScottPlot5.0起步.net Core: WinExe.Net Framework也是可以的 写在前面 Why&Target&…

机器学习基础算法 (二)-逻辑回归

python 环境的配置参考 从零开始&#xff1a;Python 环境搭建与工具配置 逻辑回归是一种用于解决二分类问题的机器学习算法&#xff0c;它可以预测输入数据属于某个类别的概率。本文将详细介绍逻辑回归的原理、Python 实现、模型评估和调优&#xff0c;并结合垃圾邮件分类案例进…