安卓AudioTrack音量级别测量

3

如何在Android中测量AudioTrack的音量级别。我在应用程序中初始化并同时运行了几个AudioTrack,我想测量所有AudioTracks的音量级别,即其播放时的音量级别而不是播放器的默认音量。

是否有一种方法可以每秒钟计算10次音量级别?

1个回答

0

是的 - 您提供给AudioTrack的音频格式是原始PCM,因此每个样本包含当前时间片的波幅。

由于音频波形在正负之间交替,您需要每个样本的绝对值(Math.abs())。

特定秒钟内所有样本的平均值是计算当前音量级别的良好起点。最小值始终为0,最大值根据采样深度(8、16或更多位)而定。

如果您想要更平滑的平均值,可以通过以下方式使其平滑: total_average = 0.9 * total_average + 0.1 * last_average。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接