使用Xilinx VCU TRD 2020.1 Audio工程测试1080p yuv422 10bit编码,软件报告VCU能力不足,错误信息是“Codec error: Channel creation failed, processing power of the available cores insufficient”。
root@vcu_audio:/run# uname -a
Linux vcu_audio 5.4.0-xilinx-v2020.1 #1 SMP Fri May 29 11:22:04 UTC 2020 aarch64 GNU/Linux
root@vcu_audio:/run# ctrlsw_encoder -cfg vcu-yuv422-error.cfg
Allegro DVT2 - - AVC - HEVC - Encoder Reference Software v1.0.55 - Copyright (C) 2008-2020
Confidential material
Codec error: Channel creation failed, processing power of the available cores insufficient
如果把编码配置文件中的Profile从AVC_HIGH_422改为AVC_HIGH_422_INTRA,编码可以成功。
更新后的编码配置文件:
# Profile : specifies the standard/profile to which the bitstream conforms
# allowed values : AVC_BASELINE, AVC_MAIN, AVC_HIGH, AVC_HIGH10, AVC_HIGH_422,
# HEVC_MAIN, HEVC_MAIN10, HEVC_MAIN_422_10...
# (Some profile might not be supported by your hardware ip, see hardware ip specification)
Profile = AVC_HIGH_422_INTRA
更新后的编码记录:
root@vcu_audio:/run# ctrlsw_encoder -cfg vcu-yuv422-good.cfg
Allegro DVT2 - - AVC - HEVC - Encoder Reference Software v1.0.55 - Copyright (C) 2008-2020
Confidential material
!! iPrefetchLevel2 shall be set to 0 for Intra only profile; it will be adjusted!!
!! Gop.Length shall be set to 0 or 1 for Intra only profile; it will be adjusted!!
!! Gop.uFreqIDR shall be set to 0 or 1 for Intra only profile; it will be adjusted!!
Encoding picture #123 - Flushing...
Achieved bitrate = 24745.3457 Kbps
124 pictures encoded. Average FrameRate = 73.1563 Fps
软件报告VCU能力不足,一般是频率不够,或者创建的编码器/解码器总的分辨率超过4Kp60, 或者Encode buffer不足。于是尝试不使用Encode buffer,把CacheLevel2从ENABLE改为DISABLE。再次测试,可以编码成功。
Profile为AVC_HIGH_422,更新后的编码配置文件:
# Enables/disables the optional Encoder buffer
# Allowed values: ENABLE, DISABLE
# This can be used to reduce the memory bandwidth and it can slightly reduce the video quality
CacheLevel2 = DISABLE
Profile为AVC_HIGH_422,CacheLevel2为DISABLE,的编码记录:
root@vcu_audio:/run# ctrlsw_encoder -cfg vcu-yuv422-error-disable-cache.cfg
Allegro DVT2 - - AVC - HEVC - Encoder Reference Software v1.0.55 - Copyright (C) 2008-2020
Confidential material
Encoding picture #123 - Flushing...
Achieved bitrate = 19449.8398 Kbps
124 pictures encoded. Average FrameRate = 76.5905 Fps