Android平台GB28181接入模块(SmartGBD)技术设计和技术实现

技术背景

好多开发者跟我们做技术交流的时候,会问我们为什么会投入大的精力做Android平台的GB28181设备接入模块,说到底很简单:为了满足市场需求、提升用户体验、适应多种应用场景、发挥技术优势、做出行业的标杆产品。

大牛直播SDK在开发Android平台GB28181设备接入模块之前,已经积累了丰富的音视频处理、网络传输、跨平台适配等方面的技术优势和实践经验,为GB28181设备接入模块的开发奠定了坚实的基础。以下是其主要的技术积累:

音视频处理技术

  • 音视频采集与编码:在音视频采集方面,大牛直播SDK能够从Android平台的前后摄像头、屏幕等获取编码前数据,支持多种数据类型,如YV12、NV21、NV12、I420、RGB24、RGBA32、RGB565等。在编码方面,支持H.264、H.265(Android H.265硬编码)等视频编码格式,以及G.711 A律、AAC等音频编码格式。

  • 音视频处理与优化:具备音量调节、实时静音、降噪处理(如环境音、手机干扰引起的噪音降噪、自动增益、VAD检测)、实时快照、镜像等功能,能够对采集到的音视频数据进行有效的处理和优化,提升音视频质量。

网络传输技术

  • 多种传输协议支持:支持RTMP、RTSP等主流的音视频传输协议,能够实现低延迟的音视频传输,其低延迟模式下的延迟速度可稳定维持在100-300ms,为实时音视频通信提供了可靠保障。

  • 网络适应性与稳定性:内置断网重连、智能码率调节、多路流冗余转发等机制,确保在弱网环境下仍能保持流畅传输,这对于保障音视频数据在网络环境不稳定时的稳定传输至关重要。

跨平台适配技术

  • 多平台覆盖:大牛直播SDK覆盖Linux(x86_64/aarch64)、Windows(x86/x64)、Android(armeabi-v7a/arm64-v8a)、iOS(arm64)等主流平台,并提供统一的API接口设计,这种跨平台的适配能力为其在Android平台开发GB28181设备接入模块提供了良好的技术支持。

  • 与Unity3D的融合:针对虚拟仿真、工业设计等场景,SDK提供Unity3D插件,支持在Linux、Windows、Android、iOS平台直接调用RTMP/RTSP播放器,实现Unity界面与实时流媒体的无缝融合。

功能集成与拓展性

  • 多功能集成:同一推送实例能同步驾驭多项关键任务,如RTMP推送、GB28181设备对接、内置RTSP服务等,这种多功能集成的能力使得在开发GB28181设备接入模块时,可以更好地与其他功能模块协同工作,实现更复杂的应用场景。

  • 灵活的功能拓展:通过与其他SDK模块的搭配,如播放SDK与推送SDK的结合,可以扩展出更多功能,如一对一互动SDK模块、内网RTSP网关SDK等,为GB28181设备接入模块的功能拓展提供了更多的可能性。

GB28181协议相关技术积累

  • 对GB28181协议的深入理解:大牛直播SDK对GB28181协议有深入的理解和实践经验,熟悉该协议的传输要求、控制流程、注册注销、心跳机制、信令通道网络传输协议设置等技术细节。

    扫描二维码关注公众号,回复: 17606356 查看本文章
  • GB28181设备的兼容性与适配性:在GB28181设备接入方面,大牛直播SDK已经具备了良好的兼容性和适配性,能够与多种GB28181设备进行无缝对接,这对于开发Android平台的GB28181设备接入模块具有重要意义。

场景化应用经验

  • 丰富的应用场景实践:大牛直播SDK在安防监控、智能交通、智慧教育、远程办公、生产运输等多个领域有着丰富的应用场景实践,这些经验为其开发Android平台GB28181设备接入模块提供了宝贵的参考,使其能够更好地满足不同行业和场景的需求。

技术实践

