Использование библиотеки FFMPEG с iPhone SDK для кодирования видео
Мне нужно закодировать несколько снимков, снятых камерой iphone, в видеофайл mp4, и я знаю, что FFMPEG может это сделать (приложения TimeLapser и ReelMoments уже делают это). Я планирую использовать это в своем приложении iMotion (доступно в магазине приложений).
Я успешно установил и скомпилировал ffmpeg для iphone SDK по этой ссылке: http://lists.mplayerhq.hu/pipermail/ffmpeg-devel/2009-October/076618.html
Но теперь я застрял здесь, в моем проекте XCode. Что мне делать дальше, чтобы использовать библиотеку FFMPEG для кодирования видео? Документация Apple по использованию внешней библиотеки очень проста, и я могу найти в Интернете любое руководство, объясняющее, как это сделать.
Если кто-нибудь может мне помочь, я был бы очень признателен..
Спасибо
Аурелиен Потье
3 ответа
Проверьте проект iFrameExtractor на GitHub. Хотя это не совсем то, что вы ищете, у него есть скрипты для сборки библиотек ffmpeg, и проект xcode связывает библиотеки.
Еще немного информации в этом блоге:
http://www.codza.com/extracting-frames-from-movies-on-iphone
В меню "Проект" выберите "Изменить активную цель"[...].
Затем в разделе "Построение разделителя" убедитесь, что выбрана вся конфигурация, и выполните следующие действия:
- найдите "Пути поиска заголовка" и укажите, где расположены заголовки FFmpeg;
- найдите "Пути поиска в библиотеке" и укажите, где находятся скомпилированные статические двоичные файлы библиотеки (файлы.a).
Это должно сделать это, но есть еще один аккуратный трюк в последнем. Вы можете добавить условие сборки в "Пути поиска в библиотеке", чтобы компилятор использовал разные двоичные файлы для разных архитектур, т.е. вы можете без проблем компилировать как для симулятора, так и для устройства. Инструкция ниже.
- Выбрав строку "Пути поиска в библиотеке", нажмите кнопку в левом нижнем углу того же окна и выберите "Добавить условие настройки сборки";
- Где появляется "Any SDK", выберите "Any iPhone OS Simulator" и укажите путь к бинарным файлам x86 ffmpeg.
- Повторите шаги, описанные выше, заменив "Любой симулятор iPhone OS" на "Любое устройство iPhone OS" и укажите двоичные файлы ARM ffmpeg.
Ниже приведен пример такого рода настроек сборки.
Другой вариант - использовать FFMPEG на сервере. Отправьте изображения на сервер и используйте PHP w/ ffmpeg для конвертации видео. При этом вам не придется беспокоиться о компиляции FFMPEG на устройстве. Просто мысль