在Android中录制音频时的VU(音频)表

我是
Android开发的新手,在我的第一个应用程序中,我创建了一个允许录制音频的应用程序.音频记录和音频播放一样有效.应用程序中缺少的一件事是在录制期间以vu米的形式向用户反馈.在iOS平台上,我相信有一个可用于应用程序的内置vu仪表.我无法在Android平台上找到同等产品.

我一直在寻找各种专门针对Android开发和谷歌搜索的论坛,但我没有找到任何有用的东西.

有谁知道用于录制音频的数字VU表的任何编码示例?

是否有人知道在录制时显示反馈的任何编码示例?

最佳答案 你必须编写自己的VU表,但并不难.

首先,获取最新一组音频样本的当前最大幅度.循环使用AudioRecord填充的缓冲区,并记下最高值.这就是MediaPlayer.getAmplitude在内部所做的事情.

现在您已经获得了振幅,您只需绘制一个针或不断调整大小的矩形(其中height = MAX_RECT_HEIGHT * curAmplitude / CONST_MAXIMUM_AMPLITUDE)或自定义视图的draw()方法中的任何内容.你将不得不调查峰值和衰变等,但这就是它的全部.

您可以在此处查看内置VU表动态壁纸的来源:VU meter.

点赞