FFmpeg音视频专辑视频直播

十五:AVCodecContext

2016-07-30  本文已影响127人  张芳涛

AVCodecContext

这是一个描述编解码器上下文的数据结构,包含了众多编解码器需要的参数信息

如果是单纯使用libavcodec,这部分信息需要调用者进行初始化;如果是使用整个FFMPEG库,这部分信息在调用 av_open_input_file和av_find_stream_info的过程中根据文件的头信息及媒体流内的头部信息完成初始化。其中几个主要 域的释义如下:

extradata/extradata_size: 这个buffer中存放了解码器可能会用到的额外信息,在av_read_frame中填充。一般来说,首先,某种具体格式的demuxer在读取格式头 信息的时候会填充extradata,其次,如果demuxer没有做这个事情,比如可能在头部压根儿就没有相关的编解码信息,则相应的parser会继 续从已经解复用出来的媒体流中继续寻找。在没有找到任何额外信息的情况下,这个buffer指针为空。

time_base:

width/height:视频的宽和高。

sample_rate/channels:音频的采样率和信道数目。

sample_fmt: 音频的原始采样格式。

codec_name/codec_type/codec_id/codec_tag:编解码器的信息。

上一篇下一篇

猜你喜欢

热点阅读