CN105005478A - 一种基于Android平台移动设备的音量测算方法 - Google Patents

一种基于Android平台移动设备的音量测算方法 Download PDF

Info

Publication number
CN105005478A
CN105005478A CN201510449292.1A CN201510449292A CN105005478A CN 105005478 A CN105005478 A CN 105005478A CN 201510449292 A CN201510449292 A CN 201510449292A CN 105005478 A CN105005478 A CN 105005478A
Authority
CN
China
Prior art keywords
volume
value
buffer
audiorecord
android platform
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN201510449292.1A
Other languages
English (en)
Inventor
王树兵
张浩尘
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Technology (nanjing) Ltd By Share Ltd
Original Assignee
Technology (nanjing) Ltd By Share Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Technology (nanjing) Ltd By Share Ltd filed Critical Technology (nanjing) Ltd By Share Ltd
Priority to CN201510449292.1A priority Critical patent/CN105005478A/zh
Publication of CN105005478A publication Critical patent/CN105005478A/zh
Pending legal-status Critical Current

Links

Landscapes

  • Telephone Function (AREA)

Abstract

本发明公开的一种基于Android平台移动设备的音量测算方法,包括以下步骤:1)利用Android?AudioRecord?APIs获取音频数据;2)将存储音频数据的buffer内容取出,进行平方和运算;3)平方和再除以数据总长度,得出音量大小;4)将以上得到的音量大小与标准值进行比较。本发明的方法,使用的设备简单,可利用现有Android平台移动设备,比如手机、平板电脑等完成。测量过程也较简单,测量结果准确,能有效提供噪声警告。

Description

