intel/libva

YUV444 60fps hevc encode on Intel Alder Lake N (ADL-N).

akhilxavi opened this issue · 1 comments

I am validating YUV444 8-bit 60 fps hevc encoding support on Intel x7000E based ADL-N, dev boards. I am using ubuntu 22.04 running a 5.15.0-1026-intel-iotg kernel and latest Vaapi drivers, but the yuv444 encode seems to be failing. Attaching the vainfo and ffmpeg output.

akhil-ipv@akhil-ipv:/iPV/test-videos$ uname -r
5.15.0-1026-intel-iotg
akhil-ipv@akhil-ipv:
/iPV/test-videos$

akhil-ipv@akhil-ipv:/iPV/test-videos$
akhil-ipv@akhil-ipv:
/iPV/test-videos$ vainfo
Trying display: drm
libva info: VA-API version 1.21.0
libva info: Trying to open /usr/lib/x86_64-linux-gnu/dri/iHD_drv_video.so
libva info: Found init function __vaDriverInit_1_21
libva info: va_openDriver() returns 0
vainfo: VA-API version: 1.21 (libva 2.21.0.pre1)
vainfo: Driver version: Intel iHD driver for Intel(R) Gen Graphics - 23.4.3 (e5e12e0de)
vainfo: Supported profile and entrypoints
VAProfileNone : VAEntrypointVideoProc
VAProfileNone : VAEntrypointStats
VAProfileMPEG2Simple : VAEntrypointVLD
VAProfileMPEG2Simple : VAEntrypointEncSlice
VAProfileMPEG2Main : VAEntrypointVLD
VAProfileMPEG2Main : VAEntrypointEncSlice
VAProfileH264Main : VAEntrypointVLD
VAProfileH264Main : VAEntrypointEncSlice
VAProfileH264Main : VAEntrypointFEI
VAProfileH264Main : VAEntrypointEncSliceLP
VAProfileH264High : VAEntrypointVLD
VAProfileH264High : VAEntrypointEncSlice
VAProfileH264High : VAEntrypointFEI
VAProfileH264High : VAEntrypointEncSliceLP
VAProfileVC1Simple : VAEntrypointVLD
VAProfileVC1Main : VAEntrypointVLD
VAProfileVC1Advanced : VAEntrypointVLD
VAProfileJPEGBaseline : VAEntrypointVLD
VAProfileJPEGBaseline : VAEntrypointEncPicture
VAProfileH264ConstrainedBaseline: VAEntrypointVLD
VAProfileH264ConstrainedBaseline: VAEntrypointEncSlice
VAProfileH264ConstrainedBaseline: VAEntrypointFEI
VAProfileH264ConstrainedBaseline: VAEntrypointEncSliceLP
VAProfileVP8Version0_3 : VAEntrypointVLD
VAProfileHEVCMain : VAEntrypointVLD
VAProfileHEVCMain : VAEntrypointEncSlice
VAProfileHEVCMain : VAEntrypointFEI
VAProfileHEVCMain : VAEntrypointEncSliceLP
VAProfileHEVCMain10 : VAEntrypointVLD
VAProfileHEVCMain10 : VAEntrypointEncSlice
VAProfileHEVCMain10 : VAEntrypointEncSliceLP
VAProfileVP9Profile0 : VAEntrypointVLD
VAProfileVP9Profile0 : VAEntrypointEncSliceLP
VAProfileVP9Profile1 : VAEntrypointVLD
VAProfileVP9Profile1 : VAEntrypointEncSliceLP
VAProfileVP9Profile2 : VAEntrypointVLD
VAProfileVP9Profile2 : VAEntrypointEncSliceLP
VAProfileVP9Profile3 : VAEntrypointVLD
VAProfileVP9Profile3 : VAEntrypointEncSliceLP
VAProfileHEVCMain12 : VAEntrypointVLD
VAProfileHEVCMain12 : VAEntrypointEncSlice
VAProfileHEVCMain422_10 : VAEntrypointVLD
VAProfileHEVCMain422_10 : VAEntrypointEncSlice
VAProfileHEVCMain422_12 : VAEntrypointVLD
VAProfileHEVCMain422_12 : VAEntrypointEncSlice
VAProfileHEVCMain444 : VAEntrypointVLD
VAProfileHEVCMain444 : VAEntrypointEncSliceLP
VAProfileHEVCMain444_10 : VAEntrypointVLD
VAProfileHEVCMain444_10 : VAEntrypointEncSliceLP
VAProfileHEVCMain444_12 : VAEntrypointVLD
VAProfileHEVCSccMain : VAEntrypointVLD
VAProfileHEVCSccMain : VAEntrypointEncSliceLP
VAProfileHEVCSccMain10 : VAEntrypointVLD
VAProfileHEVCSccMain10 : VAEntrypointEncSliceLP
VAProfileHEVCSccMain444 : VAEntrypointVLD
VAProfileHEVCSccMain444 : VAEntrypointEncSliceLP
VAProfileAV1Profile0 : VAEntrypointVLD
VAProfileHEVCSccMain444_10 : VAEntrypointVLD
VAProfileHEVCSccMain444_10 : VAEntrypointEncSliceLP
akhil-ipv@akhil-ipv:~/iPV/test-videos$

We are using the ffmpeg with intel specific patches applied with vaapi enabled. The error logs are as below.

akhil-ipv@akhil-ipv:/iPV/test-videos$ sudo ffmpeg -vaapi_device /dev/dri/renderD128 -hwaccel_output_format vaapi -f rawvideo -pix_fmt nv24 -s:v 3840x2160 -r 60 -stream_loop -1 -i Samsung-cut-yuv444p60.yuv -vf 'format=nv24|vaapi,hwupload,setsar=0:1,setdar=16:9' -c:v hevc_vaapi -rc_mode CQP -threads 8 -q 5 -qp 40 -idr_interval 300 -compression_level 25 -level:v 4 -g 120 -tier main -low_power true -bf 0 -b:v 50M -v debug -f null -
ffmpeg version N-112968-ge48b8a4c53 Copyright (c) 2000-2023 the FFmpeg developers
built with gcc 11 (Ubuntu 11.4.0-1ubuntu1
22.04)
configuration: --enable-vaapi
libavutil 58. 32.100 / 58. 32.100
libavcodec 60. 35.100 / 60. 35.100
libavformat 60. 18.100 / 60. 18.100
libavdevice 60. 4.100 / 60. 4.100
libavfilter 9. 14.100 / 9. 14.100
libswscale 7. 6.100 / 7. 6.100
libswresample 4. 13.100 / 4. 13.100
Splitting the commandline.
Reading option '-vaapi_device' ... matched as option 'vaapi_device' (set VAAPI hardware device (DirectX adapter index, DRM path or X11 display name)) with argument '/dev/dri/renderD128'.
Reading option '-hwaccel_output_format' ... matched as option 'hwaccel_output_format' (select output format used with HW accelerated decoding) with argument 'vaapi'.
Reading option '-f' ... matched as option 'f' (force format) with argument 'rawvideo'.
Reading option '-pix_fmt' ... matched as option 'pix_fmt' (set pixel format) with argument 'nv24'.
Reading option '-s:v' ... matched as option 's' (set frame size (WxH or abbreviation)) with argument '3840x2160'.
Reading option '-r' ... matched as option 'r' (set frame rate (Hz value, fraction or abbreviation)) with argument '60'.
Reading option '-stream_loop' ... matched as option 'stream_loop' (set number of times input stream shall be looped) with argument '-1'.
Reading option '-i' ... matched as output url with argument 'Samsung-cut-yuv444p60.yuv'.
Reading option '-vf' ... matched as option 'vf' (set video filters) with argument 'format=nv24|vaapi,hwupload,setsar=0:1,setdar=16:9'.
Reading option '-c:v' ... matched as option 'c' (codec name) with argument 'hevc_vaapi'.
Reading option '-rc_mode' ... matched as AVOption 'rc_mode' with argument 'CQP'.
Reading option '-threads' ... matched as AVOption 'threads' with argument '8'.
Reading option '-q' ... matched as option 'q' (use fixed quality scale (VBR)) with argument '5'.
Reading option '-qp' ... matched as AVOption 'qp' with argument '40'.
Reading option '-idr_interval' ... matched as AVOption 'idr_interval' with argument '300'.
Reading option '-compression_level' ... matched as AVOption 'compression_level' with argument '25'.
Reading option '-level:v' ... matched as AVOption 'level:v' with argument '4'.
Reading option '-g' ... matched as AVOption 'g' with argument '120'.
Reading option '-tier' ... matched as AVOption 'tier' with argument 'main'.
Reading option '-low_power' ... matched as AVOption 'low_power' with argument 'true'.
Reading option '-bf' ... matched as AVOption 'bf' with argument '0'.
Reading option '-b:v' ... matched as option 'b' (video bitrate (please use -b:v)) with argument '50M'.
Reading option '-v' ... matched as option 'v' (set logging level) with argument 'debug'.
Reading option '-f' ... matched as option 'f' (force format) with argument 'null'.
Reading option '-' ... matched as output url.
Finished splitting the commandline.
Parsing a group of options: global .
Applying option vaapi_device (set VAAPI hardware device (DirectX adapter index, DRM path or X11 display name)) with argument /dev/dri/renderD128.
[AVHWDeviceContext @ 0x55cd14e20dc0] libva: VA-API version 1.21.0
[AVHWDeviceContext @ 0x55cd14e20dc0] libva: Trying to open /usr/lib/x86_64-linux-gnu/dri/iHD_drv_video.so
[AVHWDeviceContext @ 0x55cd14e20dc0] libva: Found init function __vaDriverInit_1_21
[AVHWDeviceContext @ 0x55cd14e20dc0] libva: va_openDriver() returns 0
[AVHWDeviceContext @ 0x55cd14e20dc0] Initialised VAAPI connection: version 1.21
[AVHWDeviceContext @ 0x55cd14e20dc0] Format 0x41524742 -> bgra.
[AVHWDeviceContext @ 0x55cd14e20dc0] Format 0x42475241 -> argb.
[AVHWDeviceContext @ 0x55cd14e20dc0] Format 0x41424752 -> rgba.
[AVHWDeviceContext @ 0x55cd14e20dc0] Format 0x52474241 -> abgr.
[AVHWDeviceContext @ 0x55cd14e20dc0] Format 0x58524742 -> bgr0.
[AVHWDeviceContext @ 0x55cd14e20dc0] Format 0x42475258 -> 0rgb.
[AVHWDeviceContext @ 0x55cd14e20dc0] Format 0x58424752 -> rgb0.
[AVHWDeviceContext @ 0x55cd14e20dc0] Format 0x52474258 -> 0bgr.
[AVHWDeviceContext @ 0x55cd14e20dc0] Format 0x30335241 -> unknown.
[AVHWDeviceContext @ 0x55cd14e20dc0] Format 0x30334241 -> unknown.
[AVHWDeviceContext @ 0x55cd14e20dc0] Format 0x30335258 -> x2rgb10le.
[AVHWDeviceContext @ 0x55cd14e20dc0] Format 0x30334258 -> unknown.
[AVHWDeviceContext @ 0x55cd14e20dc0] Format 0x36314752 -> unknown.
[AVHWDeviceContext @ 0x55cd14e20dc0] Format 0x56555941 -> unknown.
[AVHWDeviceContext @ 0x55cd14e20dc0] Format 0x56555958 -> vuyx.
[AVHWDeviceContext @ 0x55cd14e20dc0] Format 0x30303859 -> gray.
[AVHWDeviceContext @ 0x55cd14e20dc0] Format 0x3231564e -> nv12.
[AVHWDeviceContext @ 0x55cd14e20dc0] Format 0x3132564e -> unknown.
[AVHWDeviceContext @ 0x55cd14e20dc0] Format 0x32595559 -> yuyv422.
[AVHWDeviceContext @ 0x55cd14e20dc0] Format 0x59565955 -> uyvy422.
[AVHWDeviceContext @ 0x55cd14e20dc0] Format 0x32315659 -> yuv420p.
[AVHWDeviceContext @ 0x55cd14e20dc0] Format 0x30323449 -> yuv420p.
[AVHWDeviceContext @ 0x55cd14e20dc0] Format 0x50313134 -> yuv411p.
[AVHWDeviceContext @ 0x55cd14e20dc0] Format 0x48323234 -> yuv422p.
[AVHWDeviceContext @ 0x55cd14e20dc0] Format 0x56323234 -> yuv440p.
[AVHWDeviceContext @ 0x55cd14e20dc0] Format 0x50343434 -> yuv444p.
[AVHWDeviceContext @ 0x55cd14e20dc0] Format 0x33434d49 -> unknown.
[AVHWDeviceContext @ 0x55cd14e20dc0] Format 0x30313050 -> p010le.
[AVHWDeviceContext @ 0x55cd14e20dc0] Format 0x32313050 -> p012le.
[AVHWDeviceContext @ 0x55cd14e20dc0] Format 0x36313050 -> unknown.
[AVHWDeviceContext @ 0x55cd14e20dc0] Format 0x30313259 -> y210le.
[AVHWDeviceContext @ 0x55cd14e20dc0] Format 0x32313259 -> y212le.
[AVHWDeviceContext @ 0x55cd14e20dc0] Format 0x36313259 -> unknown.
[AVHWDeviceContext @ 0x55cd14e20dc0] Format 0x30313459 -> xv30le.
[AVHWDeviceContext @ 0x55cd14e20dc0] Format 0x32313459 -> xv36le.
[AVHWDeviceContext @ 0x55cd14e20dc0] Format 0x36313459 -> unknown.
[AVHWDeviceContext @ 0x55cd14e20dc0] Format 0x50424752 -> unknown.
[AVHWDeviceContext @ 0x55cd14e20dc0] Format 0x50524742 -> unknown.
[AVHWDeviceContext @ 0x55cd14e20dc0] VAAPI driver: Intel iHD driver for Intel(R) Gen Graphics - 23.4.3 (e5e12e0de).
[AVHWDeviceContext @ 0x55cd14e20dc0] Driver not found in known nonstandard list, using standard behaviour.
Applying option v (set logging level) with argument debug.
Successfully parsed a group of options.
Parsing a group of options: input url Samsung-cut-yuv444p60.yuv.
Applying option hwaccel_output_format (select output format used with HW accelerated decoding) with argument vaapi.
Applying option f (force format) with argument rawvideo.
Applying option pix_fmt (set pixel format) with argument nv24.
Applying option s:v (set frame size (WxH or abbreviation)) with argument 3840x2160.
Applying option r (set frame rate (Hz value, fraction or abbreviation)) with argument 60.
Applying option stream_loop (set number of times input stream shall be looped) with argument -1.
Successfully parsed a group of options.
Opening an input file: Samsung-cut-yuv444p60.yuv.
[rawvideo @ 0x55cd14e66a40] Opening 'Samsung-cut-yuv444p60.yuv' for reading
[file @ 0x55cd14e63980] Setting default whitelist 'file,crypto,data'
[rawvideo @ 0x55cd14e66a40] Before avformat_find_stream_info() pos: 0 bytes read:32768 seeks:0 nb_streams:1
[rawvideo @ 0x55cd14e66a40] All info found
[rawvideo @ 0x55cd14e66a40] Estimating duration from bitrate, this may be inaccurate
[rawvideo @ 0x55cd14e66a40] After avformat_find_stream_info() pos: 24883200 bytes read:24883200 seeks:0 frames:1
Input #0, rawvideo, from 'Samsung-cut-yuv444p60.yuv':
Duration: 00:00:00.58, start: 0.000000, bitrate: 11943942 kb/s
Stream #0:0, 1, 1/60: Video: rawvideo, 1 reference frame, nv24, 3840x2160, 0/1, 11943936 kb/s, 60 tbr, 60 tbn
Successfully opened the file.
Parsing a group of options: output url -.
Applying option vf (set video filters) with argument format=nv24|vaapi,hwupload,setsar=0:1,setdar=16:9.
Applying option c:v (codec name) with argument hevc_vaapi.
Applying option q (use fixed quality scale (VBR)) with argument 5.
Applying option b:v (video bitrate (please use -b:v)) with argument 50M.
Applying option f (force format) with argument null.
Successfully parsed a group of options.
Opening an output file: -.
[out#0/null @ 0x55cd14f0e840] No explicit maps, mapping streams automatically...
[vost#0:0/hevc_vaapi @ 0x55cd14f10400] Created video stream from input stream 0:0
[AVFilterGraph @ 0x55cd14f12700] Setting 'pix_fmts' to value 'nv24|vaapi'
[AVFilterGraph @ 0x55cd14f12700] Setting 'sar' to value '0'
[AVFilterGraph @ 0x55cd14f12700] Setting 'max' to value '1'
[AVFilterGraph @ 0x55cd14f12700] Setting 'dar' to value '16'
[AVFilterGraph @ 0x55cd14f12700] Setting 'max' to value '9'
Successfully opened the file.
Stream mapping:
Stream #0:0 -> #0:0 (rawvideo (native) -> hevc (hevc_vaapi))
Press [q] to stop, [?] for help
[rawvideo @ 0x55cd14f0f180] PACKET SIZE: 24883200, STRIDE: 11520
[AVFilterGraph @ 0x55cd14f17f80] Setting 'pix_fmts' to value 'nv24|vaapi'
[AVFilterGraph @ 0x55cd14f17f80] Setting 'sar' to value '0'
[AVFilterGraph @ 0x55cd14f17f80] Setting 'max' to value '1'
[AVFilterGraph @ 0x55cd14f17f80] Setting 'dar' to value '16'
[AVFilterGraph @ 0x55cd14f17f80] Setting 'max' to value '9'
[graph 0 input from stream 0:0 @ 0x55cd14f1be00] Setting 'video_size' to value '3840x2160'
[graph 0 input from stream 0:0 @ 0x55cd14f1be00] Setting 'pix_fmt' to value '189'
[graph 0 input from stream 0:0 @ 0x55cd14f1be00] Setting 'time_base' to value '1/60'
[graph 0 input from stream 0:0 @ 0x55cd14f1be00] Setting 'pixel_aspect' to value '0/1'
[graph 0 input from stream 0:0 @ 0x55cd14f1be00] Setting 'frame_rate' to value '60/1'
[graph 0 input from stream 0:0 @ 0x55cd14f1be00] w:3840 h:2160 pixfmt:nv24 tb:1/60 fr:60/1 sar:0/1
[format @ 0x55cd14f1ce40] Setting 'pix_fmts' to value 'vaapi'
[auto_scale_0 @ 0x55cd14f1b580] w:iw h:ih flags:'' interl:0
[Parsed_hwupload_1 @ 0x55cd14f1a200] auto-inserting filter 'auto_scale_0' between the filter 'Parsed_format_0' and the filter 'Parsed_hwupload_1'
[AVFilterGraph @ 0x55cd14f17f80] query_formats: 7 queried, 5 merged, 1 already done, 0 delayed
[auto_scale_0 @ 0x55cd14f1b580] picking yuv444p out of 25 ref:nv24 alpha:0
[auto_scale_0 @ 0x55cd14f1b580] w:3840 h:2160 fmt:nv24 sar:0/1 -> w:3840 h:2160 fmt:yuv444p sar:0/1 flags:0x00000004
[hwupload @ 0x55cd14f1a340] Surface format is yuv444p.
[AVHWFramesContext @ 0x55cd1522c600] Created surface 0.
[AVHWFramesContext @ 0x55cd1522c600] Direct mapping possible.
[Parsed_setsar_2 @ 0x55cd14f1a700] w:3840 h:2160 sar:0/1 dar:16/9 -> sar:0/1 dar:16/9
[Parsed_setdar_3 @ 0x55cd14f1abc0] w:3840 h:2160 dar:16/9 sar:0/1 -> dar:9/1 sar:81/16
[AVHWFramesContext @ 0x55cd1522c600] Map surface 0.
[AVHWFramesContext @ 0x55cd1522c600] Unmap surface 0.
[hevc_vaapi @ 0x55cd14f10800] Using input frames context (format vaapi) with hevc_vaapi encoder.
[hevc_vaapi @ 0x55cd14f10800] Input surface format is yuv444p.
[hevc_vaapi @ 0x55cd14f10800] Using VAAPI profile VAProfileHEVCMain444 (26).
[hevc_vaapi @ 0x55cd14f10800] Using VAAPI entrypoint VAEntrypointEncSliceLP (8).
[hevc_vaapi @ 0x55cd14f10800] Using VAAPI render target format YUV444 (0x4).
[hevc_vaapi @ 0x55cd14f10800] Using CTU size 64x64, min CB size 8x8.
[hevc_vaapi @ 0x55cd14f10800] Driver supports RC modes CQP, CBR, VBR, QVBR.
[hevc_vaapi @ 0x55cd14f10800] RC mode: CQP.
[hevc_vaapi @ 0x55cd14f10800] RC quality: 40.
[hevc_vaapi @ 0x55cd14f10800] RC framerate: 60/1 (60.00 fps).
[hevc_vaapi @ 0x55cd14f10800] Driver does not support P-frames, replacing them with B-frames.
[hevc_vaapi @ 0x55cd14f10800] Using intra and B-frames (supported references: 3 / 3).
[hevc_vaapi @ 0x55cd14f10800] All wanted packed headers available (wanted 0xd, found 0x1f).
[hevc_vaapi @ 0x55cd14f10800] Invalid quality level: valid range is 0-7, using 7.
[hevc_vaapi @ 0x55cd14f10800] Using vuyx as format of reconstructed frames.
[AVHWFramesContext @ 0x55cd14f10d80] Created surface 0x1.
[AVHWFramesContext @ 0x55cd14f10d80] Direct mapping possible.
[hevc_vaapi @ 0x55cd14f10800] Using fixed QP = 40 / 40 / 48 for IDR- / P- / B-frames.
Output #0, null, to 'pipe:':
Metadata:
encoder : Lavf60.18.100
Stream #0:0, 0, 1/60: Video: hevc (Rext), 1 reference frame, vaapi(tv, progressive), 3840x2160 (0x0) [SAR 81:16 DAR 9:1], 0/1, q=2-31, 50000 kb/s, 60 fps, 60 tbn
Metadata:
encoder : Lavc60.35.100 hevc_vaapi
[hevc_vaapi @ 0x55cd14f10800] Input frame: 3840x2160 (0).
[hevc_vaapi @ 0x55cd14f10800] Pick forced IDR-picture to encode next.
[hevc_vaapi @ 0x55cd14f10800] Issuing encode for pic 0/0 as type IDR.
[hevc_vaapi @ 0x55cd14f10800] No reference pictures.
[hevc_vaapi @ 0x55cd14f10800] Input surface is 0.
[hevc_vaapi @ 0x55cd14f10800] Recon surface is 0x1.
[hevc_vaapi @ 0x55cd14f10800] Allocated output buffer 0
[hevc_vaapi @ 0x55cd14f10800] Output buffer is 0.
[hevc_vaapi @ 0x55cd14f10800] Param buffer (22) is 0x1.
[hevc_vaapi @ 0x55cd14f10800] Param buffer (27) is 0x2.
[hevc_vaapi @ 0x55cd14f10800] Param buffer (27) is 0x3.
[hevc_vaapi @ 0x55cd14f10800] Param buffer (23) is 0x4.
[hevc_vaapi @ 0x55cd14f10800] Packed header buffer (1) is 0x5/0x6 (816 bits).
[hevc_vaapi @ 0x55cd14f10800] Slice 0: 0-33 (34 rows), 0-2039 (2040 blocks).
[hevc_vaapi @ 0x55cd14f10800] Packed header buffer (3) is 0x7/0x8 (64 bits).
[hevc_vaapi @ 0x55cd14f10800] Param buffer (24) is 0x9.
[hevc_vaapi @ 0x55cd14f10800] Failed to end picture encode issue: 24 (internal encoding error).
[hevc_vaapi @ 0x55cd14f10800] Encode failed: -5.
[vost#0:0/hevc_vaapi @ 0x55cd14f10400] Error submitting video frame to the encoder
Error while filtering: Input/output error
[vist#0:0/rawvideo @ 0x55cd14f0f040] Decoder thread received EOF packet
[vist#0:0/rawvideo @ 0x55cd14f0f040] Decoder returned EOF, finishing
[vist#0:0/rawvideo @ 0x55cd14f0f040] Terminating decoder thread
[hevc_vaapi @ 0x55cd14f10800] Pick forced IDR-picture to encode next.
[hevc_vaapi @ 0x55cd14f10800] Issuing encode for pic 0/0 as type IDR.
[hevc_vaapi @ 0x55cd14f10800] No reference pictures.
[hevc_vaapi @ 0x55cd14f10800] Input surface is 0.
[hevc_vaapi @ 0x55cd14f10800] Recon surface is 0x1.
[hevc_vaapi @ 0x55cd14f10800] Output buffer is 0.
[hevc_vaapi @ 0x55cd14f10800] Param buffer (22) is 0x9.
[hevc_vaapi @ 0x55cd14f10800] Param buffer (27) is 0x8.
[hevc_vaapi @ 0x55cd14f10800] Param buffer (27) is 0x7.
[hevc_vaapi @ 0x55cd14f10800] Param buffer (23) is 0x6.
[hevc_vaapi @ 0x55cd14f10800] Packed header buffer (1) is 0x5/0x4 (816 bits).
[hevc_vaapi @ 0x55cd14f10800] Slice 0: 0-33 (34 rows), 0-2039 (2040 blocks).
[hevc_vaapi @ 0x55cd14f10800] Packed header buffer (3) is 0x3/0x2 (64 bits).
[hevc_vaapi @ 0x55cd14f10800] Param buffer (24) is 0x1.
[hevc_vaapi @ 0x55cd14f10800] Failed to end picture encode issue: 24 (internal encoding error).
[hevc_vaapi @ 0x55cd14f10800] Encode failed: -5.
[vost#0:0/hevc_vaapi @ 0x55cd14f10400] Error submitting video frame to the encoder
[out#0/null @ 0x55cd14f0e840] All streams finished
[out#0/null @ 0x55cd14f0e840] Terminating muxer thread
[out#0/null @ 0x55cd14f0e840] Output file #0 (pipe:):
[out#0/null @ 0x55cd14f0e840] Output stream #0:0 (video): 1 frames encoded; 0 packets muxed (0 bytes);
[out#0/null @ 0x55cd14f0e840] Total: 0 packets (0 bytes) muxed
[out#0/null @ 0x55cd14f0e840] video:0kB audio:0kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: unknown
[out#0/null @ 0x55cd14f0e840] Output file is empty, nothing was encoded(check -ss / -t / -frames parameters if used)
frame= 0 fps=0.0 q=0.0 Lsize=N/A time=N/A bitrate=N/A speed=N/A
[hevc_vaapi @ 0x55cd14f10800] Freed output buffer 0
[in#0/rawvideo @ 0x55cd14e66840] Terminating demuxer thread
[in#0/rawvideo @ 0x55cd14e66840] Input file #0 (Samsung-cut-yuv444p60.yuv):
[in#0/rawvideo @ 0x55cd14e66840] Input stream #0:0 (video): 3 packets read (74649600 bytes); 1 frames decoded; 0 decode errors;
[in#0/rawvideo @ 0x55cd14e66840] Total: 3 packets (74649600 bytes) demuxed
[AVIOContext @ 0x55cd14e63ec0] Statistics: 74649600 bytes read, 0 seeks
Conversion failed!
akhil-ipv@akhil-ipv:~/iPV/test-videos$

Graphics Hw Info:
00:02.0 VGA compatible controller: Intel Corporation Device 46d1 (prog-if 00 [VGA controller])
Subsystem: Intel Corporation Device 7270
Flags: bus master, fast devsel, latency 0, IRQ 139
Memory at 6001000000 (64-bit, non-prefetchable) [size=16M]
Memory at 4000000000 (64-bit, prefetchable) [size=256M]
I/O ports at 3000 [size=64]
Expansion ROM at 000c0000 [virtual] [disabled] [size=128K]
Capabilities: [40] Vendor Specific Information: Len=0c <?>
Capabilities: [70] Express Root Complex Integrated Endpoint, MSI 00
Capabilities: [ac] MSI: Enable+ Count=1/1 Maskable+ 64bit-
Capabilities: [d0] Power Management version 2
Capabilities: [100] Process Address Space ID (PASID)
Capabilities: [200] Address Translation Service (ATS)
Capabilities: [300] Page Request Interface (PRI)
Capabilities: [320] Single Root I/O Virtualization (SR-IOV)
Kernel driver in use: i915
Kernel modules: i915

Firmware load information:

[ 2.766295] i915 0000:00:02.0: [drm] Finished loading DMC firmware i915/adlp_dmc_ver2_12.bin (v2.12)
[ 2.847304] i915 0000:00:02.0: [drm] GuC firmware i915/adlp_guc_62.0.3.bin version 62.0 submission:enabled
[ 2.847311] i915 0000:00:02.0: [drm] GuC SLPC: enabled
[ 2.847312] i915 0000:00:02.0: [drm] HuC firmware i915/tgl_huc_7.9.3.bin version 7.9 authenticated:yes
[ 2.848151] i915 0000:00:02.0: [drm] GuC RC: enabled
[ 3.045788] [drm] Initialized i915 1.6.0 20201103 for 0000:00:02.0 on minor 0
[ 3.096618] fbcon: i915drmfb (fb0) is primary device

other than 5.15.0-1026-intel-iotg I tried it on Ubuntu 22.04 6.2 kernel aswell with latest media drivers. The result same.

Can anyone help on understanding what is going wrong here?

TBH, it is not a vaapi issue, it should related with ffmpeg vaapi or https://github.com/intel/media-driver
suggest move this issue to media-driver repo and get the driver log to be help further analysis.