Open symphonyrecords opened 5 years ago
I don't understand what it means. Can I put some pictures?
@protectedMan @Savion1162336040 @abdelhady @Brianvdb I've added full details with all necessary codes. Result: 79.8MB ==> 13.2MB
The packaged APK is already a zip compression package, although the compression rate is not very high.
I tried to compare ffmpeg files with completely uncompressed ones using high compression rates, which is only about 2 Mb short after packaging.
@protectedMan I'm using both ffmpeg
,ffprobe
files for both x86
,arm
CPU arch. Signed APK size uncompressed ==>50.7MB and compressed ==> 23.1MB
It work well. But Bravobit dont add this imlementation in project yet.
I see libp7zip add extra MB in project too ~ +10MB. But total size reduced well.
I make fork with this implementation. https://github.com/dmkenza/FFmpeg-Android/blob/master/README.md
And I created library
implementation 'com.github.dmkenza:FFmpeg-Android:1.1'
It work well. But Bravobit dont add this imlementation in project yet.
I see libp7zip add extra MB in project too ~ +10MB. But total size reduced well.
I make fork with this implementation. https://github.com/dmkenza/FFmpeg-Android/blob/master/README.md
And I created library
implementation 'com.github.dmkenza:FFmpeg-Android:1.1'
Hi @dmkenza. Your project doesn't work on Android 10, does it?
@namdhis Yes.
See https://github.com/tanersener/mobile-ffmpeg Only this way work on android 10. Generate own ffmpeg or use generated. Use abi split to reduce apk.
hello i am bit confuse i use implementation 'com.arthenica:mobile-ffmpeg-min-gpl:4.2.2.LTS' in my app and its ganerated files (.so one), and they are taking space, so if i have to remove implementation 'com.arthenica:mobile-ffmpeg-min-gpl:4.2.2.LTS' from my app? and where to place that .zip file please reply @symphonyrecords
I am new to ffmpeg for android. I want a little help, what format are FFmpeg file and FFprobe file? I don't know how to open it and view its contents. Do you have any documents to guide how to build file FFmpeg and file FFprobe?
This is not an issue , it's more like an enhancement if you approve.
1. Compress asset files
(ffmpeg && ffprobe)
to any archive format, and replace with current files.2. With some extra code, copy archive file in app directory with
asynctask
,3. Extract archive with this library (Also supports
rar
archive).Result: 79.8MB ==> 13.2MB
Extraction time: 1 Second (Honor 8 Lite API 25/26.).
Without Compression
With Compression
I'm using this settings for compression:
Windows 10 64bit,
7-Zip
Application,.7z
Archive format,Ultra
compression level,LZMA2
compression method.You can try other compression methods and archive formats to test different results.
Required codes to copy/extract archive to app directory:
Add this to anywhere you want to initialize copy process (I would prefer inside
onCreate
ofApplication
class).Above method will process this functions:
copy archive from asset to app directory.
check CPU arch model.
extract archive based on CPU model.
delete archive after extraction.
make file executable.
return true/false if device supports ffmpeg or not.
full code:
add to build.gradle :
FFmpegArchiveUtil.java