我正在用Android创建一个应用程序。我的应用程序录制音频并将其存储在SD卡上
并以列表格式显示。我做了所有这些,但我需要编辑这个音频,假设我打开录音
然后,我需要重新开始这个录音从结束,并能够附加音频在该录音。
例如:假设我的录制"MyRecord01“时间是04.06秒,我想在录制中添加更多的音频
然后它必须从04.07开始并添加一些音频。
我搜索了很多,但没有找到任何相关的东西。请将我指向任何链接或参考资料。
或者给我任何提示。
提前谢谢。
发布于 2012-08-13 14:01:16
Here是您需要的代码。希望它能为你工作。
如果我发现您的问题有误,请随时发表意见并告诉我。
发布于 2012-08-06 01:04:21
这并不太难。关键是要理解你录制的音频是如何格式化的。如果你使用未压缩的格式,如WAV或AIFF,这是最简单的。这里是(许多) WAV文件格式的解释之一:https://ccrma.stanford.edu/courses/422/projects/WaveFormat/
如果数据块是最后一个,大多数WAV文件都可以很容易地附加(这可能是格式的要求,我记不清了)。如果它不是最后一个,你必须首先复制文件并修改它,使数据块是最后一个。如果文件很大,这可能是一个耗时的步骤。
完成后,您只需将新的音频数据附加到数据块并更新文件中其他位置的一些数据,例如数据块大小(在数据块中)、块大小(在RIFF描述符中)和Subchunk1大小(在fmt块中)。(一旦你阅读了解释,这一切都会变得更有意义。)您可能希望在追加时对这些数据做一些处理,以便在追加过程中应用程序崩溃的情况下易于修复--您不想破坏用户的数据。
AIFF的过程类似,但在细节上有所不同。
对于MP3s,我不能百分之百地确定这是如何工作的。如果内存提供服务,这个过程在概念上会更容易,因为MP3文件被构造为一系列独立的块,并且每个块都有自己的迷你头。理论上,您只需添加更多块即可。但在实践中,由于压缩和ID3标记等原因,它将变得更加复杂。
https://stackoverflow.com/questions/11814265
复制相似问题