当前位置:网站首页>Key structure of ffmpeg - avformatcontext
Key structure of ffmpeg - avformatcontext
2022-07-06 00:01:00 【Chen Xiaoshuai HH】
One 、AVFormatContext Structure
AVFormatContext It is a structure that stores the information contained in the audio and video packaging format , It's also FFmpeg The structure that dominates the overall situation , Encapsulation of documents 、 The coding operation starts from here .
The definition of a structure lies in libavformat Medium avformat.h
Two 、 Common variables
struct AVInputFormat *iformat;// Encapsulation format of input data . Only for unpacking , from avformat_open_input() Set up .
struct AVOutputFormat *oformat;// Encapsulation format of output data . For packaging only , The caller is avformat_write_header() Set before .
AVIOContext *pb;// I/O Context .
decapsulation : By user on avformat_open_input() Set before ( Then the user must turn it off manually ) Or through avformat_open_input() Set up .
encapsulation : By user on avformat_write_header() Set before . The caller must pay attention to closing / Release IO Context .
unsigned int nb_streams;//AVFormatContext.streams The number of elements in .
AVStream **streams;// List of all streams in the file .
char filename[1024];// Input / output file name .
int64_t start_time;// The position of the first frame .
int64_t duration;// Duration of flow
int64_t bit_rate;// Total stream bit rate (bit / s), If not available 0.
int64_t probesize;
// The maximum size of the data read from the input to determine the format of the input container .
For packaging only , By the caller at avformat_open_input() Set before .
AVDictionary *metadata;// Metadata
AVCodec *video_codec;// Video codec
AVCodec *audio_codec;// Audio codec
AVCodec *subtitle_codec;// Letter codec
AVCodec *data_codec;// Data codec
int (*io_open)(struct AVFormatContext *s, AVIOContext **pb, const char *url, int flags, AVDictionary **options);
// open IO stream Callback function for .
void (*io_close)(struct AVFormatContext *s, AVIOContext *pb);
// Turn off use AVFormatContext.io_open() Callback function of the open stream .
边栏推荐
- How much do you know about the bank deposit business that software test engineers must know?
- 硬件及接口学习总结
- Use CAS instead of synchronized
- Yunna | what are the main operating processes of the fixed assets management system
- Zero rhino technology joined hands with the intelligence Club: the "causal faction" forum was successfully held, and the "causal revolution" brought the next generation of trusted AI
- Open source CRM customer relationship system management system source code, free sharing
- 多普勒效應(多普勒頻移)
- 用列錶初始化你的vector&&initializer_list簡介
- XML配置文件(DTD详细讲解)
- 教你在HbuilderX上使用模拟器运行uni-app,良心教学!!!
猜你喜欢
Problem solving win10 quickly open ipynb file
Huawei equipment is configured with OSPF and BFD linkage
[noi simulation] Anaid's tree (Mobius inversion, exponential generating function, Ehrlich sieve, virtual tree)
FFMPEG关键结构体——AVCodecContext
XML configuration file (DTD detailed explanation)
XML配置文件(DTD详细讲解)
用列表初始化你的vector&&initializer_list简介
传输层协议------UDP协议
如何让同步/刷新的图标(el-icon-refresh)旋转起来
【在线聊天】原来微信小程序也能回复Facebook主页消息!
随机推荐
NSSA area where OSPF is configured for Huawei equipment
14 MySQL-视图
上门预约服务类的App功能详解
【DesignMode】组合模式(composite mode)
USB Interface USB protocol
【DesignMode】适配器模式(adapter pattern)
如何让同步/刷新的图标(el-icon-refresh)旋转起来
FFT 学习笔记(自认为详细)
"14th five year plan": emphasis on the promotion of electronic contracts, electronic signatures and other applications
Open3D 点云随机添加噪声
Configuring OSPF load sharing for Huawei devices
Yunna | what are the main operating processes of the fixed assets management system
DEJA_ Vu3d - cesium feature set 055 - summary description of map service addresses of domestic and foreign manufacturers
Biased sample variance, unbiased sample variance
What is a humble but profitable sideline?
JS 这次真的可以禁止常量修改了!
4 points tell you the advantages of the combination of real-time chat and chat robots
妙才周刊 - 8
亲测可用fiddler手机抓包配置代理后没有网络
Rsync remote synchronization