ffmpeg常见的数据类型以及部分结构体中的变量含义

本文介绍了FFmpeg中常见的数据类型,如AVFormatContext、AVInputFormat、AVPacket、AVFrame和它们之间的关系。同时,概述了视频文件的编解码流程,包括注册组件、打开输入文件、获取流信息、查找解码器、解码帧数据等步骤。这些内容来源于雷霄骅博主的文章。
摘要由CSDN通过智能技术生成
    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
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值