[Libva] [PATCH v1 7/9] ENC: add VME pipeline for AVC encoder

Qu, Pengfei pengfei.qu at intel.com
Sun Jan 22 07:27:32 UTC 2017



-----Original Message-----
From: Mark Thompson [mailto:sw at jkqxz.net] 
Sent: Sunday, January 22, 2017 7:48 AM
To: libva at lists.freedesktop.org; Qu, Pengfei <pengfei.qu at intel.com>
Subject: Re: [Libva] [PATCH v1 7/9] ENC: add VME pipeline for AVC encoder

On 13/01/17 09:24, Pengfei Qu wrote:
> VME pipeline:
> add resource and surface allocation and free function add init table 
> for frame mbbrc update add scaling kernel for AVC encoder add BRC init 
> reset kernel for AVC RC logic add BRC frame update-kernel for AVC RC 
> logic add BRC MB level update kernel for AVC RC logic add REF frame QA 
> caculation and MB level const data add MBENC kernel for AVC encoder 
> add ME kernel for AVC encoder add WP/SFD kernel for AVC encoder add 
> kernel init/destroy function for AVC encoder add kernel related 
> parameter check function for AVC add VME pipeline init prepare/run 
> function for AVC encoder
> 
> Reviewed-by: Sean V Kelley<seanvk at posteo.de>
> Signed-off-by: Pengfei Qu <Pengfei.Qu at intel.com>
> ---
>  src/gen9_avc_encoder.c | 5745 
> ++++++++++++++++++++++++++++++++++++++++++++++++
>  1 file changed, 5745 insertions(+)
>  create mode 100755 src/gen9_avc_encoder.c

This patch and the following one are confused about the meaning of generic_enc_codec_state.internal_rate_mode - it appears both as a VA_RC_* value (bitmask, values 0x01 to 0x20) and as an INTEL_BRC_* value (#defined like an enum, values 0-4).

It happens that both VA_RC_CBR and INTEL_BRC_CBR have the same value (2) which probably means that that mode is fine, but I think it may be having weird effects on other modes - particularly VBR because VA_RC_VBR == INTEL_BRC_AVBR (4).
[Pengfei] I will fix it.
- Mark


More information about the Libva mailing list