Android平台GB28181设备接入侧(编码前|编码后|RTSP|RTMP)支持功能浅析

简介: 在之前,我有写过Android平台GB28181设备接入模块的好多blog,包括参数设置、功能支持与扩展等,以数据接入为例,支持的数据类型涉及编码前、编码后或直接流数据(RTSP或RTMP流)。可用于如智能监控、智慧零售、智慧教育、远程办公、生产运输、智慧交通、车载或执法记录仪等场景。

在之前,我有写过Android平台GB28181设备接入模块的好多blog,包括参数设置、功能支持与扩展等,以数据接入为例,支持的数据类型涉及编码前、编码后或直接流数据(RTSP或RTMP流)。可用于如智能监控、智慧零售、智慧教育、远程办公、生产运输、智慧交通、车载或执法记录仪等场景。


  1. 编码前数据(目前支持的有YV12/NV21/NV12/I420/RGB24/RGBA32/RGB565等数据类型),其中,Android平台前后摄像头数据,或者屏幕数据,或者Unity拿到的数据,均属编码前数据;
  2. 编码后数据(如无人机等264/HEVC数据,或者本地解析的MP4音视频数据);
  3. 拉取RTSP或RTMP流并接入至GB28181平台(比如其他IPC的RTSP流,可通过Android平台GB28181接入到国标平台)。


以下就具体功能,做个简单描述:

668bbcaa3943882a5b74e901e1d57ba7.png

[视频格式]H.264/H.265(Android H.265硬编码)


一般来说,GB28181平台建议H.264,GB28181-2016没有专门针对H.265的描述,H.265数据上去,由于网页端没法直接播放H.265,部分平台的做法是,转H.264后再播放,这样无疑增加了平台端的性能压力,而且除了不当,不仅产生时延,而且容易导致音视频不同步。


[音频格式]G.711 A律、AAC


GB28181平台侧,一般建议G.711 A律,如果支持AAC编码,用AAC也未尝不可;


[音量调节]Android平台采集端支持实时音量调节


这个是针对好多Android设备,采集出来的音频声音过大或过小,做的音频消弱或放大;


[H.264、H.265硬编码]支持H.264/H.265特定机型硬编码


支持上层mediacodec硬编码和Native层的硬编码;


[软硬编码参数配置]支持gop间隔、帧率、bit-rate、软编码profile、软编码速度、可变码率设置


常规设置,帧率一般25-30帧,gop间隔,可以设置到帧率的2-4倍,编码bitrate可以根据分辨率帧率左一定的测算,其他针对软编码的参数不做赘述;


支持纯视频、音视频PS打包传输、支持RTP OVER UDP和RTP OVER TCP被动模式、支持信令通道网络传输协议TCP/UDP设置、支持注册、注销,支持注册刷新及注册有效期设置、支持设备目录查询应答、支持心跳机制,支持心跳间隔、心跳检测次数设置、支持移动设备位置(MobilePosition)订阅和通知、支持国标GB/T28181—2016平台接入、支持语音广播及语音对讲


以上是GB28181平台接入特有的功能;


[实时水印]支持动态文字水印、图片水印


我们是以层级结构是实现的动态文字水印、图片水印,确保水印位置可设置、水印可实时控制显示时间;


[镜像]Android平台支持前置摄像头实时镜像功能


镜像功能系常规功能,不做赘述;


[实时静音]支持实时静音/取消静音


如果不想调节采集端的实时音量,也可以直接实时静音非静音的模式,来看音频要不要推到GB28181国标平台接入测;


[实时快照]支持实时快照


实时快照用处比较大,特别是关键数据留底。


[降噪]支持环境音、手机干扰等引起的噪音降噪处理、自动增益、VAD检测


专门针对音频做的处理。


[扩展录像功能]支持和录像模块组合使用录像相关功能


GB28181接入侧,需要考虑到上传数据的时候,或者网络抖动亦或异常的时候,把数据归档存到本地,特别是我们实现了暂停|恢复备份,非常实用。


以上就是Android平台设备接入侧需要实现的大概细节,有感兴趣的开发者,可以酌情参考。

