[va-api] Sunshine complains of unsupported HEVC Main10 even though vainfo reports it
System information
- OS:
Fedora 38
- GPU:
Navi 22 (Radeon RX 6700 XT)
- Kernel version:
6.5.8-200.fc38.x86_64
- Mesa version:
24.0.0-0.3.20231103.15.28b79b2
- Xserver version (if applicable):
1.20.14
- Desktop manager and compositor:
Gnome
vainfo output
libva info: VA-API version 1.18.0
libva info: Trying to open /usr/lib64/dri/radeonsi_drv_video.so
libva info: Found init function __vaDriverInit_1_18
libva info: va_openDriver() returns 0
vainfo: VA-API version: 1.18 (libva 2.18.2)
vainfo: Driver version: Mesa Gallium driver 24.0.0-devel for AMD Radeon RX 6700 XT (radeonsi, navi22, LLVM 16.0.6, DRM 3.54, 6.5.8-200.fc38.x86_64)
vainfo: Supported profile and entrypoints
VAProfileMPEG2Simple : VAEntrypointVLD
VAProfileMPEG2Main : VAEntrypointVLD
VAProfileVC1Simple : VAEntrypointVLD
VAProfileVC1Main : VAEntrypointVLD
VAProfileVC1Advanced : VAEntrypointVLD
VAProfileH264ConstrainedBaseline: VAEntrypointVLD
VAProfileH264ConstrainedBaseline: VAEntrypointEncSlice
VAProfileH264Main : VAEntrypointVLD
VAProfileH264Main : VAEntrypointEncSlice
VAProfileH264High : VAEntrypointVLD
VAProfileH264High : VAEntrypointEncSlice
VAProfileHEVCMain : VAEntrypointVLD
VAProfileHEVCMain : VAEntrypointEncSlice
VAProfileHEVCMain10 : VAEntrypointVLD
VAProfileHEVCMain10 : VAEntrypointEncSlice
VAProfileJPEGBaseline : VAEntrypointVLD
VAProfileVP9Profile0 : VAEntrypointVLD
VAProfileVP9Profile2 : VAEntrypointVLD
VAProfileAV1Profile0 : VAEntrypointVLD
VAProfileNone : VAEntrypointVideoProc
Describe the issue
I've been successfully using Sunshine 0.21 on my desktop in combination with Moonlight on a raspberry pi4 to transform my bedroom PC into a game streamer for my living room TV. I was using it with h264. Lately, even h265 works and with even better quality. Thanks @nowrep !
However, one thing that I've noticed is that even though vainfo
reports VAProfileHEVCMain10 : VAEntrypointEncSlice
, when trying to force sunshine to use it, it complains of the following:
[2023:11:04:00:20:03]: Warning: [hevc_vaapi @ 0x39aa180] Driver does not support some wanted packed headers (wanted 0xd, found 0x1).
[2023:11:04:00:20:03]: Info: Screencasting with KMS
[2023:11:04:00:20:03]: Info: Found monitor for DRM screencasting
libva info: VA-API version 1.18.0
libva info: Trying to open /usr/lib64/dri/radeonsi_drv_video.so
libva info: Found init function __vaDriverInit_1_18
libva info: va_openDriver() returns 0
[2023:11:04:00:20:03]: Info: SDR color coding [Rec. 709]
[2023:11:04:00:20:03]: Info: Color depth: 10-bit
[2023:11:04:00:20:03]: Info: Color range: [JPEG]
libva info: VA-API version 1.18.0
libva info: Trying to open /usr/lib64/dri/radeonsi_drv_video.so
libva info: Found init function __vaDriverInit_1_18
libva info: va_openDriver() returns 0
[2023:11:04:00:20:03]: Error: [AVHWFramesContext @ 0x3763880] Unsupported format: yuv420p10le.
[2023:11:04:00:20:03]: Warning: Encoder [vaapi] does not support HEVC Main10 on this system
[2023:11:04:00:21:27]: Warning: [hevc_vaapi @ 0x7feb7423d100] Driver does not support some wanted packed headers (wanted 0xd, found 0x1).
And the client says: 'Your PC GPU doesn't support HDR streaming, the stream will be SDR.'
It can be tested using the sunshine on PC host and moonlight client on an android, raspberry PI or another PC.
I was wondering if the situation can be improved.
Regression
No.