LizardByte / LizardByte/Sunshine

Vulkan encoding not working on AMDGPU (Radeon 8060S)

Open
#5,572 3 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
C++
Stars
41.3k
Forks
2.1k
Avg merge
23h 47m
Merged PRs (30d)
124

Description

### Is there an existing issue for this?

- [x] I have searched the existing issues

### Is your issue described in the documentation?

- [x] I have read the documentation

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

None

### Describe the Bug

sunshine is using x264 sw encoding even though hardware supports AV1

### Expected Behavior

vulkan hw accelleration is used for encoding

### Additional Context

sunshine output

```
[2026-08-28 21:10:47.257]: Info: Sunshine version: 2026.516.143833 commit: 14ffa6fdaa53f7b51512be2b3d24f3939695403c

[...]

[2026-08-28 21:10:47.802]: Info: Trying encoder [vulkan]
[2026-08-28 21:10:47.802]: Info: Screencasting with KMS
[2026-08-28 21:10:47.802]: Info: /dev/dri/card1 -> amdgpu
[2026-08-28 21:10:47.802]: Info: Found monitor for DRM screencasting
[2026-08-28 21:10:47.802]: Info: Found connector ID [453]
[2026-08-28 21:10:47.802]: Info: Found cursor plane [421]
[2026-08-28 21:10:47.802]: Info: Creating encoder [h264_vulkan]
[2026-08-28 21:10:47.802]: Info: Color coding: SDR (Rec. 601)
[2026-08-28 21:10:47.802]: Info: Color depth: 8-bit
[2026-08-28 21:10:47.802]: Info: Color range: JPEG
[2026-08-28 21:10:47.888]: Info: Streaming bitrate is 1000000
[2026-08-28 21:10:47.888]: Error: [h264_vulkan @ 0x346bdec0] Device does not support encoding h264!
[2026-08-28 21:10:47.890]: Error: Could not open codec [h264_vulkan]: Function not implemented
[2026-08-28 21:10:47.890]: Info: Creating encoder [h264_vulkan]
[2026-08-28 21:10:47.890]: Info: Color coding: SDR (Rec. 601)
[2026-08-28 21:10:47.890]: Info: Color depth: 8-bit
[2026-08-28 21:10:47.890]: Info: Color range: JPEG
[2026-08-28 21:10:47.972]: Info: Streaming bitrate is 1000000
[2026-08-28 21:10:47.973]: Error: [h264_vulkan @ 0x346bdec0] Device does not support encoding h264!
[2026-08-28 21:10:47.975]: Error: Could not open codec [h264_vulkan]: Function not implemented
[2026-08-28 21:10:47.975]: Info: Encoder [vulkan] failed
```

vulkaninfo output

```
Device Extensions: count = 226

[...]

VK_KHR_video_encode_av1 : extension revision 1
VK_KHR_video_encode_intra_refresh : extension revision 1
VK_KHR_video_encode_quantization_map : extension revision 2
VK_KHR_video_encode_queue : extension revision 12

[...]

VkPhysicalDeviceVideoEncodeAV1FeaturesKHR:
------------------------------------------
videoEncodeAV1 = true

VkPhysicalDeviceVideoEncodeIntraRefreshFeaturesKHR:
---------------------------------------------------
videoEncodeIntraRefresh = true

VkPhysicalDeviceVideoEncodeQuantizationMapFeaturesKHR:
------------------------------------------------------
videoEncodeQuantizationMap = true
```

what's funny is that apparently there is no H.264 encoding HW support, so maybe sunshine errors out before even trying AV1?

### Host Operating System

Linux

### Operating System Version

Fedora 44

### Architecture

amd64/x86_64

### Package

Linux - AppImage

### GPU Type

AMD

### GPU Model

AMD Radeon 8060S Graphics

### GPU Driver/Mesa Version

Mesa 26.0.8

### Capture Method

KMS (Linux)

### Apps

```json

```

### Log output

```shell

```

### Online logs

_No response_

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by tracing the Vulkan encoder-selection path shown in the log, especially creation of h264_vulkan and the subsequent encoder failure. Compare that path with the reported VK_KHR_video_encode_av1 support and determine whether AV1 is attempted when H.264 is unavailable. Done means the supported hardware encoder is selected or the failure is reported clearly, with the provided Sunshine logs reproduced or explained.

Written by the indexing model from the issue text.

Assessment

Tech stack
cpp, linux
Domain
backend
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Active
Clarity
Mostly clear
Newbie friendliness
55/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.