Android ffmpeg adb shell Неизвестный кодировщик 'libx264'

Когда я запускаю ffmpeg на Android с помощью оболочки adb, он показывает эту ошибку:

 Duration: 00:00:12.00, start: 0.000000, bitrate: 30412 kb/s Stream #0:0: Video: rawvideo (I420 / 0x30323449), yuv420p, 352x288, 30412 kb/s, 25 tbr, 25 tbn, 25 tbc
[4;31mUnknown encoder 'libx264'

Я не понимаю, что пошло не так. Это беспокоило меня много дней. Можете ли вы помочь мне? Заранее спасибо!

(Я переместил скомпилированный libffmpeg.so в /system/lib и переместил ffmpeg в /system/bin)

Цель: скомпилировать ffmpeg с x264 и запустить libffmpeg.so на устройстве Android с помощью оболочки adb.

Скомпилированная среда: Ubuntu16.0 32-битная, ndk r10b 32-битная платформа 15, ffmpeg 3.0, последняя версия x264.

Моя конфигурация:

cd ffmpeg-3.0.9
    export NDK=/home/ichp/project/android-ndk-r10b  
    export PREBUILT=$NDK/toolchains/arm-linux-androideabi-4.8/prebuilt  
    export PLATFORM=$NDK/platforms/android-15/arch-arm  
    export PREFIX=../simplefflib
    export CURRENT_PATH=/home/ichp/project/FREYA-LIVE-LIBRARY-OPTIMIZER-FOR-ANDROID


  ./configure --target-os=linux --prefix=$PREFIX
--enable-cross-compile --enable-runtime-cpudetect --enable-asm --arch=arm --cpu=armv7-a --enable-libx264 --enable-encoder=libx264 --disable-encoders --disable-protocols --enable-protocol=file --enable-version3 --cc=$PREBUILT/linux-x86/bin/arm-linux-androideabi-gcc --cross-prefix=$PREBUILT/linux-x86/bin/arm-linux-androideabi- --disable-stripping --nm=$PREBUILT/linux-x86/bin/arm-linux-androideabi-nm --sysroot=$PLATFORM --enable-gpl --disable-shared --enable-static --enable-small --disable-ffprobe --disable-ffplay --enable-ffmpeg --disable-ffserver --disable-debug --enable-pthreads --enable-neon --extra-cflags="-I$CURRENT_PATH/temp/armeabi-v7a/include -fPIC -marm -DANDROID -DNDEBUG -static -O3 -march=armv7-a -mfpu=neon -mtune=generic-armv7-a -mfloat-abi=softfp -ftree-vectorize -mvectorize-with-neon-quad -ffast-math" --extra-ldflags="-L$CURRENT_PATH/temp/armeabi-v7a/lib"


make clean
make  
make install 

person IChp    schedule 25.11.2017    source источник


Ответы (1)


Порядок опций имеет значение. Переместите --disable-encoders перед любыми --enable-encoder= параметрами.

person Gyan    schedule 25.11.2017