Как микшировать звуковые файлы разного формата с помощью FFMPEG? - PullRequest
2 голосов
/ 19 апреля 2011

Мне нужно смешать аудиофайлы разных типов в один выходной файл с помощью кода в приложении для iPad.Например, мне нужно объединить файл .m4a с .mp3 или .wav или любым другим файлом формата.Полученный выходной файл должен иметь тип .m4a.

Я скомпилировал FFMPEG для iOS со ссылкой: http://lists.mplayerhq.hu/pipermail/ffmpeg-devel/2009-October/076618.html

Теперь я не могу понять, в каком направлении двигаться дальше?

1 Ответ

0 голосов
/ 19 апреля 2011

Это скорее предложение, чем ответ.У меня нет опыта работы с obj-c, хотя я работал с аудиоформатами на других языках.Если вы не найдете какую-либо библиотеку, которая выполняет эту конкретную задачу, вам может понадобиться декодировать файлы и преобразовать их данные в некоторое общее числовое представление.

Примерные данные файла .wav хранятся в виде целых чисел со знаком в диапазоне от -32768 до 32767, тогда как примерные данные mp3 хранятся в виде плавающих точекдиапазон от -1 до +1.Любое представление может быть преобразовано в другое посредством некоторого простого вычисления.

mp3ToWavSample = mp3Sample * 32767

После преобразования данных «объединение» становится очень простым.Вы можете просто добавить значения семплов вместе.

mergedSample = convertedSample1 + convertedSample2

Вам нужно будет применить это к каждому семплу в mp3.В зависимости от размера ваших файлов, это может быть важной задачей обработки.

Что касается добавления реверберации к вашему треку, я бы посоветовал вам обратиться за помощью по этому вопросу в другом вопросе.

...