Установка библиотек ffmpeg ios armv7, armv7s, i386 и universal на Mac с 10.8

Как я могу установить последние библиотеки ffmpeg ios armv7, armv7s, i386 и universal на Mac с 10.8?

4 ответов


через пару дней я сделал пошаговые инструкции для этой установки:

ffmpeg инструкции по сборке MAC 10.8 или лучше

копировать ffmpeg-2.0.деготь.bz2 (https://ffmpeg.org/releases/ffmpeg-1.0.7.tar.bz2, https://ffmpeg.org/download.html) и распаковать в папку документов

убедитесь, что у вас есть последние инструменты командной строки в разделе Xcode >; Preferences >; Downloads >; Components

установить газовый препроцессор

  1. нажмите на значок ZIP, чтобы загрузитьhttps://github.com/mansr/gas-preprocessor.
  2. копировать gas-preprocessor.pl в каталог/usr / bin.
  3. изменить разрешение gas-preprocessor.pl установив привилегию читать и писать для всех.

ошибка в xcrun начиная с версии 10.8

откройте терминал и вставьте следующую команду и нажмите enter:

export DEVELOPER_DIR="/Applications/Xcode.app/Contents/Developer/"

cd к папка ffmpeg-2 и вставьте следующую команду и нажмите enter:

mkdir armv7
mkdir armv7s
mkdir i386
mkdir -p universal/lib

для настройки библиотеки armv7s вставьте следующую команду и нажмите enter:

./configure --prefix=armv7s --disable-ffmpeg --disable-ffplay --disable-ffprobe --disable-ffserver --enable-avresample --enable-cross-compile --sysroot="/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS6.1.sdk" --target-os=darwin --cc="/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/gcc" --extra-cflags="-arch armv7s -mfpu=neon -miphoneos-version-min=6.1" --extra-ldflags="-arch armv7s -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS6.1.sdk -miphoneos-version-min=6.1" --arch=arm --cpu=cortex-a9 --enable-pic

(обратите внимание на то же правило, что и выше: если config не удается перейти к Применения/Xcode.app / содержание / разработчик / платформы / iPhoneOS.платформа/разработчик/пакеты SDK/ и убедитесь, что папка sdk-iPhoneOS6.1.sdk, если не изменить команда config для отражения iPhoneOSx.X. sdk и изменить все цели к х.х)

для создания и установки библиотеки armv7s вставьте следующую команду и нажмите enter:

make clean && make && make install

для настройки i386 (так что симулятор будет работать ) вставьте библиотеку в следующую команду и нажмите enter:

./configure --prefix=i386 --disable-ffmpeg --disable-ffplay --disable-ffprobe --disable-ffserver --enable-avresample --enable-cross-compile --sysroot="/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator6.1.sdk" --target-os=darwin --cc="/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin/gcc" --extra-cflags="-arch i386" --extra-ldflags="-arch i386 -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator6.1.sdk" --arch=i386 --cpu=i386 --enable-pic --disable-asm

(Примечание: это не та же команда, что и предыдущие две конфигурации команды, если вы просто стрелка вверх к ним это не удастся)

для создания и установки библиотеки i386 вставьте следующую команду и нажмите введите:

make clean && make && make install

чтобы сделать универсальную библиотеку (которая является библиотекой, добавленной в xcode ) вставьте следующую команду и нажмите enter:

cd armv7/lib
for file in *.a
do
cd ../..
xcrun -sdk iphoneos lipo -output universal/lib/$file  -create -arch armv7 armv7/lib/$file -arch armv7s armv7s/lib/$file -arch i386 i386/lib/$file
echo "Universal $file created."
cd -
done
cd ../..

поддержка универсальной библиотеки ffmpeg для iOS7 и XCode5:

убедитесь, что у вас есть последние инструменты командной строки в разделе Xcode >; Preferences >; Downloads >; Components

установить газовый препроцессор

  1. нажмите на значок ZIP, чтобы загрузитьhttps://github.com/mansr/gas-preprocessor.
  2. копировать gas-preprocessor.pl в каталог/usr / bin.
  3. изменить разрешение gas-preprocessor.pl установив привилегию Чтение и запись для всех.

скачать мой скрипт из: https://gist.github.com/m1entus/6983547

  1. Run sh build-ffmpeg.sh.

мне нужна была поддержка arm64, и этот скрипт работал для меня:https://github.com/kewlbear/FFmpeg-iOS-build-script

использовать

./build-ffmpeg.sh arm64 x86_64

для 64-разрядной архитектуры iOS и симулятора. Затем скопируйте содержимое каталога " fat " в проект Xcode.

единственное изменение, которое я внес в скрипт, было раскомментировано этой строкой:

CONFIGURE_FLAGS="$CONFIGURE_FLAGS --enable-avresample"

для компиляции библиотеки libavresample.

Edit: он не работает с armv7 и armv7s, однако, используя iOS 7.1 SDK. Если я найду решение, я опубликую его здесь.


для создания библиотек ffmpeg iOS вы можете использовать это маленькие скрипты.

  1. скачать источник ffmpeg
  2. скачать https://github.com/wang-bin/build_ffmpeg
  3. открыть терминал и запустить export FFSRC=/path/to/ffmpeg
  4. перейти build_ffmpeg папку и запустите: ./ios.sh
  5. после успешного строительства, результат будет в sdk-ios папку
  6. Добавить папку include и папку lib в вашем Xcode проект