功能设计

  •  [视频格式]H.264/H.265(Android H.265硬编码);
  •  [音频格式]G.711 A律、AAC;
  •  [音量调节]Android平台采集端支持实时音量调节;
  •  [H.264硬编码]支持H.264特定机型硬编码;
  •  [H.265硬编码]支持H.265特定机型硬编码;
  •  [软硬编码参数配置]支持gop间隔、帧率、bit-rate设置;
  •  [软编码参数配置]支持软编码profile、软编码速度、可变码率设置;
  •  支持横屏、竖屏推流;
  •  Android平台支持后台service推送屏幕(推送屏幕需要5.0+版本);
  • 支持纯视频、音视频PS打包传输;
  • 支持RTP OVER UDP和RTP OVER TCP被动模式(TCP媒体流传输客户端);
  • 支持信令通道网络传输协议TCP/UDP设置;
  • 支持注册、注销,支持注册刷新及注册有效期设置;
  • 支持设备目录查询应答;
  • 支持心跳机制,支持心跳间隔、心跳检测次数设置;
  • 支持移动设备位置(MobilePosition)订阅和通知;
  •  适用国家标准:GB/T 28181—2016、GB/T28181—2022;
  • 支持语音广播;
  • 支持语音对讲;
  • 支持图像抓拍;
  • 支持历史视音频文件检索;
  • 支持历史视音频文件下载;
  • 支持历史视音频文件回放;
  • 支持云台控制和预置位查询;
  •  [实时水印]支持动态文字水印、png水印;
  •  [镜像]Android平台支持前置摄像头实时镜像功能;
  •  [实时静音]支持实时静音/取消静音;
  •  [实时快照]支持实时快照;
  •  [降噪]支持环境音、手机干扰等引起的噪音降噪处理、自动增益、VAD检测;
  •  [外部编码前视频数据对接]支持YUV数据对接;
  •  [外部编码前音频数据对接]支持PCM对接;
  •  [外部编码后视频数据对接]支持外部H.264数据对接;
  •  [外部编码后音频数据对接]外部AAC数据对接;
  •  [扩展录像功能]支持和录像SDK组合使用,录像相关功能。

技术优势

Android平台GB28181接入SDK(SmartGBD)的技术优势主要体现在以下几个方面:

  1. 全自研框架:这意味着该SDK拥有全自研内核,可以进行深度的定制和优化,以满足不同客户的需求。同时,自研框架也意味着可以更好地控制质量和性能,确保产品的稳定性和可靠性。

  2. 低延迟和高采集编码传输效率:这对于实时性要求较高的应用场景非常重要,如执法记录仪、智能监控等。低延迟确保了音视频数据的实时传输,而高采集编码传输效率则保证了在有限的带宽下能够传输高质量的音视频数据。

  3. 支持多种音视频数据类型:包括编码前数据(如YV12/NV21/NV12/I420/RGB24/RGBA32/RGB565等)和编码后数据(如H.264/HEVC等),以及拉取RTSP或RTMP流的能力,这使得SDK具有很强的兼容性和适应性,可以适用于各种不同的音视频源。

  4. 丰富的功能支持:包括视频格式H.264/H.265、音频格式G.711 A律、AAC,音量调节,硬编码支持,软硬编码参数配置,横竖屏推流,后台service推送屏幕,纯视频、音视频PS打包传输,RTP OVER UDP和TCP被动模式,信令通道网络传输协议TCP/UDP设置,注册、注销,心跳机制,移动设备位置订阅和通知,语音广播和对讲,图像抓拍,历史视音频文件检索、下载和回放,云台控制和预置位查询,实时水印,镜像,实时静音,实时快照,降噪处理,外部编码前后数据对接,扩展录像功能等。

  5. 易于集成和使用:所有功能都以SDK接口形式提供,支持状态反馈,这意味着开发者可以很方便地将这些功能集成到自己的应用中,并且可以通过接口获取设备状态,进行相应的控制和管理。

  6. 支持多种国家标准:适用国家标准GB/T 28181—2016、GB/T28181—2022,这确保了产品的合规性,可以无缝对接到现有的国标平台。

  7. 扩展性强:可以同时运行RTMP直播推送SDK、轻量级RTSP服务SDK和录像SDK,这意味着该SDK不仅支持GB28181协议,还可以与其他流行的流媒体协议和功能相结合,提供更全面的解决方案。

  8. 参数灵活配置:所有参数均可通过SDK接口单独设置,也可以通过默认参数进行傻瓜式设置,这为不同技术水平的开发者提供了便利,无论是经验丰富的开发者还是初学者都可以快速上手。

  9. 适用于多种场景:如执法记录仪、智能安全帽、智能监控、智慧零售、智慧教育、远程办公、明厨亮灶、智慧交通、智慧工地、雪亮工程、平安乡村、生产运输、车载终端等,这表明该SDK具有广泛的应用领域和强大的适应性。

  10. 技术支持和文档:提供对应Demo和详细的技术对接文档,以及相关的博客文章,这些资源可以帮助开发者更快地理解和使用SDK,解决在开发过程中遇到的问题。

对应Demo

  •  Android工程:SmartPublisherV2、Camera2Demo;

技术对接文档

总结

这款Android平台GB28181接入SDK(SmartGBD)以其全面的功能、强大的性能、良好的兼容性和易用性,为开发者提供了一个高质量的解决方案,适用于多种需要音视频数据接入和传输的场景。