AVFormatContext 封装格式上下文结构体,也是统领全局的结构体,保存了视频文件封装格式相关信息
iformat:输入视频的AVInputFormat
nb_stream:输入视频的AVStream个数
streams:输入视频的数组
duration:输入视频的时长(以微米为单位)
bit_rate:输入视频的码率
AVInputFormat 每种封装格式对应一种结构体
name:封装格式的名称
long_name:封装格式的长名称
extension:封装格式的扩展名
id:封装格式的ID
一些处理封装格式的接口函数
AVStream 视频中每个视频流对应一个该结构体
int index:标识该视频/音频
AVCodecContext *codec:指向该视频/音频的AVCodecContext
AVRational time_base:时基,根据该值可以将PTS,DTS转换成真正的视频的时间PTS*time_base = 真正的时间
int_64t duration:该视频/音频的长度
AVDictionary *metadata:元数据信息
AVRational avg_frame_rate:帧率
AVPacket attached_pic 附带的图片如歌曲封面的图片
AVCodecContext 编码器上下文结构体,保存了视频音频编解码相关的信息,很多参数是编码时用的,而不是解码时候用
enum AVMediaType codectype 编解码器的类型,音频/视频
struct AVCodec *codec采用的解码器AVCodec (H.264,MPEG2)
int bit_rate: 平均比特率
uint8_t *extradat
ffmpeg常见的数据类型以及部分结构体中的变量含义
最新推荐文章于 2023-12-18 22:28:15 发布