FFmpeg 程式碼範例

2020-08-08 13:18:04
FFmpeg列印音視訊Meta資訊
/// FFmpeg列印音視訊Meta資訊
/// 編譯命令
/// clang -g -o ./cmake-build-debug/mediainfo main.c `pkg-config --libs libavutil libavformat`

#include "libavformat/avformat.h"
#include <libavutil/log.h>

int main() {
    int ret;
    AVFormatContext *fmt_ctx = NULL;
    const char* movie_path = "../res/test.mp4";

    av_log_set_level(AV_LOG_INFO);

    // 註冊所有編解碼器
    av_register_all();

    // 開啓一個多媒體檔案
    ret = avformat_open_input(&fmt_ctx, movie_path, NULL, NULL);
    if(ret < 0) {
        av_log(NULL, AV_LOG_ERROR, "Can't open file: %s\n", av_err2str(ret));
        return -1;
    }

    // 列印多媒體資訊
    av_dump_format(fmt_ctx, 0, movie_path, 0);
    avformat_close_input(&fmt_ctx);

    return 0;
}