[Mesa-dev] [PATCH] radeon/vcn: determine idr by pic type
ckoenig.leichtzumerken at gmail.com
Tue Dec 5 08:24:41 UTC 2017
Am 04.12.2017 um 21:12 schrieb Zhang, Boyuan:
>> 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
>>>> 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?
> Since Vaapi interface provides the idr flag directly, it's better to have a 1:1 mapping in driver side and use it directly.
I strongly disagree. The VA-API interface for codecs is broken in quite
a number of ways.
We should rather use the specifications as source for internal
structures and interfaces.
> 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.
I think we should fix this as well and use the picture type here as well.
>>>> 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
>>>> 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 ==
>>>> 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;
> mesa-dev mailing list
> mesa-dev at lists.freedesktop.org
More information about the mesa-dev