其他分享
首页 > 其他分享> > X264代码走读五(编码器扩边)

X264代码走读五(编码器扩边)

作者:互联网

一、概述

      实际测试时,会发现输入编码器的是一组分辨率,但是编码出来的是另外一组分辨率。比如使用NV硬编码时,发现输入编码器的是1280*720的分辨率,但是实际输出的是1280*728的分辨率。这里面是为了模式遍历、模式选择,进行了扩边操作。

     因为硬件的内存一般都是64对齐,NV为了硬件解码的方便,按照64倍数对齐的。软件编码会按照标准协议约束进行扩边操作。

    下面走读X264代码,查看扩边的具体实现。

二、实现

1、x264_sps_init确定一个宏块的宽和高

 2、x264_encoder_encode函数在每次编码前会判断是否需要扩边

 3、x264_frame_expand_border_mod16,对分辨率不是16倍数的帧,增加pad位进行扩边 

标签:扩边,编码,编码器,走读,分辨率,x264,X264
来源: https://blog.csdn.net/CrystalShaw/article/details/118697486