Это небольшая инструкция по компиляции и сборке мультимедийного фреймворка FFmpeg для EZX по просьбе создателя кастомных прошивок DDA-E398.
1. Запускаем окружение для сборки
1 2 |
cd /home/a1200 . setenv-a1200.sh |
2. Сборка и установка дополнительных зависимостей
2.1 LAME MP3 Encoder
Скачиваем исходники LAME MP3 Encoder, собираем и устанавливаем кодек с помощью команд:
1 2 3 |
./configure --enable-static --disable-shared --with-fileio=lame --host=arm-linux-gnueabi --exec-prefix=/home/a1200/codecs/lame --prefix=/home/a1200/codecs/lame make make install |
2.2 AMR-NB и AMR-WB
Качаем исходный код AMR-NB и AMR-WB, собираем и устанавливаем AMR-NB:
1 2 3 |
./configure --prefix=/home/a1200/codecs/amrnb --exec-prefix=/home/a1200/codecs/amrnb CC=arm-linux-gnu-gcc AR=arm-linux-gnu-ar RANLIB=arm-linux-gnu-ranlib LD=arm-linux-gnu-ld --host=arm-linux-gnueabi ac_cv_file__bin_bash=yes ac_cv_func_malloc_0_nonnull=yes ac_cv_func_realloc_0_nonnull=yes make make install |
Собираем и устанавливаем AMR-WB:
1 2 3 |
./configure --prefix=/home/a1200/codecs/amrwb --exec-prefix=/home/a1200/codecs/amrwb CC=arm-linux-gnu-gcc AR=arm-linux-gnu-ar RANLIB=arm-linux-gnu-ranlib LD=arm-linux-gnu-ld --host=arm-linux-gnueabi ac_cv_file__bin_bash=yes ac_cv_func_malloc_0_nonnull=yes ac_cv_func_realloc_0_nonnull=yes make make install |
3. Сборка и установка FFmpeg
Качаем исходники FFmpeg, конфигурируем:
1 |
./configure --prefix=/home/a1200/codecs/ffmpeg --enable-cross-compile --cc=arm-linux-gnu-gcc --arch=iwmmxt --enable-gpl --enable-nonfree --enable-libmp3lame --enable-libamr-nb --enable-libamr-wb --extra-cflags="-I/home/a1200/codecs/lame/include -I/home/a1200/codecs/lame/include/lame -I/home/a1200/codecs/amrnb/include -I/home/a1200/codecs/amrnb/include/amrnb -I/home/a1200/codecs/amrwb/include -I/home/a1200/codecs/amrwb/include/amrwb" --extra-ldflags="-L/home/a1200/codecs/lame/lib -L/home/a1200/codecs/amrnb/lib -L/home/a1200/codecs/amrwb/lib" --disable-ffplay --disable-ffserver --enable-iwmmxt --disable-stripping |
Редактируем файл config.mak, изменяем строки 12 и 13 следующим образом:
1 2 |
AR=arm-linux-gnu-ar RANLIB=arm-linux-gnu-ranlib |
И заменяем везде в файле -O3 на -O2. Затем собираем:
1 2 |
make make install |
Исполнительные бинарные файлы можно скачать по этим ссылкам:
Скачать FFmpeg для Motorola EZX | Download FFmpeg for Motorola EZX
Скачать бинарные файлы FFmpeg для Motorola EZX | Download Binary Files of FFmpeg for Motorola EZX