https://bugs.freedesktop.org/show_bug.cgi?id=94471
Bug ID: 94471 Summary: Tonga UVD 4Kx4K = failed to allocate a buffer Product: Mesa Version: git Hardware: Other OS: All Status: NEW Severity: normal Priority: medium Component: Drivers/Gallium/radeonsi Assignee: dri-devel@lists.freedesktop.org Reporter: adf.lists@gmail.com QA Contact: dri-devel@lists.freedesktop.org
I see >= tonga uvd height has recently been increased -
https://cgit.freedesktop.org/mesa/mesa/commit/?id=353a4f844f9e845dad93de9c28...
radeon/uvd: increase max height to 4096 for VI and newer With this issue 'mpv --hwdec=vdpau --vo=vdpau <stream>' fails for vdpau decode if the stream height is 4096. Vdpau decode of height upto 4096 is necessary usecase on amdgpu driver for VI and newer platforms.
The fix is in driver specific implementation of "Decoder Query Capabilities" API to return 4096 for VI and newer platforms. With this fix vdpauinfo reports height support as 4096 and mpv for vdpau decode works fine for 4096 height streams.
On agd5f drm-fixes-4.5 4096x4096 fails for me (also fails with --vo vdpau)
andy [~]$ mpv --hwdec=vdpau /mnt/sdb1/ffmpeg-mpl-tests/x264-4096.mkv Playing: /mnt/sdb1/ffmpeg-mpl-tests/x264-4096.mkv (+) Video --vid=1 (*) (h264) amdgpu: Failed to allocate a buffer: amdgpu: size : 0 bytes amdgpu: alignment : 4096 bytes amdgpu: domains : 2 amdgpu: Failed to allocate a buffer: amdgpu: size : 0 bytes amdgpu: alignment : 4096 bytes amdgpu: domains : 2 EE radeon_uvd.c:1109 ruvd_create_decoder UVD - Can't allocated bitstream buffers. [vo/opengl/x11] Disabling screensaver failed (-1). Make sure the xdg-screensaver script is installed. Using software decoding. VO: [opengl] 4096x4096 => 7282x4096 yuv420p
dmesg
[ 8308.529176] [TTM] Illegal buffer object size [ 8308.529210] [drm:amdgpu_gem_object_create [amdgpu]] *ERROR* Failed to allocate GEM object (0, 2, 4096, -22) [ 8308.529326] [TTM] Illegal buffer object size [ 8308.529339] [drm:amdgpu_gem_object_create [amdgpu]] *ERROR* Failed to allocate GEM object (0, 2, 4096, -22)