【问题标题】:Compiling FFmpeg without ALMOST everything在几乎没有所有内容的情况下编译 FFmpeg
【发布时间】:2017-04-22 17:55:51
【问题描述】:

就我而言,我想使用 ffmpeg-android git repo 为 android 编译 ffmpeg。要了解我的问题,您应该了解构建 ffmpeg 的基础知识。 我只处理音频文件,但这个问题可能会给你一些其他问题的起点。 我修改了 FFmpeg 的 ./configure 命令以避免使用 gpl 并使用 (important) --disable-everything.

这会禁用一切。我需要覆盖两个音频文件。

但我遇到了一些问题。

因为我必须搜索几天才能找到许多我必须组合的解决方案,所以我开始了这个问答。

【问题讨论】:

    标签: android linux gcc ffmpeg compiler-errors


    【解决方案1】:

    我添加到 ./configure:

    --enable-filter=amix, aresample.

    规则 1

    您应该了解最必要的过滤器。就我而言,我还需要 aresample 来编写输出文件。

    规则2

    确定您要使用的格式。 就我而言,我想处理和/或输出 mp3 和 aac 文件。 通过在互联网上搜索您的愿望来告知自己。 好的搜索词:ffmpeg {aac, mp3, etc.} encoder .||. decoder .||. muxer .||. demuxer

    对于 aac,我需要 --enable-muxer=adts--enable-dexmuxer=adts,aac--enable-bsf=adtstoasc

    规则 3

    启用给定输入文件的协议(uri 方案)。如果你想使用来自 /media/audios/myAudio.mp3 的输入,你必须添加文件协议:--enable-protocol=file

    规则 4

    其他库: 对于 mp3 文件,请使用 --enable-libmp3lame 搜索互联网以获取更多信息。

    规则 5

    如果您想将低质量的音频文件与高质量的音频文件结合起来,输出可能会变得与低质量的音频文件一样糟糕。您应该在使用 ffmpeg 时指定比特率。搜索互联网以获取更多信息。

    规则 6

    搜索互联网。您可能无法在几秒钟内找到解决方案,但如果您不停止,您可能会找到解决方案。还要检查编译控制台输出并检查您想要的每个解码器和编码器是否真的存在。 FFmpeg 提供了这些信息。也许您为与编码器名称不同的文件格式使用了错误的名称。或者编码器的名称与解码器不同。

    第 7 条 您可以通过调用获取所有支持的编码器和解码器以及复用器等的列表

    ./configure --list-{what you want to list in plural}

    示例:./confige --list-demuxers

    【讨论】:

      猜你喜欢
      • 2013-02-22
      • 1970-01-01
      • 1970-01-01
      • 2013-05-20
      • 2014-09-11
      • 2015-03-12
      • 2013-02-16
      • 1970-01-01
      • 2015-05-19
      相关资源
      最近更新 更多