一种基于Android平台移动设备的音量测算方法
技术领域
本发明涉及音量测量技术领域,具体是一种基于Android平台移动设备的音量测算方法。
背景技术
噪声污染已经是现代社会环境的一大顽疾。无论是预防还是治理噪声污染,都必须首先测量音量大小。通过测量音量,为采取隔音或消音等措施提供依据。以往测量音量的设备都比较复杂和昂贵。
Android多媒体框架包括了对抓取和编码多种格式的音频的支持。在硬件支持的基础之上可以通过使用Android提供的AudioRecord APIs来获取音频数据。Android支持以下音频格式编解码:
发明内容
本发明要解决的问题是提供一种基于Android平台移动设备的音量测算方法,使用基于Android平台移动设备测算周围环境的音量,设备简单、成本低廉。
本发明的一种基于Android平台移动设备的音量测算方法,包括以下步骤:
1)利用Android  AudioRecord  APIs 获取音频数据;
2)将存储音频数据的buffer内容取出,进行平方和运算;
3)平方和再除以数据总长度,得出音量大小;
4)将以上得到的音量大小与标准值进行比较,音量大于或等于标准值时,发出警告。。
利用Android  AudioRecord  APIs 获取音频数据,优选的方法为:
11)新建一个AudioRecord对象:
111)声明并初始化Int型音频采样率基值SAMPLE_RATE_IN_HZ = 8000;
112)根据AudioRecord获取的存储音频数据的缓存空间值初始化Int型变量BUFFER_SIZE,此方法需要传入以下参数:音频采样率基值、声音通道格式、声音编码格式。
12)利用AudioRecord对象获取音频数据:
121)新建一个声音采集器对象,用于声源数据采集,需要传入以下参数:收录声音的设备说明、音频采样率基值、声音通道格式、声音编码格式、缓存空间大小值;
122)利用步骤112)的BUFFER_SIZE变量值作为数组长度新建一个数组结构的buffer缓冲池,用于存放音频数据;
123)声明并初始化一个Int型变量r,初始值为0;
124)利用步骤121)创建的声音采集器对象获取音频数据并赋给步骤123的Int型变量r。
所述步骤2)将存储音频数据的buffer内容取出,进行平方和运算的过程包括:
211)声明并初始化一个long型变量v,初始值为0;
212)遍历步骤122)的buffer缓冲池数据,并把每一位平方和相加后加到7步定义的变量v上,为v赋值。
所述步骤3)平方和再除以数据总长度,得出音量大小的过程为:
221)声明一个double型变量mean,并将变量v整除变量r后的值赋给变量mean;
222)声明一个double型变量volume,并把9步的变量mean进行10次方后取以10为底数的对数值赋给volume。
所述步骤4)中所采用的标准值为85分贝,低于85分贝为正常,等于或高于85分贝则为异常,异常时向使用者进行告警提醒。
本发明的基于Android平台移动设备的音量测算方法,使用的设备简单,可利用现有Android平台移动设备,比如手机、平板电脑等完成。测量过程也较简单,测量结果准确,能有效提供噪声警告。应用的领域广泛,比如,监测被监护人所处环境的音量值,反映出被监护人当前所处环境是否存在安全隐患,从而方便监护人及时采取措施最大可能的保证被监护人的健康安全,在保证对被监护人所处环境的分贝值有效监测的前提下,最大限度的节约成本。
具体实施方式
下面对本发明提出的一种基于Android平台移动设备的音量测算方法进行详细描述。
本发明的一种基于Android平台移动设备的音量测算方法,包括以下步骤:
第一步、利用Android  AudioRecord  APIs 获取音频数据:
11、新建一个AudioRecord对象。
新建一个AudioRecord对象包括以下过程:
111、声明并初始化Int型音频采样率基值SAMPLE_RATE_IN_HZ = 8000;
112、根据AudioRecord获取的存储音频数据的缓存空间值初始化Int型变量BUFFER_SIZE,此方法需要传入以下参数:音频采样率基值、声音通道格式、声音编码格式。
12、利用AudioRecord对象获取音频数据。
利用AudioRecord对象获取音频数据包括以下过程:
121、新建一个声音采集器对象,用于声源数据采集,需要传入以下参数:收录声音的设备说明、音频采样率基值、声音通道格式、声音编码格式、缓存空间大小值;
122、利用步骤112的BUFFER_SIZE变量值作为数组长度新建一个数组结构的buffer缓冲池,用于存放音频数据;
123、声明并初始化一个Int型变量r,初始值为0;
124、利用步骤121创建的声音采集器对象获取音频数据并赋给步骤123的Int型变量r。
实现利用Android  AudioRecord  APIs 获取音频数据的程序代码如下:
static final int SAMPLE_RATE_IN_HZ = 8000;
static final int BUFFER_SIZE = AudioRecord.getMinBufferSize(SAMPLE_RATE_IN_HZ, AudioFormat.CHANNEL_IN_DEFAULT, AudioFormat.ENCODING_PCM_16BIT);
(BUFFER_SIZE:用于存储收集的音频数据的缓存大小;
SAMPLE_RATE_IN_HZ:音频采样率,以赫兹为单位;
AudioFormat.CHANNEL_IN_DEFAULT:Android默认的audio channel;
AudioFormat.ENCODING_PCM_16BIT:对音频数据采用的编码格式。
AudioRecorder recorder = new AudioRecorder(MediaRecorder.AudioSource. MIC, SAMPLE_RATE_IN_HZ, AudioFormat.CHANNEL_IN_DEFAULT, AudioFormat.ENCODING_PCM_16BIT,  BUFFER_SIZE,);
MediaRecorder.AudioSource. MIC:麦克风
short[] buffer = new short[BUFFER_SIZE];
int r = 0;
r = mAudioRecord.read(buffer, 0, BUFFER_SIZE);
第二步、对音频数据进行处理:
21、将存储音频数据的buffer内容取出,进行平方和运算:
211、声明并初始化一个long型变量v,初始值为0;
212、遍历步骤122的buffer缓冲池数据,并把每一位平方和相加后加到7步定义的变量v上,为v赋值。
22、平方和再除以数据总长度,得出音量大小,单位为分贝:
221、声明一个double型变量mean,并将变量v整除变量r后的值赋给变量mean;
222、声明一个double型变量volume,并把9步的变量mean进行10次方后取以10为底数的对数值赋给volume。
实现第二步对音频数据进行处理的代码如下:
long v = 0;
for (int i = 0; i < buffer.length; i++) {
v += buffer[i] * buffer[i]}
double mean = v / (double) r;
double volume = 10 * Math.log10(mean);
第三步:将以上得到的音量大小与标准值进行比较
31、将步骤222得到的volume变量值与Int值85进行比较,若volume>85,则通知服务器告警,否则,继续进行测量。即本技术方案选择85分贝为标准值,低于85分贝为正常,等于或高于85分贝则为异常,此时将向使用者进行告警提醒。
所举例代码仅是实现上述方法的一种形式,还可以以其他代码实现上述方法。
使用程序代码实现本发明的方法的工作流程为:
一、            根据本发明方法编写应用程序;
二、            部署应用程序到Android设备;
三、            部署接收告警信息的服务器;
四、            运行服务器接收端,打开步骤二中Android设备上事先安装的应用程序;
五、            当步骤2)的设备测试到所处环境的音量值大于85时,反馈给服务器告警信息;
六、            服务器端根据告警信息做相应处理。
    以上实施例仅用以说明本发明的技术方案,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,其均应涵盖在本发明的权利要求范围当中。

