2

您好,我正在尝试使用 C ffmpeg 库对视频进行编码。出于某种原因,当我尝试创建格式上下文时,出现以下错误:

[NULL @ 0x7ff574006600] Requested output format 'mp4' is not a suitable output format

我知道我的 ffmpeg 是用 x264 标志编译的,作为一个简单的

ffmpeg -i test.mov test.mp4

工作正常。我还链接了所有生成的 pch 文件,libav* 库中的所有其他内容都运行良好。这是我收到的错误的完整工作示例:

#include <libavformat/avformat.h>
#include <libavcodec/avcodec.h>
#include <libavutil/avutil.h>
#include <libswscale/swscale.h>
#include <libavutil/opt.h>
#include <libswscale/swscale.h>
#include <libavutil/imgutils.h>

#include <stdio.h>

int main() {

    AVFormatContext * output = NULL;

    // now lets initialize the actual format element
    if (avformat_alloc_output_context2(&output, NULL, "mp4", "test.mp4") < 0) {

        printf("%s", "INVALID");
    }

    return 0;

}
4

1 回答 1

2

你必须打电话

av_register_all();

在分配输出上下文之前。

于 2013-11-15T16:25:53.040 回答