ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

ffmepg AVFrame用法

2019-04-01 10:00:51  阅读:393  来源: 互联网

标签:src int frame ffmepg 用法 av AVFrame 音频


空间分配类似于AVPacket,采用的引用计数。

常用参数

uint8_t *data[AV_NUM_DSTS_POINTERS]   数据。

int linesize[AV_NUM_DSTS_POINTERS]  视频:一行数据大小,音频:一个通道的数据(防止视频 字节对齐

int width height; 视频的宽高

int nb_samples 音频单通道的样本数量 (16 short 或者32 float 一帧的音频大小)

int64_t pts 收到的pts

int64_t pkt_dts 最终显示的pts

int samle_rate 样本率

uint64_t channel_layout 音频通道类型

int channel 音频通道数量

int format; 视频就是像素格式AVPixelFormat,音频样本格式AVSampleFormat

常用函数

AVFrame *frame av_frame_alloc();

初始化,并分配对象空间。

void av_frame_free(AVFrame **frame)

释放avframe的空间,同样会对对象里面申请的空间的引用计数减少1

int av_frame_ref(AVFrame *dst, const AVFrame *src)

类似于复制,src复制到dst,不过只是将src里面数据的引用加1,然后将引用添加到dst中

void av_frame_unref(AVFrame* frame)

将frame引用计数减一。

AVFrame *av_frame_clone(const AVFrame *src);

作用同av_frame_ref类似,增加src的引用计数,但同时会初始化av_frame_clone 对象

 

标签:src,int,frame,ffmepg,用法,av,AVFrame,音频
来源: https://blog.csdn.net/zhangpengzp/article/details/88941388

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有