AVFormatContext

来源:互联网 发布:java程序培训学校 编辑:程序博客网 时间:2024/06/07 21:21

这是个结构体,描述了一个媒体文件或媒体流的结构和基本信息;

这是ffmpeg中最为基本的一个结构,是其他所有结构的根,是一个多媒体文件或流的根本抽象;

它是FFMPEG解封装(flv,mp4,rmvb,avi)功能的结构体;

下面看几个主要变量的作用(在这里考虑解码的情况)

             AVIOContext *pb:输入数据的缓存

             unsigned int nb_streams:视音频流的个数

             AVStream **streams:视音频流

                      char filename[1024]:文件名

         int64_t duration:时长(单位:微秒us,转换为秒需要除以1000000)

         int bit_rate:比特率(单位bps,转换为kbps需要除以1000)

         AVDictionary *metadata:元数据

          视频的原数据(metadata)信息可以通过AVDictionary获取。元数据存储在AVDictionaryEntry结构体中,如下所示

       每一条元数据分为key和value两个属性。

typedef struct AVDictionaryEntry

 {

           char *key; 

           char*value

}AVDictionaryEntry;
         在ffmpeg中通过av_dict_get()函数获得视频的原数据

0 0
原创粉丝点击