在Android上使用FFMPEG库进行视频压缩

3
1个回答

5

针对Android(或其他平台)上使用ffmpeg,您可以采取以下几种常见方法:

  • 通过EXEC命令从程序中调用命令行(具有某些限制和缺点)
  • 使用ffmpeg命令行C程序的包装器
  • 直接使用ffmpeg库,更准确地说是ffmpeg使用的库

如果您只想快速获得功能性操作,则包装器方法可能是最简单的方法。

Github上有几个相当常用的包装器,下面这些特别好用且文档齐备(请注意,我之前没有使用过这些包装器,因为它们不太成熟,但如果我现在再做这样的事情,我一定会在其中一个上构建):

使用其中一个经过良好支持和广泛使用的库将解决您可能遇到的一些常见问题,例如必须为不同的处理器类型加载不同的二进制文件,并且一些棘手的本地库重新加载问题以避免在包装器的后续调用中导致崩溃。

由于该方法使用标准ffmpeg命令行语法进行命令操作,因此这也意味着您应该能够轻松地搜索并找到有关多个不同操作的帮助(因为任何以“正常”模式使用ffmpeg的人都将使用相同的ffmpeg命令语法)。


谢谢Mick。它像魔法一样奏效了。 :) 我还有一个问题,就是在包含这个之后APK的大小问题。它增加了26 MB。我尝试使用单独的APK来处理不同的CPU架构。但是除此之外,我还有其他方法可以减小它吗? - Rahul
抱歉,不知怎么错过了评论 - 根据是否包括每个架构的二进制文件,我也看到大约在15-23M之间。我认为,如果您想要更好的结果,您需要开始更深入地了解ffmpeg的细节,这时使用包装器方法可能就没有那么有意义了。 - Mick
嗨Rahul,你能帮我提供一个最小尺寸的工作视频压缩Java代码/库来解决同样的问题吗?谢谢。 - Shubham1164

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接