3

start()のインスタンスのメソッドを呼び出そうとすると、このエラーが発生しFFmpegFrameGrabberます。

java.lang.UnsatisfiedLinkError: org.bytedeco.javacpp.avutil
    at java.lang.Class.classForName(Native Method)
    at java.lang.Class.forName(Class.java:309)
    at org.bytedeco.javacpp.Loader.load(Loader.java:390)
    at org.bytedeco.javacpp.Loader.load(Loader.java:358)
    at org.bytedeco.javacpp.avformat$AVFormatContext.<clinit>(avformat.java:2539)
    at org.bytedeco.javacv.FFmpegFrameGrabber.startUnsafe(FFmpegFrameGrabber.java:383)
    at org.bytedeco.javacv.FFmpegFrameGrabber.start(FFmpegFrameGrabber.java:377)

これらは、プロジェクトjavacppおよびjavacvの READMES に従って参照している依存関係です。

compile group: 'org.bytedeco', name: 'javacpp', version: '1.0'
compile group: 'org.bytedeco', name: 'javacv', version: '1.0'

プロジェクトに .so ファイルを追加しませんでしたが、依存関係があることを期待していました。以前にそれらを追加しようとしたときに、重複ファイルのgradleエラーが発生し始めたので、依存関係があると思います。

何らかの理由で.soファイルを読み込めないことが起こっていると思いますが、この問題を解決する方法がわかりません。

systemPropertyGitHub README に記載されている依存関係を次のように設定しようとしました。

task execute(type: JavaExec) {
    systemProperty "platform.dependencies", true
}

書いてあることは役に立ちません。

このエラーが表示される理由と対処方法を教えてください。

この問題に関するガイダンスをいただければ幸いです。全体的な目標は、FFmpegFrameGrabber を使用して、ユーザーがデバイスで撮影したビデオをトリミングすることです。私はすべての解決策に対してオープンです。

4

0 に答える 0