Re: [FFmpeg-devel] [PATCH v3 10/11] lavc/vaapi_hevc: Set correct rps type for scc

2023-01-10 Thread Wang, Fei W
> -Original Message-
> From: Wang, Fei W 
> Sent: Tuesday, January 3, 2023 9:00 PM
> To: ffmpeg-devel@ffmpeg.org
> Cc: Linjie Fu ; Linjie Fu ; 
> Wang,
> Fei W 
> Subject: [FFmpeg-devel][PATCH v3 10/11] lavc/vaapi_hevc: Set correct rps type
> for scc
> 
> From: Linjie Fu 
> 
> According to 8.1.3 and 8.3.2.
> 
> Signed-off-by: Linjie Fu 
> Signed-off-by: Fei Wang 
> ---
>  libavcodec/vaapi_hevc.c | 4 
>  1 file changed, 4 insertions(+)
> 
> diff --git a/libavcodec/vaapi_hevc.c b/libavcodec/vaapi_hevc.c index
> c10617a81a..29c75e88f0 100644
> --- a/libavcodec/vaapi_hevc.c
> +++ b/libavcodec/vaapi_hevc.c
> @@ -71,6 +71,7 @@ static void fill_vaapi_pic(VAPictureHEVC *va_pic, const
> HEVCFrame *pic, int rps_  static int find_frame_rps_type(const HEVCContext *h,
> const HEVCFrame *pic)  {
>  VASurfaceID pic_surf = ff_vaapi_get_surface_id(pic->frame);
> +const HEVCFrame *current_picture = h->ref;
>  int i;
> 
>  for (i = 0; i < h->rps[ST_CURR_BEF].nb_refs; i++) { @@ -88,6 +89,9 @@ 
> static
> int find_frame_rps_type(const HEVCContext *h, const HEVCFrame *pic)
>  return VA_PICTURE_HEVC_RPS_LT_CURR;
>  }
> 
> +if (h->ps.pps->pps_curr_pic_ref_enabled_flag && current_picture->poc ==
> pic->poc)
> +return VA_PICTURE_HEVC_LONG_TERM_REFERENCE;
> +

FATE test report fail in patchwork:
https://patchwork.ffmpeg.org/project/ffmpeg/patch/20230103125952.2707824-10-fei.w.w...@intel.com/
make: *** [fate-hevc-conformance-PS_A_VIDYO_3] Error 1
cpu_flags(raw) = 0x000813DB
cpu_flags_str(raw) = mmx mmxext sse sse2 sse3 ssse3 sse4.1 sse4.2 cmov aesni
cpu_flags(effective) = 0x000813DB
cpu_flags_str(effective) = mmx mmxext sse sse2 sse3 ssse3 sse4.1 sse4.2 cmov 
aesni
threads = 1 (cpu_count = 5)
make: Target 'fate' not remade because of errors.

Checked locally, no this problem. The patch only change vaapi hevc decoder, 
should not cause the FATE fail(Only native decoder will be used in FATE?). 
Assume wrong report in patchwork. 

Thanks
Fei

>  return 0;
>  }
> 
> --
> 2.25.1

___
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
https://ffmpeg.org/mailman/listinfo/ffmpeg-devel

To unsubscribe, visit link above, or email
ffmpeg-devel-requ...@ffmpeg.org with subject "unsubscribe".


[FFmpeg-devel] [PATCH v3 10/11] lavc/vaapi_hevc: Set correct rps type for scc

2023-01-03 Thread Fei Wang
From: Linjie Fu 

According to 8.1.3 and 8.3.2.

Signed-off-by: Linjie Fu 
Signed-off-by: Fei Wang 
---
 libavcodec/vaapi_hevc.c | 4 
 1 file changed, 4 insertions(+)

diff --git a/libavcodec/vaapi_hevc.c b/libavcodec/vaapi_hevc.c
index c10617a81a..29c75e88f0 100644
--- a/libavcodec/vaapi_hevc.c
+++ b/libavcodec/vaapi_hevc.c
@@ -71,6 +71,7 @@ static void fill_vaapi_pic(VAPictureHEVC *va_pic, const 
HEVCFrame *pic, int rps_
 static int find_frame_rps_type(const HEVCContext *h, const HEVCFrame *pic)
 {
 VASurfaceID pic_surf = ff_vaapi_get_surface_id(pic->frame);
+const HEVCFrame *current_picture = h->ref;
 int i;
 
 for (i = 0; i < h->rps[ST_CURR_BEF].nb_refs; i++) {
@@ -88,6 +89,9 @@ static int find_frame_rps_type(const HEVCContext *h, const 
HEVCFrame *pic)
 return VA_PICTURE_HEVC_RPS_LT_CURR;
 }
 
+if (h->ps.pps->pps_curr_pic_ref_enabled_flag && current_picture->poc == 
pic->poc)
+return VA_PICTURE_HEVC_LONG_TERM_REFERENCE;
+
 return 0;
 }
 
-- 
2.25.1

___
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
https://ffmpeg.org/mailman/listinfo/ffmpeg-devel

To unsubscribe, visit link above, or email
ffmpeg-devel-requ...@ffmpeg.org with subject "unsubscribe".