Claims (7)

1.一种基于Android平台移动设备的音量测算方法,其特征在于,包括以下步骤:
1)利用Android  AudioRecord  APIs 获取音频数据;
2)将存储音频数据的buffer内容取出,进行平方和运算;
3)平方和再除以数据总长度,得出音量大小;
4)将以上得到的音量大小与标准值进行比较,音量大于或等于标准值时,发出警告。
2.根据权利要求1所述的基于Android平台移动设备的音量测算方法其特征在于,利用Android  AudioRecord  APIs 获取音频数据的过程为:
11)新建一个AudioRecord对象;
12)利用AudioRecord对象获取音频数据。
3.根据权利要求2所述的基于Android平台移动设备的音量测算方法其特征在于,所述步骤11)新建一个AudioRecord对象包括以下过程:
111)声明并初始化Int型音频采样率基值SAMPLE_RATE_IN_HZ = 8000;
112)根据AudioRecord获取的存储音频数据的缓存空间值初始化Int型变量BUFFER_SIZE,此方法需要传入以下参数:音频采样率基值、声音通道格式、声音编码格式。
4.根据权利要求1所述的基于Android平台移动设备的音量测算方法其特征在于,所述步骤12)利用AudioRecord对象获取音频数据包括以下过程:
121)新建一个声音采集器对象,用于声源数据采集,需要传入以下参数:收录声音的设备说明、音频采样率基值、声音通道格式、声音编码格式、缓存空间大小值;
122)利用步骤112)的BUFFER_SIZE变量值作为数组长度新建一个数组结构的buffer缓冲池,用于存放音频数据;
123)声明并初始化一个Int型变量r,初始值为0;
124)利用步骤121)创建的声音采集器对象获取音频数据并赋给步骤123的Int型变量r。
5.根据权利要求1所述的基于Android平台移动设备的音量测算方法其特征在于,所述步骤2)将存储音频数据的buffer内容取出,进行平方和运算的过程包括:
211)声明并初始化一个long型变量v,初始值为0;
212)遍历步骤122)的buffer缓冲池数据,并把每一位平方和相加后加到7步定义的变量v上,为v赋值。
6.根据权利要求1所述的基于Android平台移动设备的音量测算方法其特征在于,所述步骤3)平方和再除以数据总长度,得出音量大小的过程为:
221)声明一个double型变量mean,并将变量v整除变量r后的值赋给变量mean;
222)声明一个double型变量volume,并把9步的变量mean进行10次方后取以10为底数的对数值赋给volume。
7.根据权利要求1所述的基于Android平台移动设备的音量测算方法其特征在于,步骤4)中所采用的标准值为85分贝,低于85分贝为正常,等于或高于85分贝则为异常,异常时向使用者进行告警提醒。
CN201510449292.1A 2015-07-28 2015-07-28 一种基于Android平台移动设备的音量测算方法 Pending CN105005478A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201510449292.1A CN105005478A (zh) 2015-07-28 2015-07-28 一种基于Android平台移动设备的音量测算方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201510449292.1A CN105005478A (zh) 2015-07-28 2015-07-28 一种基于Android平台移动设备的音量测算方法

