音视频开发34 FFmpeg 编码- 将h264和acc文件打包成flv文件

FFmpeg合成流程

示例本程序会⽣成⼀个合成的⾳频和视频流,并将它们编码和封装输出到输出⽂件,输出格式是根据⽂件
扩展名⾃动猜测的。
示例的流程图如下所示。

ffmpeg 的 Mux 主要分为 三步操作:

avformat_write_header : 写⽂件头
av_write_frame/av_interleaved_write_frame: 写packet
av_write_trailer : 写⽂件尾

核心函数

1.avformat_alloc_output_context2

int avformat_alloc_output_context2(AVFormatContext **ctx, const AVOutputFormat *oformat,
                                   const char *format_name, const char *filename);

函数参数的介绍:
ctx:需要创建的context,返回NULL表示失败。
oformat:指定对应的AVOutputFormat,如果不指定,可以通过后面format_name、filename两个参数进行指定,让ffmpeg自己推断。
format_name: 指定音视频的格式,比如“flv”,“mpeg”等,如果设置为NULL,则由filename进行指定,让ffmpeg自己推断。
filename: 指定视频文件的路径,如果oformat、format_name为NULL,则ffmpeg内部根据filename后缀名选择合适的复用器,⽐如xxx.flv则使用flv复用器。
  • 3
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值