我正在开发一款Android应用程序,它必须记录声音并在屏幕中显示一些代表声音频率或强度的值。Android:将音频转换为浮动[]
对于我使用这段代码记录的事情:
mRecorder.setAudioSource(MediaRecorder.AudioSource.MIC);
mRecorder.setOutputFormat(MediaRecorder.OutputFormat.THREE_GPP);
mRecorder.setAudioEncoder(MediaRecorder.AudioEncoder.AMR_NB);
mRecorder.setOutputFile(name);
mRecorder.prepare();
mRecorder.start();
然后我最初想保存的文件转换成字节是这样的:
DataInputStream dis1 = new DataInputStream (new FileInputStream (name));
byte[] datainBytes1 = new byte[dis1.available()];
dis1.readFully(datainBytes1);
dis1.close();
但我要转换的是字节值缩短或浮动以通过使用绘图方法显示它们:
canvas.drawLine(xini,yini,xfinal,yfinal,paint)
你能推荐修补我另一种方法将音频文件转换成我可以绘制的短值?
非常感谢您的帮助!