android downsample降低音频采样频率代码
android downsample降低音频采样频率代码
发布时间:2016-12-28 来源:查字典编辑
摘要:使用AndroidAudioRecord录制PCM文件,androidSDK保证在所有设备上都支持的采样频率只有44100HZ,所以如果想得...

使用Android AudioRecord 录制PCM文件,android SDK保证在所有设备上都支持的采样频率只有44100HZ,

所以如果想得到其他采样频率的PCM数据,有几种方式:

1.在设备上尝试可用的采样频率,

2.使用44.1K采样后转换采样频率。

其中第二种转换采样频率的操作,有很多种方法。目前我使用的是SSRC,效果很好。

复制代码 代码如下:

private void simpleDownSample() {

File BeforeDownSampleFile = new File(RawRecordFilePath);

File DownSampled = new File(DownSampledFilePath);

try {

FileInputStream fileInputStream = new FileInputStream(BeforeDownSampleFile);

FileOutputStream fileOutputStream = new FileOutputStream(DownSampled);

new SSRC(fileInputStream, fileOutputStream, 44100, 8000,

2,

2,

1, Integer.MAX_VALUE, 0, 0, true);

} catch (FileNotFoundException e) {

e.printStackTrace();

} catch (IOException e) {

e.printStackTrace();

}

}

上述代码中的8000是目标采样频率。

SSRC官网:http://shibatch.sourceforge.net/

JSSRC:https://github.com/hutm/JSSRC

推荐文章
猜你喜欢
附近的人在看
推荐阅读
拓展阅读
相关阅读
网友关注
最新安卓软件开发学习
热门安卓软件开发学习
编程开发子分类