Skip to content

AV1 encoding doesn' work when the GPU doesn't support H264 encoding #4464

@Heeenriqueee

Description

@Heeenriqueee

Is there an existing issue for this?

  • I have searched the existing issues

Is your issue described in the documentation?

  • I have read the documentation

Is your issue present in the latest beta/pre-release?

This issue is present in the latest pre-release

Describe the Bug

AV1 encoding doesn’t work. Sunshine falls back to CPU-based H.264 encoding because it can’t find GPU support for H.264. Tested on both Wayland and X11. My GPU only supports AV1 encoding

vainfo output:

vainfo: VA-API version: 1.22 (libva 2.22.0)
vainfo: Driver version: Mesa Gallium driver 25.1.9 for AMD Radeon Graphics (radeonsi, gfx1200, LLVM 20.1.8, DRM 3.64, 6.17.8-200.fc42.x86_64)
vainfo: Supported profile and entrypoints
      VAProfileJPEGBaseline           : VAEntrypointVLD
      VAProfileVP9Profile0            : VAEntrypointVLD
      VAProfileVP9Profile2            : VAEntrypointVLD
      VAProfileAV1Profile0            : VAEntrypointVLD
      VAProfileAV1Profile0            : VAEntrypointEncSlice
      VAProfileNone                   : VAEntrypointVideoProc

Expected Behavior

Setting both the client and the server to prefer AV1 should result in using the GPU AV1 encoder for video.

Additional Context

No response

Host Operating System

Linux

Operating System Version

Fedora 42 / downloaded the RPM package from github

Architecture

amd64/x86_64

Sunshine commit or version

2025.1129.183945

Package

other (not listed)

GPU Type

AMD

GPU Model

RX 9060XT 16GB

GPU Driver/Mesa Version

Mesa Gallium driver 25.1.9 for AMD Radeon Graphics (radeonsi, gfx1200, LLVM 20.1.8, DRM 3.64, 6.17.8-200.fc42.x86_64)

Capture Method

wlroots (Linux)

Config

adapter_name = /dev/dri/renderD128
address_family = both
av1_mode = 2
encoder = vaapi
hevc_mode = 1
origin_web_ui_allowed = wan

Apps

Relevant log output

2025-11-30 13:45:28.691]: Info: vaapi vendor: Mesa Gallium driver 25.1.9 for AMD Radeon Graphics (radeonsi, gfx1200, LLVM 20.1.8, DRM 3.64, 6.17.8-200.fc42.x86_64)
[2025-11-30 13:45:28.692]: Info: Streaming bitrate is 1000000
[2025-11-30 13:45:28.692]: Error: [h264_vaapi @ 0x322aea00] No usable encoding profile found.
[2025-11-30 13:45:28.692]: Error: Could not open codec [h264_vaapi]: Function not implemented
[2025-11-30 13:45:28.693]: Info: Encoder [vaapi] failed
[2025-11-30 13:45:28.694]: Error: Couldn't find any working encoder matching [vaapi]
[2025-11-30 13:45:28.694]: Info: // Testing for available encoders, this may generate errors. You can safely ignore those errors. //
[2025-11-30 13:45:28.694]: Info: Trying encoder [nvenc]
[2025-11-30 13:45:28.694]: Info: Screencasting with KMS
[2025-11-30 13:45:28.694]: Info: /dev/dri/card1 -> amdgpu
[2025-11-30 13:45:28.695]: Error: Couldn't find monitor [0]
[2025-11-30 13:45:28.695]: Info: /dev/dri/card1 -> amdgpu
[2025-11-30 13:45:28.695]: Error: Couldn't find monitor [0]
[2025-11-30 13:45:28.895]: Info: Screencasting with KMS
[2025-11-30 13:45:28.895]: Info: /dev/dri/card1 -> amdgpu
[2025-11-30 13:45:28.896]: Error: Couldn't find monitor [0]
[2025-11-30 13:45:28.896]: Info: /dev/dri/card1 -> amdgpu
[2025-11-30 13:45:28.896]: Error: Couldn't find monitor [0]
[2025-11-30 13:45:29.096]: Info: Encoder [nvenc] failed
[2025-11-30 13:45:29.096]: Info: Trying encoder [software]
[2025-11-30 13:45:29.096]: Info: Screencasting with KMS
[2025-11-30 13:45:29.096]: Info: /dev/dri/card1 -> amdgpu
[2025-11-30 13:45:29.097]: Info: Found monitor for DRM screencasting
[2025-11-30 13:45:29.097]: Info: Found connector ID [100]
[2025-11-30 13:45:29.097]: Info: Found cursor plane [83]
[2025-11-30 13:45:29.105]: Info: Creating encoder [libx264]
[2025-11-30 13:45:29.105]: Info: Color coding: SDR (Rec. 601)
[2025-11-30 13:45:29.105]: Info: Color depth: 8-bit
[2025-11-30 13:45:29.105]: Info: Color range: JPEG
[2025-11-30 13:45:29.105]: Info: Streaming bitrate is 1000000
[2025-11-30 13:45:29.106]: Info: [libx264 @ 0x322aea00] using cpu capabilities: MMX2 SSE2Fast SSSE3 SSE4.2 AVX FMA3 BMI2 AVX2
[2025-11-30 13:45:29.106]: Info: [libx264 @ 0x322aea00] profile High, level 4.2, 4:2:0, 8-bit
[2025-11-30 13:45:29.129]: Info: [libx264 @ 0x322aea00] frame I:1     Avg QP:31.00  size:  1203
[2025-11-30 13:45:29.129]: Info: [libx264 @ 0x322aea00] mb I  I16..4: 99.9%  0.0%  0.0%
[2025-11-30 13:45:29.129]: Info: [libx264 @ 0x322aea00] 8x8 transform intra:0.0%
[2025-11-30 13:45:29.129]: Info: [libx264 @ 0x322aea00] coded y,uvDC,uvAC intra: 0.0% 0.0% 0.0%
[2025-11-30 13:45:29.129]: Info: [libx264 @ 0x322aea00] i16 v,h,dc,p: 97%  0%  3%  0%
[2025-11-30 13:45:29.129]: Info: [libx264 @ 0x322aea00] i8 v,h,dc,ddl,ddr,vr,hd,vl,hu:  0%  0% 75% 12%  0%  0%  0%  0% 12%
[2025-11-30 13:45:29.129]: Info: [libx264 @ 0x322aea00] i4 v,h,dc,ddl,ddr,vr,hd,vl,hu:  0%  0% 100%  0%  0%  0%  0%  0%  0%
[2025-11-30 13:45:29.129]: Info: [libx264 @ 0x322aea00] i8c dc,h,v,p: 100%  0%  0%  0%
[2025-11-30 13:45:29.129]: Info: [libx264 @ 0x322aea00] kb/s:577.44

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions