【问题标题】:Process video files in Android using FFMpeg使用 FFMpeg 在 Android 中处理视频文件
【发布时间】:2014-08-01 10:43:07
【问题描述】:

我想使用 FFMpeg 在 android 上进行视频处理。我成功构建了 .so 库并将其链接到我的 NDK 项目,但现在我真的不知道下一步该做什么。我找不到任何关于如何例如的例子裁剪视频或从 NDK 旋转它。我发现了很多 ffmpeg 命令行工具的例子,比如:

ffmpeg -i in.mp4 -filter:v "crop=out_w:out_h:x:y" out.mp4

但它们都没有引用 C 代码。这是否可以在 NDK C 代码中执行类似上述示例的操作?我在哪里可以找到适合初学者的 FFMpeg 示例?这可以从android应用程序调用ffmpeg命令行工具吗?

【问题讨论】:

标签: video android-ndk ffmpeg


【解决方案1】:

安装适用于 Android 的免费“GNURoot”应用。它不需要root访问权限即可安装。然后它有一个可以安装的 Debian 发行版。启动 Debian 后:

apt-get update
apt-get upgrade

从那里apt-get install ffmpeg

我会亲自尝试并在此处跟进。

更新:GNURoot Debian 给我带来了麻烦。但我终于在我的 Nexus7 上安装了 ffmpeg。您应该尝试使用 GNURoot Fedora 和 rpmfusion 存储库,而不是 GNURoot Debian:

yum localinstall --nogpgcheck \ http://download1.rpmfusion.org/free/fedora/rpmfusion-free-release-$(rpm -E %fedora).noarch.rpm \ yum localinstall --nogpgcheck http://download1.rpmfusion.org/nonfree/fedora/rpmfusion-nonfree-release-$(rpm -E %fedora).noarch.rpm

启用 repo 后,yum install ffmpeg 就可以开始了!适用于 Nexus 7,但不适用于 Galaxy Tab 4。

【讨论】:

  • apt-get upgrade 不再导致 gnuroot wheezy 出现问题。
【解决方案2】:

如果您想对流程进行更多控制,您可以构建 ffmpeg 库并使用 JNI 包装器从 C 代码甚至 Java 与它们通信。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2019-01-04
    • 2015-08-22
    • 1970-01-01
    • 2020-12-27
    • 1970-01-01
    • 2020-05-11
    • 2015-12-10
    相关资源
    最近更新 更多