2

この質問はさまざまな場所で提起されていますが、何が必要かを簡単に詳細に説明しているようには見えません。

これまでのところ、Android で使用するネイティブ バイナリ ffmpeg をビルドしました。ビルドは問題ありません。

バイナリをプロジェクトの /lib/armeabi-v7a/ ディレクトリに置き、名前を libffmpeg.so に変更して、他の投稿でアドバイスされているように、パッケージング システムで取得できるようにしました。

問題は、libffmpeg.so または ffmpeg が、通常はその (ffmpeg) 独自の lib ディレクトリにある他のライブラリを必要とすることです。Runtime.getRuntime().exec(command) で実行すると、適切な場所にないか、Android パッケージ システムによってまったく取得されていない他のライブラリが呼び出されます。

そのため、ffmpeg が必要とするすべてのライブラリを同じ /lib/armeabi-v7a/ にコピーしましたが、まだ成功していません。

Stackoverflowで検索すると、jniアプローチを使用した投稿が見つかり、他の人はjniなしでできると言います。Androidで他のライブラリを必要とするビルド済みバイナリを使用する最も簡単な方法は何ですか?

次に、Android.mk および Application.mk ファイルの問題もあります。必要な場合は、Android でネイティブ C/C++ コードをビルドしようとしている場合のみでしょうか、それとも事前にビルドされたライブラリとバイナリでも使用する必要がありますか?関与しています。また、この場合にそれらが必要な場合、これらのファイルはプロジェクトのどこに配置する必要がありますか?

私はアンドロイドに非常に慣れていません。あなたの知恵を共有してくれてありがとう。

4

1 に答える 1