当前位置:网站首页>FFMPEG关键结构体——AVFormatContext
FFMPEG关键结构体——AVFormatContext
2022-07-05 23:56:00 【陈小帅hh】
一、AVFormatContext结构体
AVFormatContext是存储音视频封装格式中包含的信息的结构体,也是FFmpeg中统领全局的结构体,对文件的封装、编码操作从这里开始。
结构体的定义位于libavformat中的avformat.h
二、常见变量
struct AVInputFormat *iformat;//输入数据的封装格式。仅解封装用,由avformat_open_input()设置。
struct AVOutputFormat *oformat;//输出数据的封装格式。仅封装用,调用者在avformat_write_header()之前设置。
AVIOContext *pb;// I/O上下文。
解封装:由用户在avformat_open_input()之前设置(然后用户必须手动关闭它)或通过avformat_open_input()设置。
封装:由用户在avformat_write_header()之前设置。 调用者必须注意关闭/释放IO上下文。
unsigned int nb_streams;//AVFormatContext.streams中元素的个数。
AVStream **streams;//文件中所有流的列表。
char filename[1024];//输入输出文件名。
int64_t start_time;//第一帧的位置。
int64_t duration;//流的持续时间
int64_t bit_rate;//总流比特率(bit / s),如果不可用则为0。
int64_t probesize;
//从输入读取的用于确定输入容器格式的数据的最大大小。
仅封装用,由调用者在avformat_open_input()之前设置。
AVDictionary *metadata;//元数据
AVCodec *video_codec;//视频编解码器
AVCodec *audio_codec;//音频编解码器
AVCodec *subtitle_codec;//字母编解码器
AVCodec *data_codec;//数据编解码器
int (*io_open)(struct AVFormatContext *s, AVIOContext **pb, const char *url, int flags, AVDictionary **options);
//打开IO stream的回调函数。
void (*io_close)(struct AVFormatContext *s, AVIOContext *pb);
//关闭使用AVFormatContext.io_open()打开的流的回调函数。
边栏推荐
猜你喜欢
上门预约服务类的App功能详解
4 points tell you the advantages of the combination of real-time chat and chat robots
Breadth first search open turntable lock
How to rotate the synchronized / refreshed icon (EL icon refresh)
零犀科技携手集智俱乐部:“因果派”论坛成功举办,“因果革命”带来下一代可信AI
硬件及接口学习总结
Mathematical model Lotka Volterra
软件测试工程师必会的银行存款业务,你了解多少?
GFS分布式文件系統
Tips for using pads router
随机推荐
保研笔记一 软件工程与计算卷二(1-7章)
Initialiser votre vecteur & initialisateur avec une liste Introduction à la Liste
Add noise randomly to open3d point cloud
微信小程序---WXML 模板语法(附带笔记文档)
Bao Yan notes II software engineering and calculation volume II (Chapter 13-16)
Rasa 3. X learning series -rasa x Community Edition (Free Edition) changes
Rsync remote synchronization
Qcombox (rewrite) + qcompleter (auto completion, auto loading the drop-down options of qcombox, setting the background color)
【luogu CF487E】Tourists(圆方树)(树链剖分)(线段树)
Use mapper: --- tkmapper
GFS distributed file system
权限问题:source .bash_profile permission denied
TS type declaration
MySQL global lock and table lock
激光slam学习记录
Upgrade openssl-1.1.1p for openssl-1.0.2k
[SQL] SQL expansion languages of mainstream databases (T-SQL, pl/sql, pl/pgsql)
Zhuan: in the future, such an organization can withstand the risks
PADS ROUTER 使用技巧小记
C reflection and type