我在字节数组中有一些音频数据(原始AAC)用于播放。在播放过程中,我需要绘制其音量/幅度(播放时的音频波形)。
我现在想的是每200毫秒获得当前音频的音量/幅度并将其用于绘图(使用画布),但我不知道该怎么做。
。 。 。
** 2011/07/13添加以下**
对不起刚刚被其他项目推迟到现在。
我尝试的是在一个帖子中运行以下代码,并播放我的AAC音频。
a loop
{
// int v=audio.getStreamVolume(AudioManager.MODE_NORMAL);
// int v=audio.getStreamVolume(AudioManager.STREAM_MUSIC);
int v=audio.getStreamVolume(AudioManager.STREAM_DTMF);
// Tried 3 settings above
Log.i(HiCardConstants.TAG, "Volume - "+v);
try{Thread.sleep(200);}
catch(InterruptedException ie){}
}
但只能获得固定值,而不是动态音量......
我还找到了一个名为Visualizer的类,但不幸的是,我的目标平台是Android 2.2 ...: - (
欢迎任何建议: - )
答案 0 :(得分:1)
经过几天和几夜,我发现了一个名为ringdroid的Android应用项目 可以解决我的问题。 它帮助我获得一个音频增益值数组,以便我可以用来绘制我的声波。
顺便说一下,根据我的经验,由于比特率太低,无法正确解析某些.AMR或.MP3 ......