天行健,君子以自强不息!
发布时间:2017-09-18 10:54:00
get_input_packet()位于ffmpeg.c1. 函数概述调用av_read_frame()函数从文件中读取一个packet, 对视频来说,一个packet是一帧;对音频来说,一个packet是多帧;2. 函数调用图3. 代码分析static int get_input_packet(InputFile *f, AVPacket *pkt){ if (f->rate_emu) { &nb.........【阅读全文】
发布时间:2017-09-17 00:32:40
process_input()函数位于ffmpeg.c1. 函数概述它的作用的从文件中读取一个packet,并解码;2. 函数调用结构图3. 代码分析/* * 它是在open_input_file()->add_input_stream()中初始化的, * Add all the streams from the given input file to the global * list of input streams..........【阅读全文】
发布时间:2017-09-14 15:54:23
transcode()函数位于ffmpeg.c1. 函数概述它是ffmpeg的转码的主函数。工作模式是每次读取一个packet,并处理。可见《 FFmpeg情景分析 1. FFmpeg转码框架解析》2. 函数框架图3. 函数伪码解析static int transcode(void){ /* 对每个输出流,计算出正确的编码参数,并写好文件头 */ .........【阅读全文】
发布时间:2017-09-14 14:10:10
ffmpeg_parse_options()函数位于ffmpeg_opt.c1. 函数概述它的功能主要有三个,解析命令行参数;打开输入文件,并解析数据,找到匹配每一个视频,音频,数据流的解码器;打开输出文件,并设置好输出的视频,音频,数据流的编码器;2. 函数调用结构图图 ffmpeg_parse_options()函数调用结构3. 代码分析.........【阅读全文】
发布时间:2017-09-12 12:13:17
av_register_all()函数的定义在 libavformat/allformats.c,它的作用的注册ffmpeg的各种mux和demux。1. 函数主体void av_register_all(void){ static int initialized; if (initialized) return; avcodec_r.........【阅读全文】