ffmpeg AVCodecContext结构体主要变量

AVCodecContext是包含变量较多的结构体(解码)
参考结构体理解:http://www.jianshu.com/p/d109e7ef9749

enum AVMediaType codec_type
enum AVMediaType {  
    AVMEDIA_TYPE_UNKNOWN = -1,  ///< Usually treated as AVMEDIA_TYPE_DATA  
    AVMEDIA_TYPE_VIDEO,  
    AVMEDIA_TYPE_AUDIO,  
    AVMEDIA_TYPE_DATA,          ///< Opaque data information usually continuous  
    AVMEDIA_TYPE_SUBTITLE,  
    AVMEDIA_TYPE_ATTACHMENT,    ///< Opaque data information usually sparse  
    AVMEDIA_TYPE_NB  
}; 

:编解码器的类型(视频,音频...)

struct AVCodec  *codec

:采用的解码器AVCodec(H.264,MPEG2...)

int bit_rate

:平均比特率

uint8_t *extradata; int extradata_size

:针对特定编码器包含的附加信息(例如对于H.264解码器来说,存储SPS,PPS等)

AVRational time_base

:根据该参数,可以把PTS转化为实际的时间(单位为秒s)

int width, height

:如果是视频的话,代表宽和高

int refs

:运动估计参考帧的个数(H.264的话会有多帧,MPEG2这类的一般就没有了)

int sample_rate

:采样率(音频)

int channels

:声道数(音频)

enum AVSampleFormat sample_fmt
enum AVSampleFormat {  
    AV_SAMPLE_FMT_NONE = -1,  
    AV_SAMPLE_FMT_U8,          ///< unsigned 8 bits  
    AV_SAMPLE_FMT_S16,         ///< signed 16 bits  
    AV_SAMPLE_FMT_S32,         ///< signed 32 bits  
    AV_SAMPLE_FMT_FLT,         ///< float  
    AV_SAMPLE_FMT_DBL,         ///< double  
  
    AV_SAMPLE_FMT_U8P,         ///< unsigned 8 bits, planar  
    AV_SAMPLE_FMT_S16P,        ///< signed 16 bits, planar  
    AV_SAMPLE_FMT_S32P,        ///< signed 32 bits, planar  
    AV_SAMPLE_FMT_FLTP,        ///< float, planar  
    AV_SAMPLE_FMT_DBLP,        ///< double, planar  
  
    AV_SAMPLE_FMT_NB           ///< Number of sample formats. DO NOT USE if linking dynamically  
};  

:采样格式

int profile

:型(H.264里面就有,其他编码标准应该也有)
在FFMPEG中型有以下几种,可以看出AAC,MPEG2,H.264,VC-1,MPEG4都有型的概念。


#define FF_PROFILE_UNKNOWN -99  
#define FF_PROFILE_RESERVED -100  
  
#define FF_PROFILE_AAC_MAIN 0  
#define FF_PROFILE_AAC_LOW  1  
#define FF_PROFILE_AAC_SSR  2  
#define FF_PROFILE_AAC_LTP  3  
#define FF_PROFILE_AAC_HE   4  
#define FF_PROFILE_AAC_HE_V2 28  
#define FF_PROFILE_AAC_LD   22  
#define FF_PROFILE_AAC_ELD  38  
  
#define FF_PROFILE_DTS         20  
#define FF_PROFILE_DTS_ES      30  
#define FF_PROFILE_DTS_96_24   40  
#define FF_PROFILE_DTS_HD_HRA  50  
#define FF_PROFILE_DTS_HD_MA   60  
  
#define FF_PROFILE_MPEG2_422    0  
#define FF_PROFILE_MPEG2_HIGH   1  
#define FF_PROFILE_MPEG2_SS     2  
#define FF_PROFILE_MPEG2_SNR_SCALABLE  3  
#define FF_PROFILE_MPEG2_MAIN   4  
#define FF_PROFILE_MPEG2_SIMPLE 5  
  
#define FF_PROFILE_H264_CONSTRAINED  (1<<9)  // 8+1; constraint_set1_flag  
#define FF_PROFILE_H264_INTRA        (1<<11) // 8+3; constraint_set3_flag  
  
