Android开发中pcm格式的音频转换为wav格式之二
2023-12-19 23:12:40
上篇Android开发中pcm格式的音频转换为wav格式的工具类-CSDN博客文章讲解了pcm格式的音频转换为wav格式,这篇文章主要讲解怎么使用:
我们先来说明一下怎么播放一个wav文件
/** * 播放一个wav文件 */ public static void playWav(String filePath){ File wavFile = new File( filePath); // Log.e("timo-111",wavFile); try{ FileInputStream fis=new FileInputStream(wavFile); byte[] buffer=new byte[1024*1024*2];//2M int len=fis.read(buffer); Log.e(TAG, "fis len="+len); Log.e(TAG, "0:"+(char)buffer[0]); int pcmlen=0; pcmlen+=buffer[0x2b]; pcmlen=pcmlen*256+buffer[0x2a]; pcmlen=pcmlen*256+buffer[0x29]; pcmlen=pcmlen*256+buffer[0x28]; int channel=buffer[0x17]; channel=channel*256+buffer[0x16]; int bits=buffer[0x23]; bits=bits*256+buffer[0x22]; Log.e(TAG, "pcmlen="+pcmlen+",channel="+channel+",bits="+bits); AudioTrack at = new AudioTrack(AudioManager.STREAM_MUSIC, SAMPLE_RATE_INHZ*2, channel, AudioFormat.ENCODING_PCM_16BIT, pcmlen, AudioTrack.MODE_STATIC); at.write(buffer, 0x2C, pcmlen); at.play(); } catch(Exception e){ Log.e(TAG, e.toString()); } finally{ wavFile = null; } }
下面,在使用的地方具体使用:
先将.pcm文件转为.wav文件: startRecordAudio为源文件(即存储的.pcm的录音文件) wavFilePath为.pcm转.wav文件 true:是否删除源文件 PcmToWavUtil ptwUtil = new PcmToWavUtil(); ptwUtil.pcmToWav(startRecordAudio, wavFilePath,true);
以上处理完理之后,再调用:
playWav(wavFilePath)
以上就是讲解的具体的使用方法和说明。
文章来源:https://blog.csdn.net/qq_36451275/article/details/135058254
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!