大佬教程收集整理的这篇文章主要介绍了如何在android studio中将.wav文件作为字节数组读取?,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
我在 androID studio 中使用 Java 来编写我的应用程序。我有一个音频文件的文件路径(.wav 格式),将 .wav 文件读入字节数组的最佳方法是什么? 我正在使用以下转换方法:@H_301_1@
public voID open_audio_file(Uri filePath){
try{
in = new BufferedinputStream(getContext().getContentResolver().openinputStream(filePath));
int read;
byte[] buff = new byte[1024];
while ((read = in.read(buff)) > 0)
{
out.write(buff,read);
}
out.flush();
}catch(Exception E){
throw new RuntimeException(E);
}
//Todo : Change the audio file to a float pointer
audioBytes = out.toByteArray();
Log.i(LOG_TAG,"The audio file is " + audioBytes.toString());
}
但是,此方法会产生很多我的函数无法读取的行话值。例如, dog.wav www.beaniebestbuy.com/sounds/dog5.wav 的输出是 [B@d25663f 。数组的开头附有行话值。@H_301_1@
更新 1:我尝试使用 AudioSystem 库,但 AndroID studio 不支持它。@H_301_1@
您正确读取文件。由于您只是读取字节,因此文件类型实际上无关紧要。
当您对数组调用 toString
时,它不会为您提供整个数组的表示,它只是为您提供对象引用。见documentation here。
如果要查看完整数组,则需要使用 for
循环。
for(int i = 0; i < audioBytes.length; i++) {
System.out.print(audioBytes[i] +" ");
}
请注意,这可能是一个非常大的输出,不太可能易于阅读。
以上是大佬教程为你收集整理的如何在android studio中将.wav文件作为字节数组读取?全部内容,希望文章能够帮你解决如何在android studio中将.wav文件作为字节数组读取?所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。