java - 如何使用Java更改音频频率

标签 java android audio core-audio audio-streaming

如何使用Java更改音频声音片段的频率。我可以使用哪种api?

最佳答案

在这里有一个答案Changing Pitch and Frequency of Recorded Audio

mAudioManager = (AudioManager) context.getSystemService(Context.AUDIO_SERVICE);
mSoundPool = new SoundPool(size, AudioManager.STREAM_MUSIC, 0);
mSoundPoolMap = new HashMap<Integer, Integer>();
mSoundPoolMap.put(index, mSoundPool.load(context, R.raw.sound, 1));


mSoundPool.play(id, streamVolume, streamVolume, 1, loop, 1f);

频率是1f部分。如果将其更改为.5f和2.0f之间的值,则应减慢或加快采样速度,从而改变音高。

取自:
Changing Pitch and Frequency of Recorded Audio

关于java - 如何使用Java更改音频频率,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25541023/

相关文章:

java - 动态数组创建导致 ArrayIndexOutOfBoundsException 和 NullPointerException

java - Google Guava 库的 junit 测试在哪里?

macos - 如何播放系统特有的声音?例如拖放声音

c# - 请推荐一个Mono(即C#)的音频阅读库

java - android java socket.io 不会向 nodejs 服务器发出任何事件

java - 无法在recyclerview中使用exoplayer播放视频

android - 未找到引用 android.target.classpath

java - Android - 以编程方式执行拖放

Android:以编程方式重置电话 radio 网络信号

c++ - 按位运算比调用memcpy更快吗?