[Mesa-dev] [PATCH] radeon/vcn: determine idr by pic type
Zhang, Boyuan
Boyuan.Zhang at amd.com
Mon Dec 4 20:12:07 UTC 2017
> Am 30.11.2017 um 22:18 schrieb Leo Liu:
>>
>>
>> On 11/30/2017 04:12 PM, boyuan.zhang at amd.com wrote:
>>> From: Boyuan Zhang <boyuan.zhang at amd.com>
>>>
>>> Vaapi encode interface provides idr frame flags, where omx interface
>>> doesn't.
>>> Therefore, change to use picture type to determine idr frame, which
>>> will work for both interfaces.
>>>
>>> Signed-off-by: Boyuan Zhang <boyuan.zhang at amd.com>
>> Reviewed-by: Leo Liu <leo.liu at amd.com>
>
> Reviewed-by: Christian König <christian.koenig at amd.com>
>
> As a consequence could you remove the is_idr flag from the picture structure or is that used somewhere else as well?
>
> Regards,
> Christian.
Since Vaapi interface provides the idr flag directly, it's better to have a 1:1 mapping in driver side and use it directly. And actually, we are using this "is_idr" flag in some functions in st/va now. So I think it's better to keep it for now.
Regards,
Boyuan
>
>>
>>> ---
>>> src/gallium/drivers/radeon/radeon_vcn_enc.c | 2 +-
>>> 1 file changed, 1 insertion(+), 1 deletion(-)
>>>
>>> diff --git a/src/gallium/drivers/radeon/radeon_vcn_enc.c
>>> b/src/gallium/drivers/radeon/radeon_vcn_enc.c
>>> index 9806a69..5fc9fc7 100644
>>> --- a/src/gallium/drivers/radeon/radeon_vcn_enc.c
>>> +++ b/src/gallium/drivers/radeon/radeon_vcn_enc.c
>>> @@ -47,7 +47,7 @@ static void radeon_vcn_enc_get_param(struct
>>> radeon_encoder *enc, struct pipe_h26
>>> enc->enc_pic.ref_idx_l0 = pic->ref_idx_l0;
>>> enc->enc_pic.ref_idx_l1 = pic->ref_idx_l1;
>>> enc->enc_pic.not_referenced = pic->not_referenced;
>>> - enc->enc_pic.is_idr = pic->is_idr;
>>> + enc->enc_pic.is_idr = (pic->picture_type ==
>>> PIPE_H264_ENC_PICTURE_TYPE_IDR);
>>> enc->enc_pic.crop_left = 0;
>>> enc->enc_pic.crop_right = (align(enc->base.width, 16) -
>>> enc->base.width) / 2;
>>> enc->enc_pic.crop_top = 0;
>>
More information about the mesa-dev
mailing list