Latest release of ffmpeg now includes the opus codecs. You no longer need to include libopus with ffmpeg. Hope this helps anyone else looking into this.
Android ffmpeg with opus support
-
29-06-2022 - |
문제
I'm following this tutorial, with some changes, i want add the opus support, I think adding the option --enable-libopus
is all i need but no, when I try compile with the shell as follow I'm getting the error:
configure.sh
#!/bin/bash
export ANDROID_NDK=/home/ademar/android-ndk-r9
export TOOLCHAIN=$(pwd)/temp/ffmpeg
export SYSROOT=$TOOLCHAIN/sysroot/
$ANDROID_NDK/build/tools/make-standalone-toolchain.sh --platform=android-9 --toolchain=arm-linux-androideabi-4.8 --install-dir=$TOOLCHAIN
export PATH=$TOOLCHAIN/bin:$PATH
export CC=arm-linux-androideabi-gcc
export LD=arm-linux-androideabi-ld
export AR=arm-linux-androideabi-ar
CFLAGS="-O3 -Wall -mthumb -pipe -fpic -fasm \
-finline-limit=300 -ffast-math \
-fstrict-aliasing -Werror=strict-aliasing \
-fmodulo-sched -fmodulo-sched-allow-regmoves \
-Wno-psabi -Wa,--noexecstack \
-D__ARM_ARCH_5__ -D__ARM_ARCH_5E__ \
-D__ARM_ARCH_5T__ -D__ARM_ARCH_5TE__ \
-DANDROID -DNDEBUG"
EXTRA_CFLAGS="-march=armv7-a -mfpu=neon -mfloat-abi=softfp -mvectorize-with-neon-quad"
EXTRA_LDFLAGS="-Wl,--fix-cortex-a8"
FFMPEG_FLAGS="--prefix=/tmp/ffmpeg/build \
--target-os=linux \
--arch=arm \
--enable-cross-compile \
--cross-prefix=arm-linux-androideabi- \
--enable-shared \
--disable-symver \
--disable-doc \
--disable-ffplay \
--disable-ffmpeg \
--disable-ffprobe \
--disable-ffserver \
--disable-avdevice \
--disable-avfilter \
--disable-encoders \
--disable-muxers \
--disable-filters \
--disable-devices \
--disable-everything \
--enable-protocols \
--enable-parsers \
--enable-demuxers \
--disable-demuxer=sbg \
--enable-decoders \
--enable-bsfs \
--disable-network \
--enable-swscale \
--enable-asm \
--enable-libopus \
--enable-libtheora \
--enable-libvorbis \
--enable-nonfree \
--enable-version3"
cd ffmpeg
./configure $FFMPEG_FLAGS --extra-cflags="$CFLAGS $EXTRA_CFLAGS" --extra-ldflags="$EXTRA_LDFLAGS"
the error:
ERROR: opus not found
If you think configure made a mistake, make sure you are using the latest version from Git. If the latest version fails, report the problem to the ffmpeg-user@ffmpeg.org mailing list or IRC #ffmpeg on irc.freenode.net. Include the log file "config.log" produced by configure as this will help solving the problem.
if want i can post the config.log
content, but it is big.
on folder ffmpeg I have a git clone from source.ffmpeg.org on branch release/1.2
해결책
다른 팁
You need to ensure you build and install libopus before you build ffmpeg. Just adding the option to enable tells ffmpeg to allow opus but it does not mean your system has libopus already installed. That is why configure is complaining.
Install libopus. See http://www.opus-codec.org/ for details on how to download and build.
제휴하지 않습니다 StackOverflow