使用 FFMPeg 编码器库时 Android apk 文件太大

标签 android ffmpeg apk size

我正在开发一个使用以下库创建 x264 视频的应用程序:

com.arthenica:mobile-ffmpeg-full:4.2.2.LTS

但结果 apk 文件太大(~71mb),所以我尝试了:
com.arthenica:mobile-ffmpeg-min-gpl:4.2.2.LTS

这样,由于库只下载了几个编解码器-包括我需要的编解码器-apk 大小减少到 ~49mb,这要好得多,但对我来说仍然太大,所以我需要知道是否有你知道减少apk大小的更好方法,因为人们通常拒绝下载这么大的应用程序

关于应用程序的其余部分(可绘制对象、资源等),它们都得到了很好的优化,因为如果我删除这个库并重新构建,应用程序的大小 降至 10mb

我正在阅读这个问题:
FFMPEG Android Library Increase Size

并且用户 S.R 建议将所有 cpu 架构模型压缩在一个存档文件中,并根据应用程序目录上的 cpu 模型提取 objective-c pu 库并从那里加载 ffmpeg,但我真的不知道该怎么做。

我正在检查我的应用程序的文件夹结构,并注意到下一个关于 ffmpeg lib 的文件夹:
arm64-v8a => ~16mb
armeabi-v7a => ~29mb
x86 => ~17mb
x86_64 => ~21mb

但不确定我是否可以删除它们中的任何一个,并且您可以看到 armeabi-v7a 是最大的。

enter image description here

最佳答案

  • 根据您的要求,FFmpeg 是完成这么多视频处理任务的最佳选择,但 FFmpeg 的问题在于它会增加应用程序的大小。所以我建议你编译这个FFMPEG在您的项目中,它还具有许多内置功能,例如添加音乐,在视频上添加图像等。它肯定会帮助您完成工作,而且大小也非常小~11mb。
  • 您可以使用 Android App Bundle (aab) 来减小应用大小
    更远。
  • 关于使用 FFMPeg 编码器库时 Android apk 文件太大,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60903496/

    相关文章:

    android - 如何创建 View stub ?

    android - Vitamio ffmpeg版

    android - Android环境下如何从android应用中的apk文件中获取应用或包信息

    android - 生成签名的APK - 签名版本 - 选择什么?

    android - SMS Retriever API 不适用于 Firebase PhoneAuth

    android - 类 'stat64' 没有构造函数 stat64(const char *,stat64*)

    python - 如何在 python 中合并 mp3 和 mp4/将 mp4 文件静音并在其上添加 mp3 文件

    windows - 为 Windows 构建 ffmpeg 的困难

    javascript - 如何将 Phaser 3 游戏转换为安卓游戏?

    java - 从互联网上获取 xml 提要并将其放入我的 Assets 中