好多开发者希望我们不是从代码级,而是从流程方面,大概介绍下Android端GB28181设备接入段模块。本文以SmartGBD的Camera2Demo为例,大概聊下相关的集成流程。

大牛直播SDK推出的Android平台GB28181接入SDK(SmartGBD),可实现不具备国标音视频能力的 Android终端,通过平台注册接入到现有的GB/T28181—2016服务,可用于如执法记录仪、智能安全帽、智能监控、智慧零售、智慧教育、远程办公、明厨亮灶、智慧交通、智慧工地、雪亮工程、平安乡村、生产运输、车载终端等场景,可能是业内为数不多功能齐全性能优异的商业级水准GB28181接入SDK。

SmartGBD的集成过程主要涉及到几个关键步骤,包括准备工作、配置SIP服务器、注册设备以及处理呼叫等。以下是一个详细的集成指南:

如何快速对接Android平台GB28181接入模块(SmartGBD)_GB28181对接

一、准备工作

  1. 导入库和依赖
  • 确保GB28181相关的库和依赖被正确导入到你的Android项目中。支持的CPU架构包括armv7, arm64, x86, x86_64。
  • 将必要的Java文件(如SmartPublisherJniV2.java和SmartPlayerJniV2.java)放置在正确的包名下。
  • 将.jar文件和.so文件(如smartavengine.jar, smartgbsipagent.jar, libSmartPublisher.so, libSmartPlayer.so)添加到项目中。
  1. 配置AndroidManifest.xml
  • 添加必要的权限,如网络访问、文件存储、音频设置修改、位置访问等。
  1. 初始化库
  • 在Java代码中,通过System.loadLibrary方法加载.so文件。
  1. 配置build.gradle
  • 确保你的build.gradle文件配置了正确的ABI(Application Binary Interface)支持,以便生成支持不同CPU架构的APK。

二、配置GB28181平台参数

  1. 设置SIP服务器参数
  • 包括SIP服务器的地址、端口、用户凭证(如用户名和密码)等信息。
  • 这些信息通常需要在你的Android代码中硬编码或从配置文件读取。
  1. 创建SIP代理
  • 使用GB28181的SIP代理类(如GBSIPAgent)来管理SIP连接和信令。

三、注册设备

  1. 通过SIP协议注册设备
  • 使用SIP代理发送注册请求到SIP服务器。
  • 处理注册成功、超时或传输错误等回调。
  1. 维护注册状态
  • 发送心跳消息以保持注册状态,并根据需要重新注册。

四、处理呼叫

  1. 接收和处理呼叫请求
  • 当SIP服务器发送呼叫请求时,你的应用需要能够接收并处理这些请求。
  • 这可能包括接听呼叫、拒绝呼叫或发送忙信号等操作。
  1. 音视频数据的传输
  • 一旦呼叫被接受,你的应用需要负责音视频数据的传输。
  • 这可能涉及到使用RTP/RTCP等协议来传输音视频流。

五、其他功能

SmartGBD还支持多种其他功能,如:

  • 移动设备位置订阅和通知:允许你的设备在需要时报告其位置。
  • 语音广播和语音对讲:支持在设备之间或设备与服务器之间进行语音通信。
  • 实时快照和实时静音:提供对音视频流的实时控制。
  • 降噪和自动增益:改善音频质量。

六、测试和调试

  • 集成测试:在将SmartGBD集成到你的应用之前,确保在多个设备和网络环境下进行充分的测试。
  • 调试工具:使用Android Studio等开发工具来调试你的应用,并查看日志输出以诊断问题。

七、文档和资源

  • 技术文档:参考大牛直播SDK提供的SmartGBD技术文档和API指南。