FFmpeg 视频编码流程

作者: 北溟微个尘 | 来源:发表于2018-02-25 10:46 被阅读30次
    视频编码流程图.jpg

    1.av_register_all() : 注册组件, 包括FFmpeg所有编解码器
    2.avformat_alloc_context(): 初始化封装格式上下文
    3.avio_open(): 打开输入文件,关联封装格式上下文到输出文件
    4.avformat_new_stream(): 创建输出码流
    5.avcodec_find_encoder():查找视频编码器
    6.avcodec_open2(): 打开解码器
    7.avformat_write_header(): 写入文件头信息
    8.av_image_fill_arrays():存储一帧像素数据缓冲区
    9.读取帧av_read_frame() 返回值<0 则结束
    10.av_frame->data: 读取缓冲数据转成AVFrame类
    11.avcodec_send_frame(): 发送一帧视频像素数据(yuv格式)
    12.avcodec_receive_packet(): 接收一帧视频数据,编码为视频压缩格式(如H.264格式)
    13.av_write_frame():编码码成功写入文件,再循环读取下一帧
    14.flush_encoder():写入剩余的帧数据
    15.av_write_trailer():写入文件尾部信息

    相关文章

      网友评论

        本文标题:FFmpeg 视频编码流程

        本文链接:https://www.haomeiwen.com/subject/zgulxftx.html