从Android上的原始音频文件中提取样本

从Android上的原始音频文件中提取样本,android,audio,sampling,Android,Audio,Sampling,我有一个android应用程序,它以原始格式录制音频 如何提取录音样本? 例如,如果原始文件记录了3分钟的音频,我想从任意开始位置提取20秒的内容 这可能吗 如果文件包含无头的交错PCM数据,并且您知道音频数据的属性(采样率、通道数等),则问题可以通过基本数学解决: 每秒音频数据的字节数为sampleRate*bytesPerSample*numChannels 然后,以字节为单位的起始偏移量将是bytesPerSecond*offsetingseconds,而要读取的数据块大小(以字节为单位)

我有一个android应用程序,它以原始格式录制音频 如何提取录音样本? 例如,如果原始文件记录了3分钟的音频,我想从任意开始位置提取20秒的内容
这可能吗

如果文件包含无头的交错PCM数据,并且您知道音频数据的属性(采样率、通道数等),则问题可以通过基本数学解决:

每秒音频数据的字节数为
sampleRate*bytesPerSample*numChannels


然后,以字节为单位的起始偏移量将是
bytesPerSecond*offsetingseconds
,而要读取的数据块大小(以字节为单位)将是
bytesPerSecond*lengthInSeconds

,Michael,感谢您的回答,我将知道采样率和通道数,每个采样的字节从哪里获取?这是我提取的文件中需要的字节还是原始完整记录中需要的字节?我假设您在创建记录器时指定了每个样本使用8位还是16位。每个样本的字节数就是位深度除以8。我使用的是16位。应该提到我正在录制.WAV格式的文件。再次感谢。