码迷,mamicode.com
首页 > 其他好文 > 详细

AVPicture结构体分析

时间:2014-12-11 16:10:36      阅读:175      评论:0      收藏:0      [点我收藏+]

标签:ar   sp   on   文件   bs   ef   as   line   size   

/**
 * Picture data structure.
 *
 * Up to four components can be stored into it, the last component is
 * alpha.
 */
typedef struct AVPicture {
    uint8_t *data[AV_NUM_DATA_POINTERS];    ///< pointers to the image data planes
    int linesize[AV_NUM_DATA_POINTERS];     ///< number of bytes per line
} AVPicture;

avcodec.h头文件中的定义。其中的AV_NUM_DATA_POINTERS在AVFrame的结构体定义中定义如下:

typedef struct AVFrame {
#define AV_NUM_DATA_POINTERS 8
……

那么AVPicture结构体中保存两个东西:

1 data指针数组(8个元素的数组)(数组的每一个元素都是一个uint8_t类型的指针);

2 linesize数组(8个元素的数组),(每一行的字节数);

 分析这个结构体最重要的一点就是:AVFrame和AVPicture的关系,AVPicture结构体的成员就是AVFrame结构体的强两个成员,这样在一些函数中就可以直接通过AVPicture结构体指针去访问AVFrame结构体变量。可以进行类型转换。

AVPicture结构体分析

标签:ar   sp   on   文件   bs   ef   as   line   size   

原文地址:http://my.oschina.net/u/1024767/blog/355020

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!