How to mix sound files of different format using F

2019-05-21 09:04发布

I need to mix audio files of different types into a single output file through code in my iPad app. For example, I need to merge a .m4a file with .mp3 or .wav or any other format file. The resulting output file should be of .m4a type.

I have compiled FFMPEG for iOS with the link: http://lists.mplayerhq.hu/pipermail/ffmpeg-devel/2009-October/076618.html

Now, I am not able to understand in which direction to proceed?

1条回答
女痞
2楼-- · 2019-05-21 09:37

This is more of a suggestion than an answer. I don't have any experience with obj-c, though I have worked with audio formats in other languages. Unless you find some library that does this specific task, you may need to decode the files and convert their data to some common numerical representation.

The sample data of a .wav file is stored as signed integers between the range of -32768 to 32767, while mp3 sample data is stored as floating points between the range of -1 to +1. Either representation could be converted to the other through some simple calculation.

mp3ToWavSample = mp3Sample * 32767

Once the data is converted "merging" becomes very easy. You can simply add the sample values together.

mergedSample = convertedSample1 + convertedSample2

You would need to apply this to every sample in the mp3. Depending on the size of your files, this could be a significant processing task.

As for adding reverb to your track, I'd suggest that you ask for help on that in a another question.

查看更多
登录 后发表回答