我是zoro
分类: LINUX
2012-11-01 13:31:46
err = av_open_input_stream(ic_ptr, pb, filename, fmt, ap);
int av_open_input_stream( AVFormatContext **ic_ptr, // 输出参数: 格式上下文 const char *filename, // 文件名 AVFormatParameters *ap) // 格式参数, 调用时为NULL // 使用缺省的格式参数 // 初始化格式上下文 // 读首部 // 获得数据偏移 // 原始的包缓冲剩余的大小 // 输出参数: 格式上下文 *ic_ptr = ic; } |
ffmpeg分析系列之三(输入输出格式) |
typedef struct AVFormatContext { // 省略部分内容 |
typedef struct { |
AVFormatContext *avformat_alloc_context(void) |
static const AVClass av_format_context_class = { "AVFormatContext", format_to_name, options,LIBAVUTIL_VERSION_INT }; |
static void avformat_get_context_defaults(AVFormatContext *s) |
err = ic->iformat->read_header(ic, ap) |
AVInputFormat h264_demuxer = { |
static int video_read_header(AVFormatContext *s,
st->codec->time_base= ap->time_base; |
AVStream *av_new_stream(AVFormatContext *s, int id) // 格式上下文不能太多流 // 分配一个流 // 分配解码器上下文 av_set_pts_info(st, 33, 1, 90000); // 设置PTS显示时间截信息 |
static const AVClass av_codec_context_class = { "AVCodecContext", context_to_name, options,LIBAVUTIL_VERSION_INT };
|