X-Git-Url: http://47.100.26.94:8080/?a=blobdiff_plain;f=app%2Fsrc%2Fmain%2Fjava%2Fai%2Fsuanzi%2Frtmpclient%2FFfmpeg.java;h=4d61c9ddb7e4a661edace1b658d9b3f9a709c75b;hb=a2555d7a8d228c91da9f8014ca4a09dbd0d050ae;hp=ef9063abc827f597c53b97d5c598b842989f2e27;hpb=912af179748912e3488dd12e963f88a06a9d1c6c;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 ef9063a..4d61c9d 100644 --- a/app/src/main/java/ai/suanzi/rtmpclient/Ffmpeg.java +++ b/app/src/main/java/ai/suanzi/rtmpclient/Ffmpeg.java @@ -1,5 +1,9 @@ package ai.suanzi.rtmpclient; +import android.util.Log; + +import org.apache.log4j.Logger; + public class Ffmpeg { static { @@ -8,9 +12,7 @@ public class Ffmpeg { System.loadLibrary("x264"); } System.loadLibrary("avutil"); - System.loadLibrary("postproc"); - System.loadLibrary("swresample"); System.loadLibrary("swscale"); System.loadLibrary("avcodec"); @@ -20,11 +22,36 @@ public class Ffmpeg { 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(); + } + + private Logger gLogger = Logger.getLogger("FFmpeg"); + public void print(String str){ + gLogger.error(str); + } + public native String getVersion(); - public native int init(int width, int height); + public native void init(); + public native int inithaha(int width, int height); + public native int initnew (int width, int height, String url); + //public native init inithahurl(ini) 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); + public native int push(Object surface, String url); + public native int preview(Object surface); + public native String getPerfectDevice(); + public native int test(int fd); + public native void setRtmpUrl(String url); }