X-Git-Url: http://47.100.26.94:8080/?a=blobdiff_plain;f=app%2Fsrc%2Fmain%2Fjava%2Fai%2Fsuanzi%2Frtmpclient%2FFfmpeg.java;h=d0556a73783a45ea2a1d113220c869ba4266fef2;hb=831cc09829bc6e18d8d0d8bb78063e89ea565ce9;hp=c705c01361bfc40f8843cc14276eed79807e1d91;hpb=214619593e74f6a04fa25f3614a99cf6b9704da5;p=rtmpclient.git diff --git a/app/src/main/java/ai/suanzi/rtmpclient/Ffmpeg.java b/app/src/main/java/ai/suanzi/rtmpclient/Ffmpeg.java index c705c01..d0556a7 100644 --- a/app/src/main/java/ai/suanzi/rtmpclient/Ffmpeg.java +++ b/app/src/main/java/ai/suanzi/rtmpclient/Ffmpeg.java @@ -1,11 +1,48 @@ package ai.suanzi.rtmpclient; +import android.util.Log; + public class Ffmpeg { static { + String arch = System.getProperty("os.arch"); + if (arch.equals("i686")){ + System.loadLibrary("x264"); + } + System.loadLibrary("avutil"); + System.loadLibrary("postproc"); + System.loadLibrary("swresample"); + System.loadLibrary("swscale"); + System.loadLibrary("avcodec"); + System.loadLibrary("avdevice"); + System.loadLibrary("avfilter"); + System.loadLibrary("avformat"); System.loadLibrary("ffmpeg-jni"); + } + + private static Ffmpeg instance = new Ffmpeg(); + public static Ffmpeg getInstance(){ + return instance; } + private Ffmpeg(){ + Log.e("Ffmpeg", "init"); + //init(); + inithaha(640, 480); + //getPerfectDevice(); + } + + public native String getVersion(); + public native void init(); + public native int inithaha(int width, int height); + public native int flush(); + public native int close(); + public native int process(byte[] data); + public native int play(Object surface, String fname); + public native int push(Object surface, String url); + public native int preview(Object surface); + public native String getPerfectDevice(); + public native int test(int fd); }