首页 > 代码库 > AVPicture结构体分析
AVPicture结构体分析
/** * 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结构体分析
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。