8

我正在将一些图像编码为 mp4 容器内的 h264 视频。我基本上使用的是 ffmpeg 示例 muxing.c。问题是我正在尝试在 mp4 容器中设置一些元数据,例如艺术家、标题等...

我认为使用以下方法会起作用,但它没有:

AVDictionary *opts = NULL;
av_dict_set(&opts, "title", "Super Lucky Dude", 0);
av_dict_set(&opts, "author", "Jacky Chan", 0);
av_dict_set(&opts, "album", "Chinese Movie", 0);
av_dict_set(&opts, "year", "05/10/2013", 0);
av_dict_set(&opts, "comment", "This video was created using example app.", 0);
av_dict_set(&opts, "genre", "Action", 0);

// Write the stream header, if any.
ret = avformat_write_header(oc, &opts);

创建整个视频后,我看不到任何元数据写入视频文件。任何指针如何真正正确地做到这一点?

4

1 回答 1

7

解决方案是实际使用metadata变量 fromAVFormatContext而不是创建我自己的变量AVDictionary并将其传递给avformat_write_header function.

于 2013-06-11T10:30:07.810 回答