我正在关注this代码以使用C中的ffmpeg库。 ffmpeg库的文档很少,很难理解每个函数究竟做了什么 我理解代码(正在做什么)。但我缺乏清晰度。有人可以帮帮我吗?
Q1) struct AVFrameContext ****和** filename (需要的最小非NULL参数)被传递给函数avformat_open_input()。顾名思义,输入文件是“打开”的。怎么样?
答案 0 :(得分:5)
在file_open中完成的主要工作是
答案 1 :(得分:3)
你可以在FFmpeg的libavformat\utils.c
中查找真正发生的事情:
int avformat_open_input(AVFormatContext **ps, const char *filename, AVInputFormat *fmt, AVDictionary **options)
{
AVFormatContext *s = *ps;
int ret = 0;
AVDictionary *tmp = NULL;
ID3v2ExtraMeta *id3v2_extra_meta = NULL;
if (!s && !(s = avformat_alloc_context()))
return AVERROR(ENOMEM);
// on and on