相关文章
|
2月前
|
Java Android开发 Swift
安卓与iOS开发对比:平台选择对项目成功的影响
【10月更文挑战第4天】在移动应用开发的世界中,选择合适的平台是至关重要的。本文将深入探讨安卓和iOS两大主流平台的开发环境、用户基础、市场份额和开发成本等方面的差异,并分析这些差异如何影响项目的最终成果。通过比较这两个平台的优势与挑战,开发者可以更好地决定哪个平台更适合他们的项目需求。
118 1
|
3月前
|
IDE Android开发 iOS开发
探索Android与iOS开发的差异:平台选择对项目成功的影响
【9月更文挑战第27天】在移动应用开发的世界中,Android和iOS是两个主要的操作系统平台。每个系统都有其独特的开发环境、工具和用户群体。本文将深入探讨这两个平台的关键差异点,并分析这些差异如何影响应用的性能、用户体验和最终的市场表现。通过对比分析,我们将揭示选择正确的开发平台对于确保项目成功的重要作用。
|
2月前
|
Linux API 开发工具
FFmpeg开发笔记(五十九)Linux编译ijkplayer的Android平台so库
ijkplayer是由B站研发的移动端播放器,基于FFmpeg 3.4,支持Android和iOS。其源码托管于GitHub,截至2024年9月15日,获得了3.24万星标和0.81万分支,尽管已停止更新6年。本文档介绍了如何在Linux环境下编译ijkplayer的so库,以便在较新的开发环境中使用。首先需安装编译工具并调整/tmp分区大小,接着下载并安装Android SDK和NDK,最后下载ijkplayer源码并编译。详细步骤包括环境准备、工具安装及库编译等。更多FFmpeg开发知识可参考相关书籍。
97 0
FFmpeg开发笔记(五十九)Linux编译ijkplayer的Android平台so库
|
3月前
|
开发工具 Android开发 iOS开发
安卓与iOS开发环境对比:选择适合你的平台
【9月更文挑战第26天】在移动应用开发的广阔天地中,安卓和iOS是两大巨头。它们各自拥有独特的优势和挑战,影响着开发者的选择和决策。本文将深入探讨这两个平台的开发环境,帮助你理解它们的核心差异,并指导你根据个人或项目需求做出明智的选择。无论你是初学者还是资深开发者,了解这些平台的异同都至关重要。让我们一起探索,找到最适合你的那片开发天地。
|
API 网络安全 Android开发
Android 设备唯一标识(适配Android版本)
Android 设备唯一标识(适配Android版本)
974 0
Android 设备唯一标识(适配Android版本)
|
存储 安全 搜索推荐
2022Android设备唯一标识(AndroidID,OAID等 )
2022Android设备唯一标识(AndroidID,OAID等 )
3652 0
2022Android设备唯一标识(AndroidID,OAID等 )
|
存储 API Android开发
Android设备唯一标识的获取和构造
设备唯一标识对于app开发是很重要的一个点,主要应用于统计,有时也应用于业务。 Android平台提供了很多获取唯一标识的API,但都不是很稳定。 一、获取唯一标识 Android开发者网站上的一篇文章Identifying App Installations给出了几种获取方式; 中文博文也有很多,这是其中一篇 Android获取设备唯一ID的几种方式。
1853 0
|
算法 Android开发 数据安全/隐私保护
Android设备的唯一标识
Android设备的唯一标识 IMEI 权限 获取IMEI /** * 获取IMEI * * @return IMEI */ private String ...
1003 0
|
10天前
|
开发框架 前端开发 Android开发
安卓与iOS开发中的跨平台策略
在移动应用开发的战场上,安卓和iOS两大阵营各据一方。随着技术的演进,跨平台开发框架成为开发者的新宠,旨在实现一次编码、多平台部署的梦想。本文将探讨跨平台开发的优势与挑战,并分享实用的开发技巧,帮助开发者在安卓和iOS的世界中游刃有余。
|
15天前
|
搜索推荐 Android开发 开发者
探索安卓开发中的自定义视图:打造个性化UI组件
【10月更文挑战第39天】在安卓开发的世界中,自定义视图是实现独特界面设计的关键。本文将引导你理解自定义视图的概念、创建流程,以及如何通过它们增强应用的用户体验。我们将从基础出发,逐步深入,最终让你能够自信地设计和实现专属的UI组件。