1

opencore-amr と libx264 をサポートする ffmpeg をビルドしようとしています。このビルド スクリプトhttp://sourceforge.net/projects/ffmpeg4android/を見つけました。これは期待どおりにコンパイルされ、結果のバイナリはデバイス上で正常に動作し、-enable-引数を渡さないと、バイナリの出力に libx264 が表示されます。

しかし、libopencore-amr のサポートを含めようとすると、うまくいかないようです。Android_Configure.mk ファイルを次のように変更しました。

FF_CONFIGURATION_STRING := \
    --arch=$(TARGET_ARCH) \
    --target-os=linux \
    --enable-cross-compile \
    --cross-prefix=$(NDK_CROSS_
PREFIX) \
    --sysroot=$(NDK_SYSROOT) \
    --enable-shared \
    --enable-static \
    --enable-libopencore-amrnb   <-- i've added this line

ただし、 ./configure を実行すると、次のように表示されます。

libopencore-amrnb support no
libopencore-amrwb support no

それにもかかわらず、ビルドはコンパイル エラーなしでうまくいきます。デバイスで ffmpeg を実行すると、すべてが機能しているように見えますが、amrnb はサポートされていません。

4

1 に答える 1

2

libopencore がコンパイル対象の sysroot に存在することを確認する必要があります。これは --sysroot パラメータが指す場所です。そこに libopencore がない可能性があるため、configure スクリプトで無効にします。

于 2013-01-11T03:09:50.510 に答える