【问题标题】:Android Strip Audio From VideoAndroid 从视频中剥离音频
【发布时间】:2010-10-10 13:42:20
【问题描述】:

在我的程序中,它获取 MP4 视频,我希望它输出 MP3(没有任何服务器端的东西)。由于 Android(和我的应用程序)需要在许多不同的硬件配置上运行,这意味着我可能不能使用 FFMPEG。我知道这可能非常消耗电池和处理能力,尤其是对于手机来说,但我的用户需要这个选项。我找不到任何不使用 FFMPEG 的 Java 本地库。

【问题讨论】:

    标签: android audio video video-processing strip


    【解决方案1】:

    我认为 FFMPEG 没有什么问题,因为 Debian 支持 apparently it runs on 11 架构。只有不支持的架构显然是 m68k,其他是移植到 FreeBSD 内核或 Hurd 内核的旧版本。据我对 Android 的了解,它基于 ARM 的事实不会很快改变。

    当然,围绕原生代码的 Java 包装器可能存在一些问题。是这个问题吗?我不是 Android 也不是 Java 程序员,但我相信您可以检测到平台并动态加载适当的原生包装器。

    【讨论】:

      【解决方案2】:

      MPEG_4 Part 14(.mp4 文件扩展名)是一种容器格式。换句话说,这指定了如何将多个媒体流打包在一起。处理容器格式的计算成本比压缩或解压缩视频低得多。如果在手机 ARM 处理器上读取 .mp4 文件并提取音频流的计算成本太高,我会感到惊讶。

      我也没有看到任何立即合适的 Java 库。构建自己的库可能不会太难。解析容器格式比解压缩视频要简单得多。而且您确实有 ffmpeg 中的 libavformat 实现作为参考。 MPEG4 Part 14 标准可以在这里找到:

      http://webstore.iec.ch/preview/info_isoiec14496-14%7Bed1.0%7Den.pdf

      这里:

      http://standards.iso.org/ittf/PubliclyAvailableStandards/index.html

      【讨论】:

        【解决方案3】:

        我没有使用它,但我下载并正在查看IBM Toolkit for MPEG-4 的 API。不过,它看起来对数据访问功能有点轻描淡写。不过,实现是纯java。看起来他们已经混淆了他们的编解码器 jar。

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2023-03-19
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多