笔记:ffmpeg的AVFormatContext结构体

来源:互联网 发布:全球产品样本数据库 编辑:程序博客网 时间:2024/06/05 18:49


操作AVFormatContext*类型的变量前,必须将其初始化为NULL,或者调用函数avformat_alloc_context()为其分配内存空间。


AVFormatContext *pFormatCtx;


分两种情况讨论:

1、pFormatCtx是全局变量

此时pFormatCtx默认被初始化为NULL,可在程序中直接调用之;


2、pFormatCtx是局部变量

在操作pFormatCtx前,必须先执行以下操作,否则可能会导致程序崩溃!具体原因可参考ffmpeg中av_register_all、av_open_input等函数的源码。

pFormatCtx = NULL;

pFormatCtx = avformat_alloc_context();


建议:

在定义指针变量时,一定要初始化。


0 0