ffmpeg AVFormatContext结构体常用参数解释

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/zhangpengzp/article/details/88927269

AVFormatContext结构体

AVIOContext  *pb;  自定义读写格式时,从内存中度,就要看这个结构体,会用到他。

char filename[1024]; 视频的url,方便断开重连

unsigned int nb_streams

AVStream **stream;音频或者视频的信息,如宽高、帧率。时长。里面时长,但时间基数不一样,且音频和视频的时间基数也不一定相同。

int64_t duration;总长度,duration* AV_TIME_BASE 表示多长时间(AV_TIME_BASE 表示一秒钟有多少个单位)。不一定能获取到。因为有时候不包含文件头,因此这个时候需要解码一些视频流 才可以得到,然后存入AVFormatContext, 然后来读取。如下

  re = avformat_find_stream_info(ic, 0);
  LOGW("duration = %lld nb_streang = %d!",ic->duration, ic->nb_streams);

int64_t bit_rate 表示一秒钟bit的大小

void avformat_close_input(AVFormatContext **s): 关闭输入流

猜你喜欢

转载自blog.csdn.net/zhangpengzp/article/details/88927269