Fairly fresh Tumbleweed install, everything up-to-date, using Packman packages where applicable.
GPU is a Radeon 7800XT.
vpdauinfo:
display: :1 screen: 0
API version: 1
Information string: G3DVL VDPAU Driver Shared Library version 1.0
Video surface:
name width height types
-------------------------------------------
420 16384 16384 NV12 YV12
422 16384 16384 UYVY YUYV
444 16384 16384 Y8U8V8A8 V8U8Y8A8
420_16 16384 16384 P010 P016
422_16 16384 16384
444_16 16384 16384
Decoder capabilities:
name level macbs width height
----------------------------------------------------
MPEG1 --- not supported ---
MPEG2_SIMPLE --- not supported ---
MPEG2_MAIN --- not supported ---
H264_BASELINE 52 65536 4096 4096
H264_MAIN 52 65536 4096 4096
H264_HIGH 52 65536 4096 4096
VC1_SIMPLE --- not supported ---
VC1_MAIN --- not supported ---
VC1_ADVANCED --- not supported ---
MPEG4_PART2_SP --- not supported ---
MPEG4_PART2_ASP --- not supported ---
DIVX4_QMOBILE --- not supported ---
DIVX4_MOBILE --- not supported ---
DIVX4_HOME_THEATER --- not supported ---
DIVX4_HD_1080P --- not supported ---
DIVX5_QMOBILE --- not supported ---
DIVX5_MOBILE --- not supported ---
DIVX5_HOME_THEATER --- not supported ---
DIVX5_HD_1080P --- not supported ---
H264_CONSTRAINED_BASELINE 0 65536 4096 4096
H264_EXTENDED --- not supported ---
H264_PROGRESSIVE_HIGH --- not supported ---
H264_CONSTRAINED_HIGH --- not supported ---
H264_HIGH_444_PREDICTIVE --- not supported ---
VP9_PROFILE_0 --- not supported ---
VP9_PROFILE_1 --- not supported ---
VP9_PROFILE_2 --- not supported ---
VP9_PROFILE_3 --- not supported ---
HEVC_MAIN 186 139264 8192 4352
HEVC_MAIN_10 186 139264 8192 4352
HEVC_MAIN_STILL --- not supported ---
HEVC_MAIN_12 --- not supported ---
HEVC_MAIN_444 --- not supported ---
HEVC_MAIN_444_10 --- not supported ---
HEVC_MAIN_444_12 --- not supported ---
AV1_MAIN --- not supported ---
AV1_HIGH --- not supported ---
AV1_PROFESSIONAL --- not supported ---
Output surface:
name width height nat types
----------------------------------------------------
B8G8R8A8 16384 16384 y NV12 YV12 UYVY YUYV Y8U8V8A8 V8U8Y8A8 P010 P016 A8I8 I8A8
R8G8B8A8 16384 16384 y NV12 YV12 UYVY YUYV Y8U8V8A8 V8U8Y8A8 P010 P016 A8I8 I8A8
R10G10B10A2 16384 16384 y NV12 YV12 UYVY YUYV Y8U8V8A8 V8U8Y8A8 P010 P016 A8I8 I8A8
B10G10R10A2 16384 16384 y NV12 YV12 UYVY YUYV Y8U8V8A8 V8U8Y8A8 P010 P016 A8I8 I8A8
Bitmap surface:
name width height
------------------------------
B8G8R8A8 16384 16384
R8G8B8A8 16384 16384
R10G10B10A2 16384 16384
B10G10R10A2 16384 16384
A8 16384 16384
Video mixer:
feature name sup
------------------------------------
DEINTERLACE_TEMPORAL y
DEINTERLACE_TEMPORAL_SPATIAL -
INVERSE_TELECINE -
NOISE_REDUCTION y
SHARPNESS y
LUMA_KEY y
HIGH QUALITY SCALING - L1 y
HIGH QUALITY SCALING - L2 -
HIGH QUALITY SCALING - L3 -
HIGH QUALITY SCALING - L4 -
HIGH QUALITY SCALING - L5 -
HIGH QUALITY SCALING - L6 -
HIGH QUALITY SCALING - L7 -
HIGH QUALITY SCALING - L8 -
HIGH QUALITY SCALING - L9 -
parameter name sup min max
-----------------------------------------------------
VIDEO_SURFACE_WIDTH y 48 4096
VIDEO_SURFACE_HEIGHT y 48 4096
CHROMA_TYPE y
LAYERS y 0 4
attribute name sup min max
-----------------------------------------------------
BACKGROUND_COLOR y
CSC_MATRIX y
NOISE_REDUCTION_LEVEL y 0.00 1.00
SHARPNESS_LEVEL y -1.00 1.00
LUMA_KEY_MIN_LUMA y
LUMA_KEY_MAX_LUMA y
vainfo:
Trying display: wayland
libva info: VA-API version 1.20.0
libva info: User environment variable requested driver 'radeonsi'
libva info: Trying to open /usr/lib64/dri/radeonsi_drv_video.so
libva info: Found init function __vaDriverInit_1_20
libva info: va_openDriver() returns 0
vainfo: VA-API version: 1.20 (libva 2.20.1)
vainfo: Driver version: Mesa Gallium driver 24.0.3 for AMD Radeon RX 7800 XT (radeonsi, navi32, LLVM 18.1.2, DRM 3.57, 6.8.1-1-default)
vainfo: Supported profile and entrypoints
VAProfileH264ConstrainedBaseline: VAEntrypointVLD
VAProfileH264ConstrainedBaseline: VAEntrypointEncSlice
VAProfileH264Main : VAEntrypointVLD
VAProfileH264Main : VAEntrypointEncSlice
VAProfileH264High : VAEntrypointVLD
VAProfileH264High : VAEntrypointEncSlice
VAProfileHEVCMain : VAEntrypointVLD
VAProfileHEVCMain : VAEntrypointEncSlice
VAProfileHEVCMain10 : VAEntrypointVLD
VAProfileHEVCMain10 : VAEntrypointEncSlice
VAProfileJPEGBaseline : VAEntrypointVLD
VAProfileNone : VAEntrypointVideoProc
As you can see, lots of codecs and profiles are reported as unsupported. Obviously the hardware supports them, my understanding is the driver definitely should also support them, and hardware decoding works for the codecs listed above, their patent encumbrance notwithstanding.
I’m unsure where to proceed from here, I’ve been out of the Linux desktop game for a good 15 years, but I’m open to any useful suggestions or pointers.
hcvv
March 29, 2024, 10:18am
2
Is that synonymous with “I did the vendor switch to Packman”?
That is what I meant by that, yes.
I’m seeing this as well, also on a 7800XT.
Pretty sure I had them before the update to 24.0.3, not able to test this right now though.
vainfo:
Trying display: wayland
libva info: VA-API version 1.20.0
libva info: Trying to open /usr/lib64/dri/radeonsi_drv_video.so
libva info: Found init function __vaDriverInit_1_20
libva info: va_openDriver() returns 0
vainfo: VA-API version: 1.20 (libva 2.20.1)
vainfo: Driver version: Mesa Gallium driver 24.0.3 for AMD Radeon RX 7800 XT (radeonsi, navi32, LLVM 18.1.2, DRM 3.57, 6.8.1-1-default)
vainfo: Supported profile and entrypoints
VAProfileH264ConstrainedBaseline: VAEntrypointVLD
VAProfileH264ConstrainedBaseline: VAEntrypointEncSlice
VAProfileH264Main : VAEntrypointVLD
VAProfileH264Main : VAEntrypointEncSlice
VAProfileH264High : VAEntrypointVLD
VAProfileH264High : VAEntrypointEncSlice
VAProfileHEVCMain : VAEntrypointVLD
VAProfileHEVCMain : VAEntrypointEncSlice
VAProfileHEVCMain10 : VAEntrypointVLD
VAProfileHEVCMain10 : VAEntrypointEncSlice
VAProfileJPEGBaseline : VAEntrypointVLD
VAProfileNone : VAEntrypointVideoProc
shorberg:
I’m seeing this as well, also on a 7800XT.
Pretty sure I had them before the update to 24.0.3, not able to test this right now though.
That tracks, actually. I was thinking I had seen it working a couple days ago, but wasn’t sure if I was was misremembering it and/or it was just on a HEVC or AVC stream, so I wasn’t confident to mention it.
But if that’s the case, then that’s a very recent issue.
I see same on Tumbleweed latest. I hadn’t noticed this which probably means it isn’t too impactful for me but beyond like:
opi codecs
Is there something else anyone normally does to enable av1?
I went ahead and did a fresh install, and fully updated without Packman repos looks like this:
Trying display: wayland
libva info: VA-API version 1.20.0
libva info: Trying to open /usr/lib64/dri/radeonsi_drv_video.so
libva info: Found init function __vaDriverInit_1_20
libva info: va_openDriver() returns 0
vainfo: VA-API version: 1.20 (libva 2.20.1)
vainfo: Driver version: Mesa Gallium driver 24.0.3 for AMD Radeon RX 7800 XT (radeonsi, navi32, LLVM 18.1.2, DRM 3.57, 6.8.1-1-default)
vainfo: Supported profile and entrypoints
VAProfileJPEGBaseline : VAEntrypointVLD
VAProfileVP9Profile0 : VAEntrypointVLD
VAProfileVP9Profile2 : VAEntrypointVLD
VAProfileAV1Profile0 : VAEntrypointVLD
VAProfileAV1Profile0 : VAEntrypointEncSlice
VAProfileNone : VAEntrypointVideoProc
So it appears to be a Packman bug of some sort.
Actually looking closer at it, I might have found something. Though my ability to read Meson files is limited:
In Mesas meson.build
I found this snippet:
_codecs = get_option('video-codecs')
patent_codecs = ['vc1dec', 'h264dec', 'h264enc', 'h265dec', 'h265enc']
free_codecs = ['av1dec', 'av1enc', 'vp9dec']
all_codecs = patent_codecs + free_codecs
if _codecs.contains('all')
_codecs = all_codecs
elif _codecs.contains('all_free')
selected_codecs = _codecs
_codecs = free_codecs
foreach c : patent_codecs
if selected_codecs.contains(c)
_codecs += c
endif
endforeach
endif
foreach c : all_codecs
pre_args += '-DVIDEO_CODEC_@0@=@1@'.format(c.to_upper(), _codecs.contains(c).to_int())
endforeach
and in the Mesa.spec file we find these lines:
# Possible patent issues, see
# https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15258
# for more details
%if 0%{?BUILD_ORIG}
%define video_codecs 1
%else
%define video_codecs 0
%endif
[....]
%if %{video_codecs}
-Dvideo-codecs=h264dec,h264enc,h265dec,h265enc,vc1dec \
%endif
My current guess is that there is a mismatch here and that the spec file should read:
%if %{video_codecs}
-Dvideo-codecs=h264dec,h264enc,h265dec,h265enc,vc1dec,av1dec,av1enc,vp9dec\
%endif
Or just use the catch-all phrase video_codecs=all
.
1 Like
Post
zypper se -si mesa
zypper se -si vdpau
And
:~> vdpauinfo
, not vpdauinfo.
AMD uses Video Acceleration API (VA-API), so use
:~> vainfo
as the main source.
~ zypper se -si mesa
Loading repository data...
Reading installed packages...
S | Name | Type | Version | Arch | Repository
---+---------------------------------+---------+----------------------+--------+----------------------
i | libOSMesa8 | package | 24.0.3-1699.373.pm.1 | x86_64 | Packman Repository
i | libOSMesa8-32bit | package | 24.0.3-1699.373.pm.1 | x86_64 | Packman Repository
i | Mesa | package | 24.0.3-1699.373.pm.1 | x86_64 | Packman Repository
i+ | Mesa-32bit | package | 24.0.3-1699.373.pm.1 | x86_64 | Packman Repository
i | Mesa-demo | package | 9.0.0-3.3 | x86_64 | Main Repository (OSS)
i | Mesa-demo-egl | package | 9.0.0-3.3 | x86_64 | Main Repository (OSS)
i | Mesa-demo-es | package | 9.0.0-3.3 | x86_64 | Main Repository (OSS)
i | Mesa-demo-x | package | 9.0.0-3.3 | x86_64 | Main Repository (OSS)
i | Mesa-dri | package | 24.0.3-1699.372.pm.2 | x86_64 | Packman Repository
i+ | Mesa-dri-32bit | package | 24.0.3-1699.373.pm.1 | x86_64 | Packman Repository
i | Mesa-gallium | package | 24.0.3-1699.372.pm.2 | x86_64 | Packman Repository
i+ | Mesa-gallium-32bit | package | 24.0.3-1699.373.pm.1 | x86_64 | Packman Repository
i | Mesa-libEGL1 | package | 24.0.3-1699.373.pm.1 | x86_64 | Packman Repository
i | Mesa-libGL1 | package | 24.0.3-1699.373.pm.1 | x86_64 | Packman Repository
i+ | Mesa-libGL1-32bit | package | 24.0.3-1699.373.pm.1 | x86_64 | Packman Repository
i | Mesa-libglapi0 | package | 24.0.3-1699.373.pm.1 | x86_64 | Packman Repository
i+ | Mesa-libglapi0-32bit | package | 24.0.3-1699.373.pm.1 | x86_64 | Packman Repository
i | Mesa-libva | package | 24.0.3-1699.372.pm.2 | x86_64 | Packman Repository
i | Mesa-vulkan-device-select | package | 24.0.3-1699.372.pm.2 | x86_64 | Packman Repository
i | Mesa-vulkan-device-select-32bit | package | 24.0.3-1699.373.pm.1 | x86_64 | Packman Repository
~ zypper se -si vdpau
Loading repository data...
Reading installed packages...
S | Name | Type | Version | Arch | Repository
---+--------------------+---------+----------------------+--------+----------------------
i+ | libva-vdpau-driver | package | 0.7.4-8.2 | x86_64 | Main Repository (OSS)
i | libvdpau1 | package | 1.5-2.2 | x86_64 | Main Repository (OSS)
i | libvdpau1-32bit | package | 1.5-2.2 | x86_64 | Main Repository (OSS)
i | libvdpau_r600 | package | 24.0.3-1699.372.pm.2 | x86_64 | Packman Repository
i | libvdpau_radeonsi | package | 24.0.3-1699.372.pm.2 | x86_64 | Packman Repository
i | vlc-vdpau | package | 3.0.20-1699.8.pm.17 | x86_64 | Packman Repository
~ vainfo
Trying display: wayland
libva info: VA-API version 1.20.0
libva info: User environment variable requested driver 'radeonsi'
libva info: Trying to open /usr/lib64/dri/radeonsi_drv_video.so
libva info: Found init function __vaDriverInit_1_20
libva info: va_openDriver() returns 0
vainfo: VA-API version: 1.20 (libva 2.20.1)
vainfo: Driver version: Mesa Gallium driver 24.0.3 for AMD Radeon RX 7800 XT (radeonsi, navi32, LLVM 18.1.2, DRM 3.57, 6.8.2-1-default)
vainfo: Supported profile and entrypoints
VAProfileH264ConstrainedBaseline: VAEntrypointVLD
VAProfileH264ConstrainedBaseline: VAEntrypointEncSlice
VAProfileH264Main : VAEntrypointVLD
VAProfileH264Main : VAEntrypointEncSlice
VAProfileH264High : VAEntrypointVLD
VAProfileH264High : VAEntrypointEncSlice
VAProfileHEVCMain : VAEntrypointVLD
VAProfileHEVCMain : VAEntrypointEncSlice
VAProfileHEVCMain10 : VAEntrypointVLD
VAProfileHEVCMain10 : VAEntrypointEncSlice
VAProfileJPEGBaseline : VAEntrypointVLD
VAProfileNone : VAEntrypointVideoProc
From the latest snapshot release notes :
=== Details ===
==== Mesa ====
Subpackages: Mesa-libEGL1 Mesa-libGL1 Mesa-libglapi0 libgbm1
fix missing free codecs in builds with non-free codecs enabled
==== Mesa-drivers ====
Subpackages: Mesa-dri Mesa-gallium Mesa-libva libxatracker2
fix missing free codecs in builds with non-free codecs enabled
Going to assume this will be fixed when this trickles down to the Packman packages.
Fixed with the latest Mesa updates from Packman. Thanks to whoever caught and corrected it.
âžś ~ vainfo
Trying display: wayland
libva info: VA-API version 1.20.0
libva info: User environment variable requested driver 'radeonsi'
libva info: Trying to open /usr/lib64/dri/radeonsi_drv_video.so
libva info: Found init function __vaDriverInit_1_20
libva info: va_openDriver() returns 0
vainfo: VA-API version: 1.20 (libva 2.20.1)
vainfo: Driver version: Mesa Gallium driver 24.0.3 for AMD Radeon RX 7800 XT (radeonsi, navi32, LLVM 18.1.3, DRM 3.57, 6.8.4-rc1-1-default)
vainfo: Supported profile and entrypoints
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
VAProfileAV1Profile0 : VAEntrypointEncSlice
VAProfileNone : VAEntrypointVideoProc
system
Closed
April 16, 2024, 2:14pm
13
This topic was automatically closed 7 days after the last reply. New replies are no longer allowed.