小编Mut*_*iam的帖子

Java.lang.UnsatisfiedLinkError:找不到 int 的实现

我执行了 youtube watch me android 应用程序项目。我只是在我的项目中添加了一些类并使用 ndk 构建。我得到了这样的错误

java.lang.UnsatisfiedLinkError:找不到 int com.ephronsystem.mobilizerapp.Ffmpeg.encodeVideoFrame(byte[]) 的实现(尝试了 Java_com_ephronsystem_mobilizerapp_Ffmpeg_encodeVideoFrame 和 Java_com_ephronsystem_mobilizerapp_Ffmpeg_encodeVideoFrame___3B)。

我的代码:

package com.ephronsystem.mobilizerapp;

public class Ffmpeg {

     static {
        System.loadLibrary("ffmpeg");
    }

    public static native boolean init(int width, int height, int audio_sample_rate, String rtmpUrl);

    public static native void shutdown();

    // Returns the size of the encoded frame.
    public static native int encodeVideoFrame(byte[] yuv_image);

    public static native int encodeAudioFrame(short[] audio_data, int length);
}
Run Code Online (Sandbox Code Playgroud)

这是 ffmpeg-jni.c

 #include <android/log.h>
#include <string.h>
#include <jni.h>
#include "libavcodec/avcodec.h"
#include "libavformat/avformat.h"
#include "libavutil/opt.h" …
Run Code Online (Sandbox Code Playgroud)

java-native-interface android ffmpeg youtube-api android-ndk

5
推荐指数
1
解决办法
2万
查看次数