How to build and import Android GPU Image Plus?
Source: Github
Question: How to build with only cge module (No ffmpeg, opencv or faceTracker) and import to an existing Android studio project?
Answer:
Common: Maybe leaving 64bit build for now (as we dont support 64bit yet, see this), edit jni\Application.mk:
APP_ABI := armeabi armeabi-v7a x86 mips
The Window way:
Thanks to this comment, to invoke ndk-build in Window we will need to include file extension, so ndk-build.cmd.
Download GPUImage Plus from Github and Android NDK.
Open cmd and cd into the jni folder in GPUImage Plus's library module, for example:
cd C:\Users\Viet\Desktop\android-gpuimage-plus-master\library\src\main\jni
Then excute the ndk-build.cmd with the full path to NDK folder (make sure the path to NDK does not contain space), for example:
C:\Users\Viet\AppData\Local\Android\sdk\ndk-bundle\ndk-build.cmd
Now we can safely delete the jni folder, (or keep some of the folders that have cpp files just for reference).
Go into your Android Studio project -> New -> import new Module.. -> choose the library folder.
In NativeLibraryLoader,comment out:
//System.loadLibrary("ffmpeg");
//CGEFFmpegNativeLibrary.avRegisterAll();
The Linux way
Install Ubuntu 16.04 in Virtual Box (Linux Mint may have issue, didn't remmeber correctly, just use Ubuntu to be safe).
Enable Shared Folder for the virtual machine following this instruction, in short:
Installing the Guest Additions:
vboxsf group with this command sudo adduser your_username vboxsfAdd Shared Folder:
Download GPUImage Plus from Github and put the library folder in the shared folder.
Download NDK and extract to shared folder just for convinient.
Open terminal and cd into the library's jni folder. for example:
cd /media/sf_VirtualBoxSharedFolder/library/src/main/jni.
Type path_to_your_NDK/ndk-build, for example
/media/sf_VirtualBoxSharedFolder/android-ndk-r15b-linux-x86_64/android-ndk-r15b/ndk-build.
Now we can safely delete the jni folder, (or keep some of the folders that have cpp files just for reference)..
Go into your Android Studio project -> New -> import new Module.. -> choose the library folder.
In NativeLibraryLoader,comment out:
//System.loadLibrary("ffmpeg");
//CGEFFmpegNativeLibrary.avRegisterAll();