Publications (1)

Publication Number Publication Date
CN105005478A true CN105005478A (zh) 2015-10-28

Family

ID=54378159

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510449292.1A Pending CN105005478A (zh) 2015-07-28 2015-07-28 一种基于Android平台移动设备的音量测算方法

Country Status (1)

Country Link
CN (1) CN105005478A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107743279A (zh) * 2017-10-09 2018-02-27 维沃移动通信有限公司 一种耳机降噪方法、耳机及移动终端

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1575036A (zh) * 2003-06-23 2005-02-02 Lg电子株式会社 控制移动终端的扬声器音量的***和方法
CN1783786A (zh) * 2004-11-30 2006-06-07 雅马哈株式会社 音乐传送装置和音乐再生装置
CN1830141A (zh) * 2003-07-28 2006-09-06 皇家飞利浦电子股份有限公司 音频调节装置、方法和计算机程序产品

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1575036A (zh) * 2003-06-23 2005-02-02 Lg电子株式会社 控制移动终端的扬声器音量的***和方法
CN1830141A (zh) * 2003-07-28 2006-09-06 皇家飞利浦电子股份有限公司 音频调节装置、方法和计算机程序产品
CN1783786A (zh) * 2004-11-30 2006-06-07 雅马哈株式会社 音乐传送装置和音乐再生装置

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
JUNJIE: "Android中实时获取音量分贝值详解", 《脚本之家》 *
小米的博客: "Android实时获取音量", 《CSDN》 *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107743279A (zh) * 2017-10-09 2018-02-27 维沃移动通信有限公司 一种耳机降噪方法、耳机及移动终端
CN107743279B (zh) * 2017-10-09 2019-11-19 维沃移动通信有限公司 一种耳机降噪方法、耳机及移动终端

Similar Documents

Publication Publication Date Title
CN106164845B (zh) 基于关注的动态音频水平调整
CN110830437B (zh) 高频业务数据的数据压缩方法、装置、设备及存储介质
CN106448686B (zh) 一种自适应音频空域隐写方法
CN111903144B (zh) 环境立体声空间音频的客观质量度量
US10783884B2 (en) Electronic device-awakening method and apparatus, device and computer-readable storage medium
CN111683317B (zh) 一种应用于耳机的提示方法、装置、终端及存储介质
CN106445451B (zh) 一种音频音量增益方法和装置
EP4235458A3 (en) Systems and methods for identifying and providing information about semantic entities in audio signals
CN105005478A (zh) 一种基于Android平台移动设备的音量测算方法
CN115424629A (zh) 一种基于车载娱乐***的车辆内外通话方法、***和车辆
CN108701461A (zh) 用于具有多个反射的声源的改进的立体混响编码器
CN114063964A (zh) 音量补偿优化方法、装置、电子设备及可读存储介质
CN113111233B (zh) 基于正则表达式的接处警文本居住地地址提取方法和装置
US20220212108A1 (en) Audio frequency signal processing method and apparatus, terminal and storage medium
CN112466337A (zh) 音频数据情绪检测方法、装置、电子设备及存储介质
WO2023025294A1 (zh) 用于音频渲染的信号处理方法、装置和电子设备
CN104835500B (zh) 一种音频信息获取的方法及其装置
CN107783866A (zh) 一种多媒体设备的测试方法及装置
Tatlas et al. On the effect of compression on the complexity characteristics of wireless acoustic sensor network signals
CN110458743B (zh) 基于大数据分析的社区治理方法、装置、设备及存储介质
CN113111230B (zh) 基于正则表达式的接处警文本户籍地地址提取方法和装置
CN112423120B (zh) 音频时延的检测方法及***
CN106981034B (zh) 生成住房使用信息的方法和装置
CN110635966A (zh) 一种流量数据的可视化展示***、方法、介质和电子设备
CN117792547B (zh) 一种应急广播终端安装的判定方法、装置、设备和介质

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
RJ01 Rejection of invention patent application after publication

Application publication date: 20151028

RJ01 Rejection of invention patent application after publication