#define FF_PROFILE_H264_BASELINE             66  
#define FF_PROFILE_H264_CONSTRAINED_BASELINE (66|FF_PROFILE_H264_CONSTRAINED)  
#define FF_PROFILE_H264_MAIN                 77  
#define FF_PROFILE_H264_EXTENDED             88  
#define FF_PROFILE_H264_HIGH                 100  
#define FF_PROFILE_H264_HIGH_10              110  
#define FF_PROFILE_H264_HIGH_10_INTRA        (110|FF_PROFILE_H264_INTRA)  
#define FF_PROFILE_H264_HIGH_422             122  
#define FF_PROFILE_H264_HIGH_422_INTRA       (122|FF_PROFILE_H264_INTRA)  
#define FF_PROFILE_H264_HIGH_444             144  
#define FF_PROFILE_H264_HIGH_444_PREDICTIVE  244  
#define FF_PROFILE_H264_HIGH_444_INTRA       (244|FF_PROFILE_H264_INTRA)  
#define FF_PROFILE_H264_CAVLC_444            44  
  
#define FF_PROFILE_VC1_SIMPLE   0  
#define FF_PROFILE_VC1_MAIN     1  
#define FF_PROFILE_VC1_COMPLEX  2  
#define FF_PROFILE_VC1_ADVANCED 3  
  
#define FF_PROFILE_MPEG4_SIMPLE                     0  
#define FF_PROFILE_MPEG4_SIMPLE_SCALABLE            1  
#define FF_PROFILE_MPEG4_CORE                       2  
#define FF_PROFILE_MPEG4_MAIN                       3  
#define FF_PROFILE_MPEG4_N_BIT                      4  
#define FF_PROFILE_MPEG4_SCALABLE_TEXTURE           5  
#define FF_PROFILE_MPEG4_SIMPLE_FACE_ANIMATION      6  
#define FF_PROFILE_MPEG4_BASIC_ANIMATED_TEXTURE     7  
#define FF_PROFILE_MPEG4_HYBRID                     8  
#define FF_PROFILE_MPEG4_ADVANCED_REAL_TIME         9  
#define FF_PROFILE_MPEG4_CORE_SCALABLE             10  
#define FF_PROFILE_MPEG4_ADVANCED_CODING           11  
#define FF_PROFILE_MPEG4_ADVANCED_CORE             12  
#define FF_PROFILE_MPEG4_ADVANCED_SCALABLE_TEXTURE 13  
#define FF_PROFILE_MPEG4_SIMPLE_STUDIO             14  
#define FF_PROFILE_MPEG4_ADVANCED_SIMPLE           15  
int level

:级(和profile差不太多)

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 160,108评论 4 364
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 67,699评论 1 296
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 109,812评论 0 244
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 44,236评论 0 213
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 52,583评论 3 288
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 40,739评论 1 222
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 31,957评论 2 315
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 30,704评论 0 204
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 34,447评论 1 246
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 30,643评论 2 249
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 32,133评论 1 261
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 28,486评论 3 256
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 33,151评论 3 238
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 26,108评论 0 8
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 26,889评论 0 197
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 35,782评论 2 277
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 35,681评论 2 272

推荐阅读更多精彩内容

  • 教程一:视频截图(Tutorial 01: Making Screencaps) 首先我们需要了解视频文件的一些基...
    90后的思维阅读 4,506评论 0 3
  • [TOC] 音视频&流媒体 是什么促使我要写这一篇音视频入门文章?那是因为和一妹子打赌码率的概念,结果输了;对一个...
    AllenWu阅读 4,630评论 1 25
  • 视频编码格式全面解析 我们在详解各种主流的视频格式之前,先抛开各种视频格式的定义,来讨论这样一件事情:你觉得目前的...
    latthias阅读 20,738评论 2 30
  • 原文地址:http://blog.csdn.net/yipie/article/details/7912291 摘...
    冬的天阅读 6,970评论 1 6
  • 本篇博客在雷神的结构体介绍基础上按自己的喜好整理的 后面根据自己工作中所需有所增改 AVStream 存储每一个视...
    石丘阅读 2,412评论 1 10