madhavanmalolan / ffmpegandroidlibrary Goto Github PK
View Code? Open in Web Editor NEWOne line integration for FFMPEG Library in Android
License: MIT License
One line integration for FFMPEG Library in Android
License: MIT License
I used following command to copy video and its working.
val array2 = arrayOf("-y",
"-i",
selectedImagePath,
"-vcodec",
"copy",
"-an",
file.absolutePath)
I am using following command to cut video, but its not working.
val array = arrayOf(
"-i",
selectedImagePath,
"-ss",
"00:00:00:000",
"-t",
"00:00:30:000",
"-c copy",
file.absolutePath)
Any help or correction on query will be useful for me.
ffmpegandroidlibrary-master/bintray.properties (No such file or directory)
Hi Madhavan,
I tried specifying vcodec libx264 and it caused a crash. I realized that I might have to
do a custom build with this codec. I am trying to do that using the instructions
in your blog (https://medium.com/madhavanmalolan/ffmpeg-for-android-b307f2613c82).
I am getting an error (shown below) when I do the ndk-build.
Before I start debugging it, I wanted clarification on something in the build instructions.
In the section titled "Compiling source" you say "Copy the following files from
/path/to/ffmpeg to the jni/ directory". Where should the "jni" directory be created?
I tried creating it in the android project directory at the same level as the 'app' directory (based
on what you say further down in the instructions to cd /path/to/app/jni).
I also tried placing it in the app/src/main directory.
I am using ffmpeg 2.8.13 and android-ndk-r12b
Thanks for putting this out for everybody!
Did I miss something that is causing this error?
Bcs-MacBook-Pro:jni bc$ /Users/bc/projects/android/android-ndk-r12b/ndk-build Android NDK: WARNING: Ignoring unknown import directory: /Users/bc/tmp/android/MediaCodecTest/app/src/main/jni Android NDK: /Users/bc/tmp/android/MediaCodecTest/app/src/jni/Android.mk: Cannot find module with tag '../../../../../../../projects/android/ffmpeg-2.8.13/android/arm' in import path Android NDK: Are you sure your NDK_MODULE_PATH variable is properly defined ? Android NDK: The following directories were searched: Android NDK: /Users/bc/tmp/android/MediaCodecTest/app/src/jni/Android.mk:14: *** Android NDK: Aborting. . Stop.
use command like this
"-y",
"-i",
"xxx.mp4",
"-vcodec",
"copy",
"-acodec",
"copy",
"test.ts"
the test.ts can't play and only 2.2kb(the mp4 is about 10mb),
but when use command like this
"-y",
"-i",
"xxx.mp4",
"-vcodec",
"copy",
"-acodec",
"copy",
"test.mp4"
it's success.
Can someone give me help, thanks.
Hi again,
I am trying to stream a .mp4 to a remote public server without any luck. The server is not receiving anything on the 8888 port while I try to stream. Here is the code I am using:
String video = getExternalStorageDirectory().getAbsolutePath()+"/send.mp4";
String serverAddress = "udp://xx.xx.xx.xxx:8888";
Controller.getInstance().run(new String[]{
"-re",
"-i",
video,
"-vcodec",
"copy",
"-an",
"-f",
"mpegts",
serverAddress
});
It is good to note that:
Any ideas?
Hey, after making many chances to your guide on building ffmpeg for android, I have finally succeeded in building ffmpeg 4.0 for android.
Is there any way that i can get progress of the command that is executing? It can be anything like number of frames executed or timestamp.
Thanks in advance.
I'm using this commands to draw the text, but don't got any success
String[] args = new String[]{ "-i", filePath, "-vf", "format=yuv444p", "drawtext=fontfile="+font.getAbsolutePath()+":text='Title of this Video'", "format=yuv420p", "-c:v", "libx264", "-c:a", "copy", "-movflags", destinationPath+"/output_file.mp4" };
any advice?
When I try to convert using this command I create the empty webm file, could you help me?
Controller.getInstance().run(new String[]{
"-y",
"-i",
mOriginalPath,
"-vc",
"libvpx",
"-b:v",
"500K",
filePathWebm.getAbsolutePath()
});
Hello,
Actually I have a question that is related to ffmpeg not just to your library.
I wanna output to be saved not in phone disk but in buffers or etc. actually saving in ram I think.
The reason is that I want to process the out put and then reading again is not good in performance.
I have heard about "memory protocol".
I wonder if you know about that?
Thanks.
I am trying to save live stream from ip camera but file is not created.
my requirement is recording video 20 seconds from live stream. I am using below command but it is not working. please help me.
String[] cmd = {"-y", "-i", "rtsp://username:[email protected]:554", "-c:v", "libx264", "-preset", "ultrafast", "-strict", "-2", "-s", "720*1280", "-aspect", "16:9", file_path };
It was working all great before upgrading lib to Android 10, After upgrading ffmpeg lib to Android 10, I am facing an issue that video stays black and audio plays in firefox and chrome. This issue only happens in firefox and chrome. It works well on Safari. So not sure what is the issue.
Here is my code to merge 3 videos: https://www.dropbox.com/s/jvczuhkmlt76ykd/Androidcode.rtf?dl=0
Input code:
Controller.getInstance().run(arrayOf("-i",
inputs[0],
"-c",
"copy",
"-bsf:v",
"h264_mp4toannexb",
"-f", "mpegts",
inputs[0].replace("STOR", "MUTE_STOR"
).replace(".mp4", ".ts")
));
Error: java.lang.UnsatisfiedLinkError: dalvik.system.PathClassLoader[DexPathList[[zip file "/data/app/[]-2/base.apk"],nativeLibraryDirectories=[/data/app/[]-2/lib/arm64, /data/app/[]-2/base.apk!/lib/arm64-v8a, /system/lib64, /vendor/lib64, /system/vendor/lib64, /product/lib64]]] couldn't find "libffmpeg.so".
I copied the command from the ffmpeg website. The example of this library works fine.
Why is this error happening? Is because ffmpeg is disabled in the build script? Does this project compile every functionality of ffmpeg?
Hi,
I am not able to install on emulator (running api 25). I get the following error
$ adb push /Users/bc/tmp/AndroidSandbox/app/build/outputs/apk/app-debug.apk /data/local/tmp/my.sandbox.project2
$ adb shell pm install -r "/data/local/tmp/my.sandbox.project2"
Failure [INSTALL_FAILED_NO_MATCHING_ABIS: Failed to extract native libraries, res=-113]
Error while Installing APK
I have specified the abi filters in my app build.gradle defaultConfig as follows
defaultConfig {
...
ndk {
abiFilters 'x86', 'x86_64', 'armeabi', 'armeabi-v7a', 'arm64-v8a'
}
}
dependencies {
...
compile 'com.madhavanmalolan.android:ffmpegandroidlibrary:0.0.4'
}
I built my .so libs using https://github.com/IljaKosynkin/FFmpeg-Development-Kit.
And I copied them to my projects src/main/jniLibs folder.
Any idea what is causing the error? I am running Android Studio 2.3.3, .so libs built using NDK 13rb and FFMPEG 3.2.9.
Thanks.
i build ffmpeg . also generate .so file of different abi versions . now how can i integrate & run with ffmpeg command android
Can you add Progress like https://github.com/bravobit/FFmpeg-Android ?
I made a latest ffmpeg build but i need to get progress . If possible please make asap
Hi,
I'm trying to add watermark over a video.
Below is the command i'm using
String[] temp = new String[]{
"-y",
"-i",
"/storage/emulated/0/Download/input.mp4",
"-i",
"/storage/emulated/0/Download/watermark.png",
"-filter_complex",
"\"overlay=10:10\"",
"/storage/emulated/0/Download/output.mp4"
};
Controller.getInstance().run(temp);
I get the below logs, i'm clueless what went wrong
05-31 11:09:01.918 14533-17872/com.test.app I/Videokit: start run in main.
register_exit
05-31 11:09:01.954 14533-17872/com.test.app I/Videokit: term_init & parse options.
05-31 11:09:02.179 14533-17872/com.test.app D/Videokit: ERROR OCCURED
Can you please point me in the right direction.
java.lang.UnsatisfiedLinkError: dalvik.system.PathClassLoader[DexPathList[[zip file "/data/app/com.ssi.movieplayer-Y2fejyZmq_A1VXvWlQjOLQ==/base.apk"],nativeLibraryDirectories=[/data/app/com.ssi.movieplayer-Y2fejyZmq_A1VXvWlQjOLQ==/lib/x86, /system/lib]]] couldn't find "libffmpeg.so"
I have followed mentioned steps in README. build_ffmpeg.sh script executed without any issue, but it has not created "android" folder in path/to/ffmpeg folder.
I wanted to generate .so files from the latest ffmpeg version 3.4.1 source code.
latest ndk version does not have darwin-x86_64, replacing it to the actual directory
#!/bin/bash
NDK=/home/r/aff/ndk/
SYSROOT=$NDK/platforms/android-14/arch-arm/
TOOLCHAIN=$NDK/toolchains/arm-linux-androideabi-4.9/prebuilt/linux-x86_64
i get error:
__MATHDECLX (Mdouble,function,suffix, args, attrib)
^
/usr/include/bits/mathcalls.h:302:1: note: in expansion of macro '__MATHCALLX'
__MATHCALLX (trunc,, (Mdouble __x), (const));
^
ffbuild/common.mak:60: recipe for target 'libavdevice/alldevices.o' failed
make: *** [libavdevice/alldevices.o] Error 1
teste.sh: 38: teste.sh: build_one: not found
java.lang.UnsatisfiedLinkError: dalvik.system.PathClassLoader[DexPathList[[zip file "/data/app/com.mysoft.audio-1/base.apk"],nativeLibraryDirectories=[/data/app/com.mysoft.audio-1/lib/arm64, /data/app/com.mysoft.audio-1/base.apk!/lib/arm64-v8a, /system/lib64, /vendor/lib64]]] couldn't find "libffmpeg.so"
at java.lang.Runtime.loadLibrary0(Runtime.java:972)
Hi Madhavan,
Can you help me how to recompile ffmpeg library to run it on 64 bit devices. Google is not allowing apps to be run on 64 bit devices if your native code library is not compiled for 64 bit devices.
We got only 4-5 days to fix this issue. Last date from google side is 1st August, 2019.
String intermediate1 = getExternalFilesDir(null).getAbsoluteFile()+"/intermediate1.ts";
String intermediate2 = getExternalFilesDir(null).getAbsoluteFile()+"/intermediate2.ts";
String filein = getExternalFilesDir(null).getAbsoluteFile()+"/in.mp4";
String fileout = getExternalFilesDir(null).getAbsoluteFile()+"/out.mp4";
String fileouts = getExternalFilesDir(null).getAbsoluteFile()+"/outs.mp4";
/************************************************/
Controller.getInstance().run(new String[]{
"-i",
filein,
"-c",
"copy",
"-bsf:v h264_mp4toannexb",
"-f",
"mpegts",
intermediate1
});
Controller.getInstance().run(new String[]{
"-i",
fileout,
"-c",
"copy",
"-bsf:v h264_mp4toannexb",
"-f",
"mpegts",
intermediate2
});
[https://trac.ffmpeg.org/wiki/Concatenate]
/*****************************************/
below is your code
from this files are created but not merge into 1 file
Controller.getInstance().run(new String[]{
"-f",
"-i",
filein,
"-vcodec",
"copy",
"-an",
intermediate2
}); Controller.getInstance().run(new String[]{
"-f",
"-i",
fileout,
"-vcodec",
"copy",
"-an",
intermediate1
});
Controller.getInstance().run(new String[]{
"-i",
"concat:"+intermediate1+"|"+intermediate2,
"-c",
"copy",
"-bsf:a aac_adtstoasc",
fileouts
});
Application is closed when this code is run
Please help
Hey! I have added " compile 'com.madhavanmalolan.android:ffmpegandroidlibrary:0.0.4' " in my build.gradle, and testing the run function with your code:
String filesDir = "/storage/sdcard0/";
Controller.getInstance().run(new String[] {
"-y",
"-i", filesDir + "in.mp4",
"-vcodec", "copy",
"-an",
filesDir + "out.mp4"
});
But my application gets terminated for some reason and this is the log that I see:
I/InjectionManager: featureStore :{}
D/SecWifiDisplayUtil: Metadata value : SecSettings2
W/art: Before Android 4.1, method android.graphics.PorterDuffColorFilter android.support.graphics.drawable.VectorDrawableCompat.updateTintFilter(android.graphics.PorterDuffColorFilter, android.content.res.ColorStateList, android.graphics.PorterDuff$Mode) would have incorrectly overridden the package-private method in android.graphics.drawable.Drawable
D/PhoneWindow: FMB installDecor mIsFloating : false
D/PhoneWindow: FMB installDecor flags : -2139029248
W/linker: libffmpeg.so: unused DT entry: type 0x6ffffffe arg 0x4d0c
W/linker: libffmpeg.so: unused DT entry: type 0x6fffffff arg 0x9
W/linker: libavformat-56.so: unused DT entry: type 0x6ffffffe arg 0x5fa0
W/linker: libavformat-56.so: unused DT entry: type 0x6fffffff arg 0x4
W/linker: libavcodec-56.so: unused DT entry: type 0x6ffffffe arg 0x56d4
W/linker: libavcodec-56.so: unused DT entry: type 0x6fffffff arg 0x4
W/linker: libswscale-3.so: unused DT entry: type 0x6ffffffe arg 0xda8
W/linker: libswscale-3.so: unused DT entry: type 0x6fffffff arg 0x3
W/linker: libavutil-54.so: unused DT entry: type 0x6ffffffe arg 0x5d78
W/linker: libavutil-54.so: unused DT entry: type 0x6fffffff arg 0x2
W/linker: libswresample-1.so: unused DT entry: type 0x6ffffffe arg 0xc78
W/linker: libswresample-1.so: unused DT entry: type 0x6fffffff arg 0x3
W/linker: libavfilter-5.so: unused DT entry: type 0x6ffffffe arg 0x40f4
W/linker: libavfilter-5.so: unused DT entry: type 0x6fffffff arg 0x7
W/linker: libavdevice-56.so: unused DT entry: type 0x6ffffffe arg 0x19fc
W/linker: libavdevice-56.so: unused DT entry: type 0x6fffffff arg 0x5
I/Videokit: start run in main.
I/Videokit: register_exit
I/Videokit: term_init & parse options.
I/TMSDISP: AcsAndroidVirtualDisplayIntfImpl::~AcsAndroidVirtualDisplayIntfImpl - Enter
AcsAndroidVirtualDisplayIntfImpl::~AcsAndroidVirtualDisplayIntfImpl - Enter2
AcsAndroidVirtualDisplayIntfImpl::~AcsAndroidVirtualDisplayIntfImpl - mSource2
AcsAndroidVirtualDisplayIntfImpl::~AcsAndroidVirtualDisplayIntfImpl - Exit
Application terminated.
Any ideas?
String filein = "input.mp4";
String img ="kapil.jpg";
String fileout = Environment.getExternalStorageDirectory().getAbsolutePath() +"/output.mp4";
Controller.getInstance().run(new String[]{ "-i", filein, "-i", img, "-filter_complex", "overlay=0:main_h-overlay_h", fileout
});
i am using this code to run my video with image over in main activity ...but output only blank activity is coming ...i am trying to run your project also same blank activity .... suggest something!!!
I am experiencing a crash when calling Run. I have the same problem when integrating with my own application and with the example project in github. With the example project I only updated the build tools and gradle plug-ins to the latest versions and commented out the bintray section which wasn't building.
The last trace output is "term_init & parse options.". It gets to the same point whatever parameters I send to Run. So it looks like it is falling over during the initialisation.
The same problem occurs on an Armv7 device running Android 5.0.1 and an Armv8 device running Android 7.1.1.
I have tried adding code to give runtime write external strorage permissions which I have confirmed is working.
Is it possible to convert input audio byte array to another byte array or stream without saving data to file in the middle by means of FFMPEG and how to do it if yes?
When I try to convert using this command I create the empty webm file, could you help me?
Controller.getInstance().run(new String[]{
"-y",
"-i",
mOriginalPath,
"-vc",
"libvpx",
"-b:v",
"500K",
filePathWebm.getAbsolutePath()
});
Generating SO files, making tha android maeke files, everythings done but when i'm trying ndk-build
using pathtondk/ndk-build its giving me this error
libavcodec/arm/mathops.h:98:26: error: unrecognized instruction mnemonic
"it gt \n\t"
I am trying to convert a .mov video file to .mp4 video file using below command:
ffmpeg -i input.mov -c copy output.mp4
But the build crashes with following stack trace:
03-23 14:59:17.864 12242-12242/? I/MultiDex: VM with version 2.1.0 has multidex support
03-23 14:59:17.864 12242-12242/? I/MultiDex: install
03-23 14:59:17.864 12242-12242/? I/MultiDex: VM has multidex support, MultiDex support library is disabled.
03-23 14:59:17.954 12242-12242/? I/Videokit: start run in main.
03-23 14:59:17.954 12242-12242/? I/Videokit: register_exit
03-23 14:59:17.954 12242-12242/? I/Videokit: term_init & parse options.
How can I fix this issue?
Hi Madhavan,
I am trying build from source using the steps that you have given. I am building on a Windows pc so,
=yes: not found eval: librtmpte_protocol
=yes: not found eval: libsrt_protocol
=yes: not found eval: libssh_protocol
=yes: not found eval: libsmbclient_protocol (there are many many more similar messages starting from =yes: not found eval: xxxxxx)
Unknown option "--disable-ffserver".
See ./configure --help for available options.
Makefile:2: ffbuild/config.mak: No such file or directory
Makefile:40: /tools/Makefile: No such file or directory
Makefile:41: /ffbuild/common.mak: No such file or directory
Makefile:91: /libavutil/Makefile: No such file or directory
Makefile:91: /ffbuild/library.mak: No such file or directory
Makefile:93: /fftools/Makefile: No such file or directory
Makefile:94: /doc/Makefile: No such file or directory
Makefile:95: /doc/examples/Makefile: No such file or directory
Makefile:160: /tests/Makefile: No such file or directory
make: *** No rule to make target '/tests/Makefile'. Stop.
Makefile:2: ffbuild/config.mak: No such file or directory
Makefile:40: /tools/Makefile: No such file or directory
Makefile:41: /ffbuild/common.mak: No such file or directory
Makefile:91: /libavutil/Makefile: No such file or directory
Makefile:91: /ffbuild/library.mak: No such file or directory
Makefile:93: /fftools/Makefile: No such file or directory
Makefile:94: /doc/Makefile: No such file or directory
Makefile:95: /doc/examples/Makefile: No such file or directory
Makefile:160: /tests/Makefile: No such file or directory
make: *** No rule to make target '/tests/Makefile'. Stop.
Makefile:2: ffbuild/config.mak: No such file or directory
Makefile:40: /tools/Makefile: No such file or directory
Makefile:41: /ffbuild/common.mak: No such file or directory
Makefile:91: /libavutil/Makefile: No such file or directory
Makefile:91: /ffbuild/library.mak: No such file or directory
Makefile:93: /fftools/Makefile: No such file or directory
Makefile:94: /doc/Makefile: No such file or directory
Makefile:95: /doc/examples/Makefile: No such file or directory
Makefile:160: /tests/Makefile: No such file or directory
make: *** No rule to make target '/tests/Makefile'. Stop.
Can you tell me what is causing the build to fail? Thanks a lot.
public void mergeAudioVideo(String audioFile, String videoFile, String mergedFile) { Controller.getInstance().run(new String[]{ "-i", videoFile, "-i", audioFile, "-c", "copy", "-map", "0:0", "-map", "1:0", mergedFile }); }
here is the code i m using for audio video merger
I compiled your libraly. I want merger two files mp3 and this is my String array:
"f" , "concat" , "-i" , pathFileMerger , "-c", "copy" , pathOut
But I received an error:
java.lang.UnsatisfiedLinkError: dalvik.system.PathClassLoader[DexPathList[[zip file "/data/app/com.mysoft.audio-1/base.apk"],nativeLibraryDirectories=[/data/app/com.mysoft.audio-1/lib/arm64, /data/app/com.mysoft.audio-1/base.apk!/lib/arm64-v8a, /system/lib64, /vendor/lib64]]] couldn't find "libffmpeg.so"
Can you help me? Thanks you very much.
Is it possible to convert to .mov to .mp4 using this library?
Does this library support Android 7.0 and 8.0 devices?
Hi!
I'm trying to compress videos with your library, and at first the app was crashing, but after I read through some of the closed issues it's not crashing anymore, but it's also not working to compress the video.
That's how I'm trying to do it:
Controller.getInstance().run(MediaUtils.getCompressCommand(path, activity, newFileName));
public static String[] getCompressCommand(String path, Context context, String newFileName) { return new String[]{"-y", "-i", path, "-s", "640x480", "-b:v", MediaUtils.getBitrateFromVideoResolution(context, path), "-strict", "-2", "-c:v", "libx264", "-preset", "ultrafast", "-crf", "18", "-c:a", "aac", "-threads", String.valueOf(SystemUtils.getNumberOfCores()), "-ac", "2", "-ar", "44100", "-b:a", "128k", "-f", "mp4", newFileName}; }
String[] cmd = new String[]{"-i",videoFile.getAbsolutePath(),"-i",audioFile.getAbsolutePath(),"-strict","experimental","-c","copy","-map","0:v","-map","1:a",file.getAbsolutePath()};
Controller.getInstance().run(cmd);
Then app terminated.
Help me please.
hello ,
any idea about how can we add one black-white Video between 2 Videos . i want to do like add black-white video at last second of 1 video & starting second of 2 video . overlay merge this 3 video( black-white, last second of 1 video & starting second of 2 video). at last concate all this videos & get output.
please provide command for this.
I have added implementation 'com.madhavanmalolan.android:ffmpegandroidlibrary:0.0.4' in my dependencies and jcenter under repositories.
I tried to do a simple test as below:
try {
Controller.getInstance().run(new String[]{
"-y",
"-i",
mp4_location,
"-vcodec",
"copy",
"-an",
mux_location
});
} catch (Exception er) {
System.out.println("failed: "+er);
And got the below error:
java.lang.UnsatisfiedLinkError: dalvik.system.PathClassLoader[DexPathList[[zip file "/data/app/com.tabaud.musik-K25pRG8-9drkRBScyQosFw==/base.apk", zip file "/data/app/com.tabaud.musik-K25pRG8-9drkRBScyQosFw==/split_lib_directories_apk.apk", zip file "/data/app/com.tabaud.musik-K25pRG8-9drkRBScyQosFw==/split_lib_resources_apk.apk"],nativeLibraryDirectories=[/data/app/com.tabaud.musik-K25pRG8-9drkRBScyQosFw==/lib/x86, /data/app/com.tabaud.musik-K25pRG8-9drkRBScyQosFw==/base.apk!/lib/x86, /data/app/com.tabaud.musik-K25pRG8-9drkRBScyQosFw==/split_lib_directories_apk.apk!/lib/x86, /data/app/com.tabaud.musik-K25pRG8-9drkRBScyQosFw==/split_lib_resources_apk.apk!/lib/x86, /system/lib, /system/vendor/lib]]] couldn't find "libffmpeg.so"
Am i missing any additional configuration here? please suggest.
Hi,
I am doing a build based on the instructions in your blog. When I run it, it crashes when calling 'run(String[])'. I added some debug statements in the run function and it seems to be in the call to 'main(argc, argv)' in ffmpeg_controller.c. Logcat has the following messages. Am I missing something in my setup?
12-01 21:45:50.306 D: killProcessQuiet, pid=10581 12-01 21:45:50.306 D: com.android.server.am.ActivityManagerService.appDiedLocked:5092 com.android.server.am.ActivityManagerService$AppDeathRecipient.binderDied:1212 android.os.BinderProxy.sendDeathNotice:559 12-01 21:45:50.306 I: Recipient 10581 12-01 21:45:50.316 W: HtcSystemUPHandler The policy is disabled. AppId: activity_history, category: launch 12-01 21:45:50.316 I: WIN DEATH: Window{2973480c u0 bk.sandbox.ndktest/bk.sandbox.ndktest.MainActivity} 12-01 21:45:50.396 D: Receive mPhoneStateListener 12-01 21:45:50.396 D: Receive mPhoneStateListener, getGsmSignalStrength22 12-01 21:45:50.396 D: onSignalStrengthsChanged 12-01 21:45:50.396 D: processRegCheck. needtoregister: true, mRegistered: false, type: 1, mRtype: 0, Mobile: DISCONNECTED, Wifi: CONNECTED_ROVE_IN, pauseims: DEFAULT 12-01 21:45:50.396 D: doIPServiceUnregistration: Abort: mAtomicDereg.get()=false 12-01 21:45:50.396 D: doIPServiceUnregistration: Abort: mRegistered=false 12-01 21:45:50.396 D: doIPServiceUnregistration: Abort: mAtomicReg.get()=false 12-01 21:45:50.396 D: destroyService. false 12-01 21:45:50.396 D: SignalStrength: 5 12-01 21:45:50.396 D: level=5/5 12-01 21:45:50.426 I: Process bk.sandbox.ndktest (pid 10581) has died 12-01 21:45:50.426 W: Force removing ActivityRecord{1ae37c4f u0 bk.sandbox.ndktest/.MainActivity t27280}: app died, no saved state
My app size is around 20mb.
I dont need most of the codec.
How do generate so file for the codec I need ?
Thanks for the awesome library
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.