ffmpeg AVStream解释

AVStream 包含音频和视频的一些参数。

参数

AVCodecContext * codec:  3.2版本后弃用了。这里弃用主要是要将 解封装解码 隔离。编码时候要用到解码时的cedec参数,这里可以用AVCodecParameters使用int avcodec_parameters_to_context(AVCodecContext *codec,const AVCodecParameters *par); 来替换 请参考:ffmpeg AVCodec 和 AVCodecContext 用法

AVRational time_base: AVRational 其实就是是个结构体,表示分数。里面分子 和 分母,这样表示防止浮点数多次运算损失变大。分子/父母 单位是秒。

AVRational {
    int num
    int den;
}

int64_t duration 总时长。 这里用到上面参数 time_base, (num/den*duration得到时长,单位位秒,当然注意 timebase不一定取到值了,需要判断time.base.den 是否为0; 这个时长不一定准,最好还是按 AVFormatContext 为准。

AVRational avg_frame_tate 帧率.

AVCodecParameters *codecpar 这个是新增的,替代AVCodecContext * codec的。

 

AVCodecParameters 常用 参数

enum AVMediaType codec_type:  编码的类型,类型是音频还是视频

enum AVCodecId codec_id: 解码器的id

uint32_t codec_tag: 4个字节表示各个编码器。

int format: 像素格式/音频的采样格式(16 位short类型,还是32 float格式)

int widht; int height:

uint64_t channel_layout;一般取默认值, 声道

int channels:声道数

int sample_rate;样本率(音频)

int frame_size;帧率大小

 

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值