gpt4 book ai didi

android - 我应该从哪里开始进行 Android 音频编程?

转载 作者:行者123 更新时间:2023-11-30 04:15:21 25 4
gpt4 key购买 nike

我已经在互联网上搜索了一个多星期,现在正在寻找一种在 Android SDK 中操作音频文件的好方法。我的目标是对音频应用特殊效果。有人可以指出可以帮助我解决这个问题的资源吗?我不得不求助于 StackOverflow,因为它是我所知道的唯一可靠的答案。

最佳答案

我假设您的意思是要对音频文件进行数字操作,即通过某种 DSP 技术在字节级别进行操作?

如果您想实时操作(即从麦克风),请查看 android.media.AudioRecord.AudioRecord。例如:

audioRecord = new AudioRecord(
MediaRecorder.AudioSource.MIC,
8000,
AudioFormat.CHANNEL_IN_STEREO,
AudioFormat.ENCODING_PCM_16BIT,
AudioTrack.getMinBufferSize(
8000,
AudioFormat.CHANNEL_IN_STEREO,
AudioFormat.ENCODING_PCM_16BIT)*20);

audioRecord.startRecording();
byte[] readBuffer = new byte[640];
int nbytes = audioRecord.read(readBuffer.getData(),0,readBuffer.length);

这将使您能够访问原始音频数据(在上面的示例中,线性 PCM 16 位立体声)。

如果您想读取现有的存储文件(例如从 sdcard 中)并操作音频,请查看 java.io.FileInputStream。当然,如果现有文件的格式不是线性 PCM(例如 MP3),那么您可能希望在应用任何 DSP 类型的操作之前将其解码为线性 PCM。 Cick here有关将文件读入字节数组的示例。 Click here有关读取 MP3 文件并获取解​​码的原始 PCM 数据的示例的链接。

关于android - 我应该从哪里开始进行 Android 音频编程?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10113693/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com