4

我是 Android 开发的新手,对于我的第一个应用程序,我创建了一个允许录制音频的应用程序。录音和音频播放一样正常。应用程序缺少的一件事是在录制过程中以 vu 表的形式向用户提供反馈。在 iOS 平台上,我相信有一个内置的 vu Meter 可以用于应用程序。我无法在 Android 平台上找到对应的。

我一直在寻找各种专门用于 Android 开发的论坛并在谷歌上搜索,但我没有发现任何有用的东西。

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

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

4

2 回答 2

2

您必须编写自己的 VU 表,但这并不难。

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

现在您已经有了幅度,您只需在自定义视图的 draw() 方法中绘制一个针或一个不断调整大小的矩形(其中高度 = MAX_RECT_HEIGHT * curAmplitude / CONST_MAXIMUM_AMPLITUDE)或其他任何内容。您将不得不查看峰值和衰减等,但仅此而已。

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

于 2011-05-12T13:49:39.900 回答
0

您是否看过这个问题的答案:Accessing the Android media stream for audio Visualization

于 2011-04-20T19:57:12.530 回答