Skip to content

[BUG] VP8 VAAPI Fails to initialize (Low-Power) on Skylake (HD 530) #134

@ffs-akl

Description

@ffs-akl

Description

I am encountering an issue when attempting to use VP8 VAAPI hardware encoding with wl-screenrec on my system featuring an Intel HD Graphics 530 (Skylake) iGPU.

The program first fails to open the encoder in low-power mode (as the function appears unimplemented for this codec/hardware combination). It then attempts to fall back to the standard encoding mode but ultimately fails, reporting that no usable encoding entrypoint can be found for the VP8 profile.

I have already set the recommended kernel parameter i915.enable_guc=2, and dmesg confirms HuC is successfully loaded and authenticated.

Steps to Reproduce

  1. Ensure the kernel parameter i915.enable_guc=2 is set.
  2. Run the following command to attempt VP8 encoding:
    wl-screenrec --codec vp8 -f ~/1.mkv 
  3. The command ran successfuly with the errors shown below.

Full Error and Warning Output

out @ 0x559c0277d480] Option 'pix_fmts' is not a runtime option and so cannot be set after the object has been initialized
[vp8_vaapi @ 0x559c02811780] No usable encoding entrypoint found for profile VAProfileVP8Version0_3 (14).
failed to open encoder in low_power mode (Function not implemented), trying non low_power mode. if you have an intel iGPU, set enable_guc=2 in the i915 module to use the fixed function encoder. pass --low-power=off to suppress this warning

Expected Behavior

If the hardware lacks VP8 support, the tool should ideally communicate this clearly, or perhaps successfully utilize the non-low-power encoding mode if it is available for this codec on HD 530.

⚙️ Environment Details

  • GPU / iGPU: Intel HD Graphics 530 (Skylake)
  • VAAPI Driver: intel-media-driver (i.e., intel-media-va-driver)
  • Kernel Configuration: i915.enable_guc=2
  • wl-screenrec Version: 0.2.0
  • Wayland Compositor: labwc lastest git ver
  • OS / Distribution: Arch Linux
  • Command Used: wl-screenrec --codec vp8 -f ~/1.mkv

dmesg Output (Confirming HuC/GuC Status)

[ 2.742199] Setting dangerous option enable_guc - tainting kernel
[ 2.827634] i915 0000:00:02.0: [drm] GT0: GuC firmware i915/skl_guc_70.1.1.bin version 70.1.1
[ 2.827646] i915 0000:00:02.0: [drm] GT0: HuC firmware i915/skl_huc_2.0.0.bin version 2.0.0
[ 2.853118] i915 0000:00:02.0: [drm] GT0: HuC: authenticated for all workloads
[ 2.853126] i915 0000:00:02.0: [drm] GT0: GUC: submission disabled
[ 2.853131] i915 0000:00:02.0: [drm] GT0: GUC: SLPC disabled

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions