[cpp]?
   view plain
   ?copy 
?
![]()
![]()
- typedef?struct?AVFormatContext?{??
 - ????struct?AVInputFormat?*iformat;??
 - ????void?*priv_data;??
 - ??????
 - ????ByteIOContext?*pb;??
 - ????unsigned?int?nb_streams;??
 - ????AVStream?*streams[MAX_STREAMS];??
 - }?AVFormatContext;??
 - ??
 - ??
 - struct?AVStream?{??
 - ????int?index;????/**<?stream?index?in?AVFormatContext?*/??
 - ????int?id;???????/**<?format-specific?stream?ID?*/??
 - ????AVCodecContext?*codec;?/**<?codec?context?*/??
 - ????AVRational?time_base;??
 - struct?AVCodecParserContext?*parser;??
 - }?AVStream;??
 - struct?AVCodecContext?{??
 - ????uint8_t?*extradata;??
 - int?extradata_size;??
 - ????AVRational?time_base;??
 - int?width,?height;??
 - enum?PixelFormat?pix_fmt;??
 - ????/*?audio?only?*/??
 - int?sample_rate;?///<?samples?per?second??
 - int?channels;????///<?number?of?audio?channels??
 - char?codec_name[32];??
 - enum?CodecType?codec_type;?/*?see?CODEC_TYPE_xxx?*/??
 - enum?CodecID?codec_id;?/*?see?CODEC_ID_xxx?*/??
 - ????unsigned?int?codec_tag;??
 - ????struct?AVCodec?*codec;??
 - void?*priv_data;??
 - }?AVCodecContext;??
 - AVCodec?{??
 - int?(*init)(AVCodecContext?*);??
 - int?(*encode)(AVCodecContext?*,?uint8_t?*buf,?int?buf_size,?void?*data);??
 - int?(*close)(AVCodecContext?*);??
 - int?(*decode)(AVCodecContext?*,153); font-weight:bold; background-color:inherit">void?*outdata,87); font-weight:bold; background-color:inherit">int?*outdata_size,??
 - ??????????????????const?uint8_t?*buf,87); font-weight:bold; background-color:inherit">int?buf_size);??
 - }??
 
http://blog.csdn.net/mydeardingxiaoli/article/details/17168899