前几篇说的都还是数据源文件格式解析部分,哪么解析完后呢,读出的数据流保存在哪呢?正是现在讲的AVStream对像,在AVInputFormat的read_header中初始化AVFormatContext对像时,他会解析出该输入文件有哪些类型的数据流,并初始化AVFormatContext的AVStream *streams[MAX_STREAMS];一个AVStream代表一个流对像,如音频流、视频流,nb_streams记录流对像个数。主版本号大于53时MAX_STREAMS为100,小于53为20。AVStream也是个容器,其

void *priv_data;//

成员变量指向具体的Stream类型对像,如AVIStream。其

AVCodecContext *actx;//记录具体的编解容器,这个下面会讲

也在这读头文件信息里初始化。

主要相关的函数有

int av_open_input_file(AVFormatContext **ic_ptr, const char *filename,

AVInputFormat *fmt,

int buf_size,

AVFormatParameters *ap)

{

av_open_input_stream(AVFormatContext **ic_ptr,ByteIOContext *pb, const char *filename,AVInputFormat                                                              *fmt, AVFormatParameters *ap)

{

fmt.read_header()//调用具体的AVInputFormat的read_header,如avi_read_header

{

//根据文件头信息初始化AVStream *streams及AVStream里的

//void *priv_data和AVCodecContext *actx;成员对像

}

}

}

FMpeg分析4:AVStream相关推荐

  1. FMPEG结构体分析:AVStream

    注:写了一系列的结构体的分析的文章,在这里列一个列表: FFMPEG结构体分析:AVFrame FFMPEG结构体分析:AVFormatContext FFMPEG结构体分析:AVCodecConte ...

  2. FFMPEG结构体分析:AVStream

    注:写了一系列的结构体的分析的文章,在这里列一个列表: FFMPEG结构体分析:AVFrame FFMPEG结构体分析:AVFormatContext FFMPEG结构体分析:AVCodecConte ...

  3. FFMPEG结构体分析之AVStream

    AVStream是存储每一个视频/音频流信息的结构体.该结构体定义位于libavformat/avformat.h中,如下: /*** Stream structure.* New fields ca ...

  4. FMpeg分析5:AVCodecContext和AVCodec

    他们之间的关系和URLProtocol.URLContext之间是一样的,AVCodecContext动态的记录一个解码器的上下文信息,而AVCodec是每个解码器都会拥有一个自己的静态对像,并通过a ...

  5. FFMPEG结构体分析:AVCodecContext(转)

    注:写了一系列的结构体的分析的文章,在这里列一个列表: FFMPEG结构体分析:AVFrame FFMPEG结构体分析:AVFormatContext FFMPEG结构体分析:AVCodecConte ...

  6. FFMPEG结构体分析

    文章列表: FFMPEG结构体分析之AVCodecContext FFMPEG结构体分析之AVPacket FFMPEG结构体分析之AVCodec FFMPEG结构体分析之AVStream FFMPE ...

  7. FFMPEG结构体分析:AVPacket

    注:写了一系列的结构体的分析的文章,在这里列一个列表: FFMPEG结构体分析:AVFrame FFMPEG结构体分析:AVFormatContext FFMPEG结构体分析:AVCodecConte ...

  8. FFMPEG结构体分析:AVCodec

    注:写了一系列的结构体的分析的文章,在这里列一个列表: FFMPEG结构体分析:AVFrame FFMPEG结构体分析:AVFormatContext FFMPEG结构体分析:AVCodecConte ...

  9. FFMPEG结构体分析:AVIOContext

    注:写了一系列的结构体的分析的文章,在这里列一个列表: FFMPEG结构体分析:AVFrame FFMPEG结构体分析:AVFormatContext FFMPEG结构体分析:AVCodecConte ...

最新文章

  1. 7 1学会使用 Node 编写简单的前端应用
  2. 剑指offer03.数组中重复的数字
  3. Java读取指定路径下的文件列表
  4. linux命令(8)kill命令
  5. 删除Windows Service
  6. NLP复习资料(1)-绪论、数学基础
  7. nginx配置多个conf文件
  8. 上传图片的表单java代码_java模拟post方式提交表单实现图片上传(示例代码)
  9. 如何防止远程程序与RDS PG连接中断
  10. js实现html页面转为pdf下载
  11. ENVI监督分类错误:分离度为0.00000解决办法
  12. MongoDB Master-Slaver集群部署
  13. iOS8新功能新特性
  14. 用Java写一个简易五子棋游戏
  15. python set(集合) 与 and 、 | 与 or之间的区别
  16. oppo手机注册服务器地址,oppo云登录服务器(oppo云服务登录入口)
  17. [渝粤教育] 南通大学 智能建造风险源与安全控制 参考 资料
  18. 使用蒙特卡罗方法计算圆周率
  19. 2023南宁师范大学计算机考研信息汇总
  20. 氢原子角向概率密度分布matlab,求氢原子角向概率密度.PPT

热门文章

  1. Vue --控制台出现 Download the Vue Devtools extension for a better development experience
  2. Python:整数排序
  3. unity学习笔记-不小心把预制体删掉了
  4. CTFHub技能树web(持续更新)--web前置技能(HTTP协议)--302跳转
  5. 10月24 日 c语言 计算1至10之间奇数之和及偶数之和。
  6. 为什么今天(10月24日)是程序员节?
  7. JavaScript:获取当月1号到当月当日的时间段
  8. Mac OS下安装ffmpeg和ffplay
  9. 【企业风采】云息通信获“中国声谷企业”、“优质小微企业”等多项证书
  10. 项目开发设计流程及方法