2

我需要通过 iPad 应用程序中的代码将不同类型的音频文件混合到一个输出文件中。例如,我需要将 .m4a 文件与 .mp3 或 .wav 或任何其他格式文件合并。生成的输出文件应为 .m4a 类型。

我已经使用以下链接为 iOS 编译了 FFMPEG:http: //lists.mplayerhq.hu/pipermail/ffmpeg-devel/2009-October/076618.html

现在,我无法理解该往哪个方向前进?

4

1 回答 1

0

这更像是一个建议而不是一个答案。我对 obj-c 没有任何经验,尽管我曾使用其他语言的音频格式。除非您找到执行此特定任务的库,否则您可能需要对文件进行解码并将其数据转换为一些常见的数字表示。

.wav文件的样本数据存储为 -32768 到 32767 范围内的有符号整数,而mp3 样本数据存储为 -1 到 +1 范围之间的浮点数。通过一些简单的计算,任何一种表示都可以转换为另一种。

mp3ToWavSample = mp3Sample * 32767

一旦数据被转换,“合并”就变得非常容易。您可以简单地将样本值相加。

mergedSample = convertedSample1 + convertedSample2

您需要将此应用于 mp3 中的每个样本。根据文件的大小,这可能是一项重要的处理任务。

至于在您的曲目中添加混响,我建议您在另一个问题中寻求帮助。

于 2011-04-19T15:25:59.593 回答