【FFmpeg】 音视频编码详细流程

一:视频编码流程

1.1 纯净的视频编码流程

像素数据->压缩编码数据。

例如编码YUV,就是“YUV->H.264”。

1.2 一般的视频编码流程

将像素流存储为一定封装格式(例如H264等)中。

例如将像素流编程成MP4格式,就是“YUV->H.264码流->MP4”。

二:FFmpeg编码流程

三:FFmpeg编码函数

av_register_all():注册所有组件。

av_guess_format():已经注册的最合适的输出格式

avcodec_find_encoder():查找一个已经注册的音视频编码器

avcode_open2():打开编码码器

avformat_write_header():把流头信息写入到媒体文件中

av_read_frame():读取一帧压缩数据。

avcodec_send_frame():发送一帧像素数据

avcodec_receive_packet():接受一帧编码数据

av_packet_rescale_ts():时间基转换

av_write_frame():写一帧数据

flush_encoder():将最后一帧写入文件

av_write_trailer():把流尾信息写入文件

av_code_close():关闭流

四:FFmpeg编码的数据结构

五:FFmpeg数据结构简介

六:FFmpeg数据结构分析

  • 7
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值