CN108182047B - 一种音量信息的显示方法及装置 - Google Patents
一种音量信息的显示方法及装置 Download PDFInfo
- Publication number
- CN108182047B CN108182047B CN201611122285.1A CN201611122285A CN108182047B CN 108182047 B CN108182047 B CN 108182047B CN 201611122285 A CN201611122285 A CN 201611122285A CN 108182047 B CN108182047 B CN 108182047B
- Authority
- CN
- China
- Prior art keywords
- volume
- value
- maximum
- audio data
- historical
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 63
- 238000005070 sampling Methods 0.000 claims abstract description 43
- 238000012544 monitoring process Methods 0.000 claims description 8
- 238000011161 development Methods 0.000 description 9
- 230000006870 function Effects 0.000 description 7
- 238000004364 calculation method Methods 0.000 description 6
- 238000012360 testing method Methods 0.000 description 5
- 238000012827 research and development Methods 0.000 description 4
- 238000010586 diagram Methods 0.000 description 3
- 230000000694 effects Effects 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 238000009877 rendering Methods 0.000 description 3
- 230000003139 buffering effect Effects 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 238000011990 functional testing Methods 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 238000012163 sequencing technique Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/16—Sound input; Sound output
- G06F3/165—Management of the audio stream, e.g. setting of volume, audio stream path
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/16—Sound input; Sound output
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Health & Medical Sciences (AREA)
- Audiology, Speech & Language Pathology (AREA)
- General Health & Medical Sciences (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Multimedia (AREA)
- Circuit For Audible Band Transducer (AREA)
- Control Of Amplification And Gain Control (AREA)
Abstract
本发明实施例公开了一种音量信息的显示方法及装置,所述方法包括:根据预设采样频率对音频数据流中当前音频数据帧进行数据采样;根据采样值计算所述当前音频数据帧的音量有效值和音量最大值;获取预设时间长度内各个音频数据帧的音量最大值中的最大值,得到预设时间长度内播放的音频数据流的音量峰值;将所述音量有效值、音量最大值和音量峰值在所述音频数据流的当前播放界面进行可视化展示。本发明实施例提出的音量信息的显示方法及装置,能够在音频数据流的播放过程中实现音量有效值、音量最大值和音量峰值的显示,丰富音量信息的显示方式,提升用户的使用体验。
Description
技术领域
本发明涉及计算机技术领域,尤其涉及一种音量信息的显示方法及装置。
背景技术
在开发与音频相关的应用程序,如视频播放器、音乐播放器等,需要显示当前音量的强度,以协助研发人员在开发过程中更好的完成应用程序的功能测试。
但是,在实现本发明技术方案过程中,发明人发现现有技术仅能够实现对音频数据流中的音频数据帧的音量高低比例的显示,功能比较单一,难以满足用户的测试需求。而且,对于采用音频相关的应用程序进行音频数据播放时,用户也可能会存在对各种音量信息的显示需求,以感知对音频数据流的音量强度,但目前的音量条的实现方法却无法满足用户的需求。
发明内容
鉴于上述问题,本发明提出了一种音量信息的显示方法及装置,能够在音频数据流的播放过程中实现音量有效值、音量最大值和音量峰值的显示,丰富音量信息的显示方式,提升用户的使用体验。
本发明的一个方面,提供了一种音量信息的显示方法,所述方法包括:
根据预设采样频率对音频数据流中当前音频数据帧进行数据采样;
根据采样值计算所述当前音频数据帧的音量有效值和音量最大值;
获取预设时间长度内各个音频数据帧的音量最大值中的最大值,得到预设时间长度内播放的音频数据流的音量峰值;
将所述音量有效值、音量最大值和音量峰值在所述音频数据流的当前播放界面进行可视化展示。
可选地,在所述将所述音量有效值、音量最大值和音量峰值在所述音频数据流的当前播放界面进行可视化展示之后,所述方法还包括:
监测音频数据流中播放的第二音频数据帧的第二音量最大值;
当所述第二音量最大值大于历史音量最大值时,将所述历史音量最大值更新为所述第二音量最大值,所述历史音量最大值为第二音频数据帧的前一音频数据帧的音量最大值;
当所述第二音量最大值小于所述历史音量最大值时,根据所述第二音量最大值、历史音量最大值以及预设第二音量最大值和历史音量最大值的权重系数,计算目标音量最大值,并将所述历史音量最大值更新为所述目标音量最大值。
可选地,在将所述历史音量最大值更新为所述目标音量最大值之后,所述方法还包括:
若所述第二音量最大值大于历史音量峰值,或,距离历史音量峰值的更新时刻的时间长度大于更新延时最大值时,则将所述历史音量峰值更新为所述第二音量最大值,并重启更新延时定时器。
可选地,在所述将所述音量有效值、音量最大值和音量峰值在所述音频数据流的当前播放界面进行可视化展示之后,所述方法还包括:
监测音频数据流中播放的第二音频数据帧的第二音量有效值;
当所述第二音量有效值大于历史音量有效值时,根据所述第二音量有效值、历史音量有效值以及预设第二音量有效值和历史音量有效值的第一权重系数,计算第一目标音量有效值,并将所述历史音量有效值更新为所述第一目标音量有效值,所述历史音量有效值为所述第二音频数据帧的前一音频数据帧的音量有效值;
当所述第二音量有效值小于所述历史音量有效值时,根据所述第二音量有效值、历史音量有效值以及预设第二音量有效值和历史音量有效值的第二权重系数,计算第二目标音量有效值,并将所述历史音量有效值更新为所述第二目标音量有效值。
可选地,所述将所述音量有效值、音量最大值和音量峰值在所述音频数据流的当前播放界面进行可视化展示,包括:
在所述音频数据流的当前播放界面创建音量条控件;
根据所述音量有效值、音量最大值、音量峰值以及所述音量条控件对应的最大音量值,分别计算所述音量有效值、音量最大值和音量峰值在所述音量条控件上的目标显示比例;
根据所述音量有效值、音量最大值和音量峰值在所述音量条控件上的目标显示比例以及所述音量条控件的宽度值,分别确定所述音量有效值、音量最大值和音量峰值在所述音量条控件上的目标绘制点;
根据所述音量有效值、音量最大值和音量峰值在所述音量条控件上的目标绘制点,在所述音量条控件上进行音量信息的显示。
本发明的又一个方面,提供了一种音量信息的显示装置,所述装置包括:
采样模块,用于根据预设采样频率对音频数据流中当前音频数据帧进行数据采样;
计算模块,用于根据所述采样模块得到的采样值计算所述当前音频数据帧的音量有效值和音量最大值;
获取模块,用于获取预设时间长度内各个音频数据帧的音量最大值中的最大值,得到预设时间长度内播放的音频数据流的音量峰值;
显示模块,用于将所述音量有效值、音量最大值和音量峰值在所述音频数据流的当前播放界面进行可视化展示。
可选地,所述装置还包括:
音量最大值更新模块,用于在所述将所述音量有效值、音量最大值和音量峰值在所述音频数据流的当前播放界面进行可视化展示之后,监测音频数据流中播放的第二音频数据帧的第二音量最大值;当所述第二音量最大值大于历史音量最大值时,将所述历史音量最大值更新为所述第二音量最大值,所述历史音量最大值为第二音频数据帧的前一音频数据帧的音量最大值;当所述第二音量最大值小于所述历史音量最大值时,根据所述第二音量最大值、历史音量最大值以及预设第二音量最大值和历史音量最大值的权重系数,计算目标音量最大值,并将所述历史音量最大值更新为所述目标音量最大值。
可选地,所述装置还包括:
音量峰值更新模块,用于在将所述历史音量最大值更新为所述目标音量最大值之后,当所述第二音量最大值大于历史音量峰值,或,距离历史音量峰值的更新时刻的时间长度大于更新延时最大值时,将所述历史音量峰值更新为所述第二音量最大值,并重启更新延时定时器。
可选地,所述装置还包括:
音量有效值更新模块,用于在所述将所述音量有效值、音量最大值和音量峰值在所述音频数据流的当前播放界面进行可视化展示之后,监测音频数据流中播放的第二音频数据帧的第二音量有效值;当所述第二音量有效值大于历史音量有效值时,根据所述第二音量有效值、历史音量有效值以及预设第二音量有效值和历史音量有效值的第一权重系数,计算第一目标音量有效值,并将所述历史音量有效值更新为所述第一目标音量有效值,所述历史音量有效值为所述第二音频数据帧的前一音频数据帧的音量有效值;当所述第二音量有效值小于所述历史音量有效值时,根据所述第二音量有效值、历史音量有效值以及预设第二音量有效值和历史音量有效值的第二权重系数,计算第二目标音量有效值,并将所述历史音量有效值更新为所述第二目标音量有效值。
可选地,所述显示模块,包括:
创建单元,用于在所述音频数据流的当前播放界面创建音量条控件;
计算单元,用于根据所述音量有效值、音量最大值、音量峰值以及所述音量条控件对应的最大音量有效值,分别计算所述音量有效值、音量最大值和音量峰值在所述音量条控件上的目标显示比例;
确定单元,用于根据所述音量有效值、音量最大值和音量峰值在所述音量条控件上的目标显示比例以及所述音量条控件的宽度值,分别确定所述音量有效值、音量最大值和音量峰值在所述音量条控件上的目标绘制点;
显示单元,用于根据所述音量有效值、音量最大值和音量峰值在所述音量条控件上的目标绘制点,在所述音量条控件上进行音量信息的显示。
本发明实施例提供的音量信息的显示方法及装置,通过对音频数据流中当前音频数据帧进行数据采样,得到当前音频数据帧的音量有效值、音量最大值以及预设时间长度内播放的音频数据流的音量峰值,并将该音量有效值、音量最大值和音量峰值在音频数据流的当前播放界面进行可视化展示。本发明实施例的音量信息的显示方法及装置,能够在音频数据流的播放过程中实现音量有效值、音量最大值和音量峰值的显示,丰富音量信息的显示方式,提升用户的使用体验。
此外,本发明实施例提出的音量信息的显示方法及装置,应用于对于音频相关的应用程序的开发,能够协助研发人员在开发过程中更好的完成应用程序的功能测试。
上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。
附图说明
通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
图1为本发明实施例的一种音量信息的显示方法的流程图;
图2为本发明实施例的一种音量信息的显示方法中步骤S14的细分流程图;
图3为本发明实施例的一种音量信息的显示装置的结构示意图;
图4为本发明实施例的一种音量信息的显示装置中显示模块的内部结构示意图。
具体实施方式
下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
本技术领域技术人员可以理解,除非另外定义,这里使用的所有术语(包括技术术语和科学术语),具有与本发明所属领域中的普通技术人员的一般理解相同的意义。还应该理解的是,诸如通用字典中定义的那些术语,应该被理解为具有与现有技术的上下文中的意义一致的意义,并且除非被特定定义,否则不会用理想化或过于正式的含义来解释。
图1示意性示出了本发明实施例的一种音量信息的显示方法的流程图。参照图1,本发明实施例的音量信息的显示方法具体包括以下步骤:
S11、根据预设采样频率对音频数据流中当前音频数据帧进行数据采样。
本发明实施例中的当前音频数据帧具体是指音频数据流的当前播放的音频数据帧。本发明实施例中的采样频率为预先设定的,具体可根据实际应用场景的采用精度进行设置,本发明对此不作具体限定。
S12、根据采样值计算所述当前音频数据帧的音量有效值和音量最大值。
本实施例中,音量有效值具体是指当前音频数据帧的所有采样值的均方根值。其中,音量有效值和音量最大值的获取方法,具体如下:
计算所述当前音频数据帧的每一采样值的平方值;
获取各个采样值的平方值的平均值,并计算所述平均值的平方根,将得到的数据确定为所述当前音频数据帧的音量有效值;
对所述当前音频数据帧的采样值进行排序,查找所述采样值中的最大值,并将所述最大采样值确定为所述当前音频数据帧的音量最大值。
S13、获取预设时间长度内各个音频数据帧的音量最大值中的最大值,得到预设时间长度内播放的音频数据流的音量峰值。
S14、将所述音量有效值、音量最大值和音量峰值在所述音频数据流的当前播放界面进行可视化展示。
本发明实施例提供的音量信息的显示方法,通过对音频数据流中当前音频数据帧进行数据采样,得到当前音频数据帧的音量有效值、音量最大值以及预设时间长度内播放的音频数据流的音量峰值,并将该音量有效值、音量最大值和音量峰值在音频数据流的当前播放界面进行可视化展示。本发明实施例的音量信息的显示方法及装置,能够在音频数据流的播放过程中实现音量有效值、音量最大值和音量峰值的显示,丰富音量信息的显示方式,提升用户的使用体验。
此外,本发明实施例提出的音量信息的显示方法及装置,应用于对于音频相关的应用程序的开发,能够协助研发人员在开发过程中更好的完成应用程序的功能测试。
下面以一个具体实施例对本发明技术方案进行详细的解释说明。
1、从音频数据流中获取一帧音频数据;
2、计算帧音频数据的RMS(有效值)和Peak(音量最大值)
(a)、RMS(有效值):RMS就是均方根值,RMS---root meam square,最原始的是针对正弦波推导出来的,但实际上对所有的波形都适用。计算基本过程是先平方再平均(积分)最后开方。下面介绍计算公式:
RMS=(X1平方+X2平方+......+Xn平方)/n的1/2次方
其中,X1,X2,X3……为采样值,n为采样点数。
(1)计算采样值的平方值。
(2)对第一步得到的函数求时间平均值。
(3)计算第二步得到的时间平均值函数的平方根。
(b)、Peak(音量最大值)
Peak(音量最大值):是采样值中的最大采样值,方法是从一帧数据中获取最大的采样值。
在一个具体实施例中,由于计算一帧音频数据的RMS(有效值)和Peak(音量最大值)运算量比较大,因此可通过使用SSE指令集优化算法实现帧音频数据的RMS(有效值)和Peak(音量最大值)的计算:
__m128sseScaledVals=_mm_mul_ps(_mm_load_ps(buffer+i),sseMulVal);
Buffer:采样数据;sseMulVal:音量有效值;sseScaledVals:Buffer和sseMulVal乘积输出值;I:循环系数;
__m128sseSquares=_mm_mul_ps(sseScaledVals,sseScaledVals);
计算平方值并保存到sseSquares中;
sum+=sseSquares.m128_f32[0]+sseSquares.m128_f32[1]+sseSquares.m128_f32[2]+sseSquares.m128_f32[3];
计算平方值积分并保存到sum中;
__m128sseSquaresP=_mm_shuffle_ps(sseSquares,sseSquares,_MM_SHUFFLE(1,0,3,2));
按(1,0,3,2)顺序重排sseSquares到sseSquaresP;
__m128halfmax=_mm_max_ps(sseSquares,sseSquaresP);
对sseSquares进行第一次排序;
__m128halfmaxP=_mm_shuffle_ps(halfmax,halfmax,_MM_SHUFFLE(0,1,2,3));
同上
__m128maxs=_mm_max_ps(halfmax,halfmaxP);
同上
Max=max(Max,maxs.m128_f32[0]);
获取最大值并保存到Max中。
本发明实施例,通过使用SSE指令集能够高效地实现RMS(有效值)和Peak(音量最大值)的计算。
在另一个具体实施例中,还可通过使用C语言代码实现帧音频数据的RMS(有效值)和Peak(音量最大值)的计算,虽然C语言代码没有采样SSE指令集实现方式的效率高,但其实现方式简单。
C语言代码实现具体如下:
其中,tatalFloates:采样值总数(输入);mulVal:音量有效值(输入)。
本发明实施例中的音量有效值、音量最大值和音量峰值均以分贝值的方式表示,具体通过以下公式计算RMS(有效值)的分贝值,公式如下:
db=20.0*log10(RMS);
其中,RMS:有效值(输入);db:计算的分贝值(输出)。
在本发明的一个可选实施例中,在所述将所述音量有效值、音量最大值和音量峰值在所述音频数据流的当前播放界面进行可视化展示之后,所述方法还包括以下附图中未示出的步骤:
监测音频数据流中播放的第二音频数据帧的第二音量最大值;
当所述第二音量最大值大于历史音量最大值时,将所述历史音量最大值更新为所述第二音量最大值,所述历史音量最大值为第二音频数据帧的前一音频数据帧的音量最大值;
当所述第二音量最大值小于所述历史音量最大值时,根据所述第二音量最大值、历史音量最大值以及预设第二音量最大值和历史音量最大值的权重系数,计算目标音量最大值,并将所述历史音量最大值更新为所述目标音量最大值。
在一个具体实施例中,更新音量最大值的具体实现方方式如下所示:
if(micMx>micMax)
micMax=micMx;
else
micMax=maxAlpha*micMx+(1.0f-maxAlpha)*micMax;
其中,micMx:Peak的分贝值(上一步输出值);micMax:缓存值;maxAlpha:权重系数值。当micMx>micMax时有最大采样值所以重置micMax,否则采样值驱小,音量变小需要根据权重系数缓慢修改音量最大值。
进一步地,在将所述历史音量最大值更新为所述目标音量最大值之后,所述方法还包括以下步骤:
若所述第二音量最大值大于历史音量峰值,或,距离历史音量峰值的更新时刻的时间长度大于更新延时最大值时,则将所述历史音量峰值更新为所述第二音量最大值,并重启更新延时定时器。
在一个具体实施例中,更新音量峰值的具体实现方方式如下所示:
其中,micMx:同上;micMax:同上:audioFramesSinceMicMaxUpdate:更新延时值;peakMeterDelayFrames:更新延时最大值;audiosamplesize:预设的更新延时修改值。当达到更新延时最大值或有大于历史音量峰值的最大采样值时重置音量峰值,并重启更新延时定时器,否则根据预设的更新延时修改值,修改更新延时值。
本发明实施例中,在所述将所述音量有效值、音量最大值和音量峰值在所述音频数据流的当前播放界面进行可视化展示之后,所述方法还包括以下附图中未示出的步骤:
监测音频数据流中播放的第二音频数据帧的第二音量有效值;
当所述第二音量有效值大于历史音量有效值时,根据所述第二音量有效值、历史音量有效值以及预设第二音量有效值和历史音量有效值的第一权重系数,计算第一目标音量有效值,并将所述历史音量有效值更新为所述第一目标音量有效值,所述历史音量有效值为所述第二音频数据帧的前一音频数据帧的音量有效值;
当所述第二音量有效值小于所述历史音量有效值时,根据所述第二音量有效值、历史音量有效值以及预设第二音量有效值和历史音量有效值的第二权重系数,计算第二目标音量有效值,并将所述历史音量有效值更新为所述第二目标音量有效值。
其中,第一权重系数和第二权重系数可以相同也可以不同。
在一个具体实施例中,更新音量有效值的具体实现方方式如下所示:
micMag=rmsAlpha*micRMS+micMag*(1.0-rmsAlpha);
micMag:音量有效值(输出);micRMS:同上;rmsAlpha:音量权重系数,使音量有效值缓慢的增加或减少。
本发明实施例中,可通过使用PostMessage发送窗口消息,实时更新音量有效值,音量最大值和音量峰值。而且本发明在进行音量有效值,音量最大值和音量峰值的更新过程中,为了避免显示效果不明显或过度过快等问题,通过权重系数的设置实现音量有效值缓慢的增加或减少,提升用户的观看体验。
为了进一步体现发明的优越性,如下进一步揭示本发明音量信息的显示方法中步骤S14的细分步骤,来体现依据本步骤实现的另一实施例。参照图2,本步骤的细分步骤包括:
S141、在所述音频数据流的当前播放界面创建音量条控件;
S142、根据所述音量有效值、音量最大值、音量峰值以及所述音量条控件对应的最大音量值,分别计算所述音量有效值、音量最大值和音量峰值在所述音量条控件上的目标显示比例;
S143、根据所述音量有效值、音量最大值和音量峰值在所述音量条控件上的目标显示比例以及所述音量条控件的宽度值,分别确定所述音量有效值、音量最大值和音量峰值在所述音量条控件上的目标绘制点;
S144、根据所述音量有效值、音量最大值和音量峰值在所述音量条控件上的目标绘制点,在所述音量条控件上进行音量信息的显示。
本实施例中的,具体采用双缓冲技术在所述音量条控件上进行音量有效值、音量最大值以及音量峰值的高效渲染,进而有效地提高音量条的显示速度和显示效果,提升用户的使用体验。
在本发明实施例中,通过以下步骤实现音量信息的显示,具体如下:
1、采用双缓存技术创建一个与音量条控件对应的位图对象。
操作流程具体如下,创建GDI双缓冲,首先通过CreateCompatibleDC方法创建一个临时DC,然后通过CreateCompatibleBitmap方法创建一个HBITMAP,最后通过SelectObject方法将HBITMAP选到临时DC中,这样就完成双缓冲创建。
2、对位图对象进行背景渲染。
3、根据音量有效值、音量最大值和音量峰值在音量条控件上的目标绘制点,分别确定音量有效值、音量最大值和音量峰值在所述位图对象中对应的待渲染区域。
4、背景渲染完成后,分别对音量有效值、音量最大值和音量峰值在位图对象中对应的待渲染区域进行渲染。
5、然后将渲染后的位图对象绘制到音量条控件。
在本发明实施例中,在所述创建音量条控件之后,所述方法还包括以下步骤:设置所述音量条控件对应的最大音量有效值;根据所述最大音量有效值以及预设的单位刻度值计算所述音量条控件的刻度线数量,并计算每一刻度线在所述音量条控件上的显示比例;根据每一刻度线在所述音量条控件上的显示比例以及所述音量条控件的宽度值,确定各刻度线在所述音量条控件上的各个刻度绘制点;根据所述各个刻度绘制点,采用双缓冲技术在所述音量条控件上进行刻度线的显示。
对于方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明实施例并不受所描述的动作顺序的限制,因为依据本发明实施例,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作并不一定是本发明实施例所必须的。
图3示意性示出了本发明实施例的一种音量信息的显示装置的结构示意图。参照图3,本发明实施例的音量信息的显示装置具体包括采样模块301、计算模块302、获取模块303以及显示模块304,其中:所述的采样模块301,用于根据预设采样频率对音频数据流中当前音频数据帧进行数据采样;所述的计算模块302,用于根据所述采样模块得到的采样值计算所述当前音频数据帧的音量有效值和音量最大值;所述的获取模块303,用于获取预设时间长度内各个音频数据帧的音量最大值中的最大值,得到预设时间长度内播放的音频数据流的音量峰值;所述的显示模块304,用于将所述音量有效值、音量最大值和音量峰值在所述音频数据流的当前播放界面进行可视化展示。
本发明实施例的音量信息的显示装置,能够在音频数据流的播放过程中实现音量有效值、音量最大值和音量峰值的显示,丰富音量信息的显示方式,提升用户的使用体验。此外,本发明实施例提出的音量信息的显示装置,应用于对于音频相关的应用程序的开发,能够协助研发人员在开发过程中更好的完成应用程序的功能测试。
在本发明的一个可选实施例中,所述装置还包括附图中未示出的音量最大值更新模块,所述的音量最大值更新模块,用于在所述将所述音量有效值、音量最大值和音量峰值在所述音频数据流的当前播放界面进行可视化展示之后,监测音频数据流中播放的第二音频数据帧的第二音量最大值;当所述第二音量最大值大于历史音量最大值时,将所述历史音量最大值更新为所述第二音量最大值,所述历史音量最大值为第二音频数据帧的前一音频数据帧的音量最大值;当所述第二音量最大值小于所述历史音量最大值时,根据所述第二音量最大值、历史音量最大值以及预设第二音量最大值和历史音量最大值的权重系数,计算目标音量最大值,并将所述历史音量最大值更新为所述目标音量最大值。
进一步地,本发明实施例中的音量信息的显示装置还包括附图中未示出的音量峰值更新模块,所述的音量峰值更新模块,用于在将所述历史音量最大值更新为所述目标音量最大值之后,当所述第二音量最大值大于历史音量峰值,或,距离历史音量峰值的更新时刻的时间长度大于更新延时最大值时,将所述历史音量峰值更新为所述第二音量最大值,并重启更新延时定时器。
在本发明的一个可选实施例中,所述装置还包括附图中未示出的音量有效值更新模块,所述的音量有效值更新模块,用于在所述将所述音量有效值、音量最大值和音量峰值在所述音频数据流的当前播放界面进行可视化展示之后,监测音频数据流中播放的第二音频数据帧的第二音量有效值;当所述第二音量有效值大于历史音量有效值时,根据所述第二音量有效值、历史音量有效值以及预设第二音量有效值和历史音量有效值的第一权重系数,计算第一目标音量有效值,并将所述历史音量有效值更新为所述第一目标音量有效值,所述历史音量有效值为所述第二音频数据帧的前一音频数据帧的音量有效值;当所述第二音量有效值小于所述历史音量有效值时,根据所述第二音量有效值、历史音量有效值以及预设第二音量有效值和历史音量有效值的第二权重系数,计算第二目标音量有效值,并将所述历史音量有效值更新为所述第二目标音量有效值。
为了进一步体现发明的优越性,如下进一步揭示本发明音量信息的显示装置中显示模块304的内部结构图,来体现依据本步骤实现的另一实施例。参照图4,本实施例中的显示模块304,具体包括创建单元3041、计算单元3042、确定单元3043以及显示单元3044,其中,所述的创建单元3041,用于在所述音频数据流的当前播放界面创建音量条控件;所述的计算单元3042,用于根据所述音量有效值、音量最大值、音量峰值以及所述音量条控件对应的最大音量值,分别计算所述音量有效值、音量最大值和音量峰值在所述音量条控件上的目标显示比例;所述的确定单元3043,用于根据所述音量有效值、音量最大值和音量峰值在所述音量条控件上的目标显示比例以及所述音量条控件的宽度值,分别确定所述音量有效值、音量最大值和音量峰值在所述音量条控件上的目标绘制点;所述的显示单元3044,用于根据所述音量有效值、音量最大值和音量峰值在所述音量条控件上的目标绘制点,在所述音量条控件上进行音量信息的显示。
对于装置实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
本发明实施例提供的音量信息的显示方法及装置,通过对音频数据流中当前音频数据帧进行数据采样,得到当前音频数据帧的音量有效值、音量最大值以及预设时间长度内播放的音频数据流的音量峰值,并将该音量有效值、音量最大值和音量峰值在音频数据流的当前播放界面进行可视化展示。本发明实施例的音量信息的显示方法及装置,能够在音频数据流的播放过程中实现音量有效值、音量最大值和音量峰值的显示,丰富音量信息的显示方式,提升用户的使用体验。
此外,本发明实施例提出的音量信息的显示方法及装置,应用于对于音频相关的应用程序的开发,能够协助研发人员在开发过程中更好的完成应用程序的功能测试。
以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
此外,本领域的技术人员能够理解,尽管在此的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本发明的范围之内并且形成不同的实施例。例如,在下面的权利要求书中,所要求保护的实施例的任意之一都可以以任意的组合方式来使用。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
Claims (8)
1.一种音量信息的显示方法,其特征在于,所述方法包括:
根据预设采样频率对音频数据流中当前音频数据帧进行数据采样;
根据采样值计算所述当前音频数据帧的音量有效值和音量最大值;
获取预设时间长度内各个音频数据帧的音量最大值中的最大值,得到预设时间长度内播放的音频数据流的音量峰值;
将所述音量有效值、音量最大值和音量峰值在所述音频数据流的当前播放界面进行可视化展示;
在所述将所述音量有效值、音量最大值和音量峰值在所述音频数据流的当前播放界面进行可视化展示之后,所述方法还包括:
监测音频数据流中播放的第二音频数据帧的第二音量最大值;
当所述第二音量最大值大于历史音量最大值时,将所述历史音量最大值更新为所述第二音量最大值,所述历史音量最大值为所述第二音频数据帧的前一音频数据帧的音量最大值;
当所述第二音量最大值小于所述历史音量最大值时,根据所述第二音量最大值、历史音量最大值以及预设第二音量最大值和历史音量最大值的权重系数,计算目标音量最大值,并将所述历史音量最大值更新为所述目标音量最大值。
2.根据权利要求1所述的方法,其特征在于,在将所述历史音量最大值更新为所述目标音量最大值之后,所述方法还包括:
若所述第二音量最大值大于历史音量峰值,或,距离历史音量峰值的更新时刻的时间长度大于更新延时最大值时,则将所述历史音量峰值更新为所述第二音量最大值,并重启更新延时定时器。
3.根据权利要求1-2任一项所述的方法,其特征在于,在所述将所述音量有效值、音量最大值和音量峰值在所述音频数据流的当前播放界面进行可视化展示之后,所述方法还包括:
监测音频数据流中播放的第二音频数据帧的第二音量有效值;
当所述第二音量有效值大于历史音量有效值时,根据所述第二音量有效值、历史音量有效值以及预设第二音量有效值和历史音量有效值的第一权重系数,计算第一目标音量有效值,并将所述历史音量有效值更新为所述第一目标音量有效值,所述历史音量有效值为所述第二音频数据帧的前一音频数据帧的音量有效值;
当所述第二音量有效值小于所述历史音量有效值时,根据所述第二音量有效值、历史音量有效值以及预设第二音量有效值和历史音量有效值的第二权重系数,计算第二目标音量有效值,并将所述历史音量有效值更新为所述第二目标音量有效值。
4.根据权利要求1所述的方法,其特征在于,所述将所述音量有效值、音量最大值和音量峰值在所述音频数据流的当前播放界面进行可视化展示,包括:
在所述音频数据流的当前播放界面创建音量条控件;
根据所述音量有效值、音量最大值、音量峰值以及所述音量条控件对应的最大音量值,分别计算所述音量有效值、音量最大值和音量峰值在所述音量条控件上的目标显示比例;
根据所述音量有效值、音量最大值和音量峰值在所述音量条控件上的目标显示比例以及所述音量条控件的宽度值,分别确定所述音量有效值、音量最大值和音量峰值在所述音量条控件上的目标绘制点;
根据所述音量有效值、音量最大值和音量峰值在所述音量条控件上的目标绘制点,在所述音量条控件上进行音量信息的显示。
5.一种音量信息的显示装置,其特征在于,所述装置包括:
采样模块,用于根据预设采样频率对音频数据流中当前音频数据帧进行数据采样;
计算模块,用于根据所述采样模块得到的采样值计算所述当前音频数据帧的音量有效值和音量最大值;
获取模块,用于获取预设时间长度内各个音频数据帧的音量最大值中的最大值,得到预设时间长度内播放的音频数据流的音量峰值;
显示模块,用于将所述音量有效值、音量最大值和音量峰值在所述音频数据流的当前播放界面进行可视化展示;
所述装置还包括:
音量最大值更新模块,用于在所述将所述音量有效值、音量最大值和音量峰值在所述音频数据流的当前播放界面进行可视化展示之后,监测音频数据流中播放的第二音频数据帧的第二音量最大值;当所述第二音量最大值大于历史音量最大值时,将所述历史音量最大值更新为所述第二音量最大值,所述历史音量最大值为第二音频数据帧的前一音频数据帧的音量最大值;当所述第二音量最大值小于所述历史音量最大值时,根据所述第二音量最大值、历史音量最大值以及预设第二音量最大值和历史音量最大值的权重系数,计算目标音量最大值,并将所述历史音量最大值更新为所述目标音量最大值。
6.根据权利要求5所述的装置,其特征在于,所述装置还包括:
音量峰值更新模块,用于在将所述历史音量最大值更新为所述目标音量最大值之后,当所述第二音量最大值大于历史音量峰值,或,距离历史音量峰值的更新时刻的时间长度大于更新延时最大值时,将所述历史音量峰值更新为所述第二音量最大值,并重启更新延时定时器。
7.根据权利要求5-6任一项所述的装置,其特征在于,所述装置还包括:
音量有效值更新模块,用于在所述将所述音量有效值、音量最大值和音量峰值在所述音频数据流的当前播放界面进行可视化展示之后,监测音频数据流中播放的第二音频数据帧的第二音量有效值;当所述第二音量有效值大于历史音量有效值时,根据所述第二音量有效值、历史音量有效值以及预设第二音量有效值和历史音量有效值的第一权重系数,计算第一目标音量有效值,并将所述历史音量有效值更新为所述第一目标音量有效值,所述历史音量有效值为所述第二音频数据帧的前一音频数据帧的音量有效值;当所述第二音量有效值小于所述历史音量有效值时,根据所述第二音量有效值、历史音量有效值以及预设第二音量有效值和历史音量有效值的第二权重系数,计算第二目标音量有效值,并将所述历史音量有效值更新为所述第二目标音量有效值。
8.根据权利要求5所述的装置,其特征在于,所述显示模块,包括:
创建单元,用于在所述音频数据流的当前播放界面创建音量条控件;
计算单元,用于根据所述音量有效值、音量最大值、音量峰值以及所述音量条控件对应的最大音量值,分别计算所述音量有效值、音量最大值和音量峰值在所述音量条控件上的目标显示比例;
确定单元,用于根据所述音量有效值、音量最大值和音量峰值在所述音量条控件上的目标显示比例以及所述音量条控件的宽度值,分别确定所述音量有效值、音量最大值和音量峰值在所述音量条控件上的目标绘制点;
显示单元,用于根据所述音量有效值、音量最大值和音量峰值在所述音量条控件上的目标绘制点,在所述音量条控件上进行音量信息的显示。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201611122285.1A CN108182047B (zh) | 2016-12-08 | 2016-12-08 | 一种音量信息的显示方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201611122285.1A CN108182047B (zh) | 2016-12-08 | 2016-12-08 | 一种音量信息的显示方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108182047A CN108182047A (zh) | 2018-06-19 |
CN108182047B true CN108182047B (zh) | 2020-10-16 |
Family
ID=62544836
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201611122285.1A Active CN108182047B (zh) | 2016-12-08 | 2016-12-08 | 一种音量信息的显示方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108182047B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP4297014A1 (en) * | 2022-06-22 | 2023-12-27 | Casio Computer Co., Ltd. | Indicator device, electronic musical instrument, light emission control method and storage medium |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110636329A (zh) * | 2018-06-22 | 2019-12-31 | 视联动力信息技术股份有限公司 | 一种音频数据的处理方法和装置 |
CN109327750B (zh) * | 2018-09-18 | 2020-10-02 | 广州视源电子科技股份有限公司 | 一种展示麦克风音量变化的方法、装置、设备及存储介质 |
CN111782866A (zh) * | 2019-04-04 | 2020-10-16 | 阿里巴巴集团控股有限公司 | 绘制方法、装置、终端设备及计算机存储介质 |
CN110097618B (zh) * | 2019-05-09 | 2023-05-12 | 广州小鹏汽车科技有限公司 | 一种音乐动画的控制方法、装置、车辆及存储介质 |
CN110704016A (zh) * | 2019-10-15 | 2020-01-17 | 深圳品阔信息技术有限公司 | 音量调整结合音量波动显示的方法、装置、设备及存储介质 |
CN113014977B (zh) * | 2021-02-07 | 2023-08-11 | Vidaa(荷兰)国际控股有限公司 | 显示设备及音量显示方法 |
CN113314141A (zh) * | 2021-05-21 | 2021-08-27 | 江苏第二师范学院 | 一种声乐演唱音量和音高的量化方法及量化设备 |
CN113360129A (zh) * | 2021-06-18 | 2021-09-07 | 广州小鹏汽车科技有限公司 | 声音播放方法、装置、电子设备及可读存储介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102385888A (zh) * | 2010-09-03 | 2012-03-21 | 索尼公司 | 控制终端设备和控制方法 |
CN103345376A (zh) * | 2013-07-08 | 2013-10-09 | 南京琅声声学科技有限公司 | 一种数字音频信号响度监测方法 |
CN103703766A (zh) * | 2011-07-14 | 2014-04-02 | 株式会社理光 | 多点连接装置和通信系统 |
CN104850335A (zh) * | 2015-05-28 | 2015-08-19 | 瞬联软件科技(北京)有限公司 | 基于语音输入的表情曲线生成方法 |
WO2016092921A1 (ja) * | 2014-12-08 | 2016-06-16 | 株式会社ディーアンドエムホールディングス | コンピュータで読み取り可能なプログラムおよび音量レベル操作装置 |
-
2016
- 2016-12-08 CN CN201611122285.1A patent/CN108182047B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102385888A (zh) * | 2010-09-03 | 2012-03-21 | 索尼公司 | 控制终端设备和控制方法 |
CN103703766A (zh) * | 2011-07-14 | 2014-04-02 | 株式会社理光 | 多点连接装置和通信系统 |
CN103345376A (zh) * | 2013-07-08 | 2013-10-09 | 南京琅声声学科技有限公司 | 一种数字音频信号响度监测方法 |
WO2016092921A1 (ja) * | 2014-12-08 | 2016-06-16 | 株式会社ディーアンドエムホールディングス | コンピュータで読み取り可能なプログラムおよび音量レベル操作装置 |
CN104850335A (zh) * | 2015-05-28 | 2015-08-19 | 瞬联软件科技(北京)有限公司 | 基于语音输入的表情曲线生成方法 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP4297014A1 (en) * | 2022-06-22 | 2023-12-27 | Casio Computer Co., Ltd. | Indicator device, electronic musical instrument, light emission control method and storage medium |
Also Published As
Publication number | Publication date |
---|---|
CN108182047A (zh) | 2018-06-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108182047B (zh) | 一种音量信息的显示方法及装置 | |
CN108182097B (zh) | 一种音量条的实现方法及装置 | |
Li et al. | RSEM: accurate transcript quantification from RNA-Seq data with or without a reference genome | |
WO2016062099A1 (zh) | 搜索方法及搜索装置 | |
CN105528652A (zh) | 一种预测模型的建立方法及终端 | |
CN112487238B (zh) | 一种音频处理方法、装置、终端及介质 | |
JP6248415B2 (ja) | 楽曲評価装置 | |
Ma et al. | High dynamic range image tone mapping by optimizing tone mapped image quality index | |
CN105931088A (zh) | 广告展示方法、装置以及终端 | |
CN108377417A (zh) | 视频审核方法、装置、计算机设备及存储介质 | |
CN108334626B (zh) | 新闻栏目的生成方法、装置和计算机设备 | |
JP2009146261A (ja) | コンテンツ検索装置及び方法 | |
JP2006149524A5 (zh) | ||
CN116758204A (zh) | 一种基于线渲染器的渲染处理方法及相关装置 | |
CN109119089B (zh) | 对音乐进行通透处理的方法及设备 | |
JP2013242709A (ja) | 情報処理システム及びプログラム | |
CN106155342B (zh) | 预测用户待输入字的方法及装置 | |
JP6554916B2 (ja) | 情報処理装置及び情報処理方法 | |
JP4127511B2 (ja) | 音源選択方法及び音源選択装置 | |
US20230155909A1 (en) | Method and system for evaluating service performance perceived by user | |
CN114971095B (zh) | 在线教育效果预测方法、装置、设备及存储介质 | |
WO2014134796A1 (en) | Identifying relationships among words in semantic web | |
JP7294384B2 (ja) | 情報処理装置、情報処理方法およびプログラム | |
CN113393719B (zh) | 拼音学习方法及装置 | |
JP2017006286A (ja) | 評価装置及び評価方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
TR01 | Transfer of patent right |
Effective date of registration: 20240615 Address after: 100000 616, floor 6, 33 Suzhou street, Haidian District, Beijing Patentee after: Baosheng (China) Technology Industry Co.,Ltd. Country or region after: China Address before: 430000 East Lake Development Zone, Wuhan City, Hubei Province, No. 1 Software Park East Road 4.1 Phase B1 Building 11 Building Patentee before: WUHAN DOUYU NETWORK TECHNOLOGY Co.,Ltd. Country or region before: China |
|
TR01 | Transfer of patent right |