背景
XAVC是索尼与2012年10月30日发布的一种视频记录编码配置,但是理解XAVC并不是一种新的编码标准,它完全遵循于H.264/MPEG-4 AVC编码标准,在其基础上限制和规范了编码的配置,使其能够更好的适应于手持摄像设备、广播电视领域。
从CCTV发布的《中央广播电视总台4K超高清电视节目制播技术规范(暂行)》,XAVC-I Intra Class 300/480将广泛应用于广电内部的非编系统和媒资系统。
现有技术FFmpeg和X264中目前未对索尼的XAVC Intra Class做Profile支持,仅对同样用途的松下AVC Intra Class有支持。但是官方标准《XAVC Profiles and Operating Points》公布了XAVC-I Intra Class 300/480的具体编码规范细节,由于其完全遵循H.264/MPEG-4 AVC,因此理论上可以通过限制和调节x264编码器按其规范来实现目标。
技术标准
XAVC-I 4K Intra Class 300/480
采样格式:YUV422
量化深度:10bit
预测模式:Intra(即仅有I帧,不允许跨帧的任何帧间参考)
码率控制:CBG模式下,4K下Class 300固定每一帧编码大小为1,250,304 bytes,50P下因此可以固定码率为500Mb/s。Class 480下固定为1,999,872 bytes, 50P下因此可以固定码率为800Mb/s。
VBR模式下以上数据均为最高允许值。
XAVC-I 4K Intra 标准优点:
- 计算复杂度低,可以广泛应用于实时性要求高但计算能力低的手持录像设备
- 画质效果好,可以快速还原超高质量的画质
- 标准性兼容性强,统一了编码规范
- 方便应用于各种线性媒资系统
x264/mxf兼容性实现
4K XAVC-I Class 300 50p
ffmpeg -guess_layout_max 0 -i "(input)" -r 50 -c:v libx264 -me_method tesa -subq 9 -partitions all -direct-pred auto -psy 0 -b:v 500M -bufsize 500M -level 5.1 -g 0 -keyint_min 0 -x264opts filler -x264opts colorprim=bt709 -x264opts transfer=bt709 -x264opts colormatrix=bt709 -x264opts force-cfr -preset superfast -tune fastdecode -c:a pcm_s24le "(output).mxf"
4K XAVC-I Class 480 50p
ffmpeg -guess_layout_max 0 -i "(input)" -r 50 -c:v libx264 -me_method tesa -subq 9 -partitions all -direct-pred auto -psy 0 -b:v 800M -bufsize 800M -level 5.1 -g 0 -keyint_min 0 -x264opts filler -x264opts colorprim=bt709 -x264opts transfer=bt709 -x264opts colormatrix=bt709 -x264opts force-cfr -preset superfast -tune fastdecode -c:a pcm_s24le "(output).mxf"
以上的兼容性实现仅在平均码率上实现标准,但是要实现固定frame_size还是需要修改x264的源代码。
XAVC 固定帧压缩大小实现
详见第二篇文章
https://blog.csdn.net/smallhujiu/article/details/83378260
参考文献: