intel / libva-utils

Libva-utils is a collection of tests for VA-API (VIdeo Acceleration API)
https://01.org/linuxmedia
Other
195 stars 162 forks source link

hevcencode:broken output stream #342

Open zgw1234562012 opened 1 year ago

zgw1234562012 commented 1 year ago

Issue:

  1. If enabling use_features and use_block_sizes, the whole output stream will be undecodable.
  2. If disabling use_features and use_block_sizes, it will be following situations: ①When p2b=0, if setting intra period size larger than 32, then all the pictures that its POC are larger than 31 are broken. ②When p2b=1, if setting intra period size more than 128, then the last picture of every gop is broken.
  3. It seems that it’s caused by the hevcencode sample itself, since when using the encode sample in media-sdk it doesn’t show this problem.

Test commandline:

sudo ./hevcencode -w 1920 -h 1080 -n 0 -f 30 --intra_period 150 --idr_period 150 --rcmode VBR --bitrate 4000 --syncmode --srcyuv nv12_yuv_file --fourcc NV12 --profile 1 --p2b 0 --lowpower 1 -o ./output_stream

sudo ./hevcencode -w 1920 -h 1080 -n 0 -f 30 --intra_period 150 --idr_period 150 --rcmode VBR --bitrate 4000 --syncmode --srcyuv nv12_yuv_file --fourcc NV12 --profile 1 --p2b 1 --lowpower 1 -o ./output_stream

Environment:

Hardware:intel ARC A380 OS: Ubuntu 22.04.3 LTS with 6.2.0-32-generic kernel Media Driver version: Intel iHD driver for Intel(R) Gen Graphics - 23.2.4 VA-API version: 1.19 (libva 2.19.0) Libva-utils version: 2.19.0 Display:drm

charlie-ht commented 6 months ago

I also see this problem,

AMD Radeon RX 7600 (radeonsi, navi33, LLVM 15.0.7, DRM 3.54, 6.5.0-26-generic)
OS: Ubuntu 23.10 mantic
VA-API version: 1.22 (libva 2.22.0.pre1)
Libva-utils version: master 29c0a92d0e89424e091542020c3c7793cda72b17
Display:drm
bai-isaac commented 2 months ago

hi @zgw1234562012 @chivakker , I found same issue, make a change here https://github.com/intel/libva-utils/pull/371