Skip to content

[BUG] Black screen with AMD Radeon 890M (RDNA 3.5) - SIVPE ERROR in Mesa driver #87

@mellow-fox

Description

@mellow-fox

Before opening an issue, please confirm:

  • The stream works in VLC/another player
  • I've read the Browser Codec Support, Supported Stream Types and
    Troubleshooting sections in the README
  • I've tried enabling "Force Proxy" for CORS issues
  • I've tried enabling "Force Audio Transcode" for audio codec issues
  • I've tried enabling "Force Remux" for video playback issues

Describe the bug
When hardware transcoding is enabled with hwEncoder: vaapi on an AMD Radeon 890M (RDNA 3.5 / Strix Point), FFmpeg fails with repeated SIVPE ERROR messages and the video displays a black screen. The error comes
from the Mesa radeonsi driver attempting to use the Video Processing Engine (VPE) which is not properly supported for this new GPU architecture.

Even when switching to hwEncoder: software, the errors persist because the container still has access to /dev/dri and FFmpeg/Mesa attempts to use hardware acceleration regardless.

Source Type

  • Xtream Codes
  • M3U Playlist

Stream Information (if applicable)

  • Audio Codec (if known): AAC Stereo
  • Video Codec (if known): H264

To Reproduce

  1. Deploy NodeCast-TV on a system with AMD Radeon 890M (Ryzen AI 9 HX PRO 370)
  2. Pass /dev/dri device to the container for hardware transcoding
  3. Set hwEncoder: vaapi in settings
  4. Play any live TV channel
  5. See black screen and logs flooded with SIVPE errors

Expected behavior
Hardware transcoding should work with AMD VAAPI, or gracefully fall back to software encoding without errors.

Console/Server Logs
[FFmpeg b51bf43cad5dfaa2] SIVPE ERROR ../src/gallium/drivers/radeonsi/si_vpe.c:947 si_vpe_construct_blt Failed in checking process operation and build settings(9)
[FFmpeg b51bf43cad5dfaa2] SIVPE ERROR ../src/gallium/drivers/radeonsi/si_vpe.c:947 si_vpe_construct_blt Failed in checking process operation and build settings(9)
(repeated hundreds of times)

[TranscodeSession 9de41f69a54ba5b2] Command: ffmpeg -hide_banner -loglevel warning ... -c:v libx264 -preset veryfast ...
[FFmpeg 9de41f69a54ba5b2] [libx264 @ 0x556010c69e40] frame MB size (240x135) > level limit (8192)

Screenshots
N/A - Black screen on playback

Environment

  • Deployment: Docker on Unraid 7.0
  • OS: Unraid with kernel 6.12.54
  • Browser: Chrome
  • Hardware: Minisforum N5 Pro with AMD Ryzen AI 9 HX PRO 370 + Radeon 890M (RDNA 3.5)
  • GPU detected as: c5:00.0 Display controller: Advanced Micro Devices, Inc. [AMD/ATI] Strix [Radeon 880M / 890M] (rev d1)

Additional context
The Radeon 890M is a very recent GPU (RDNA 3.5 architecture, released mid-2024). The Mesa driver in the Docker image likely does not have proper support for the VPE (Video Processing Engine) on this architecture.

Possible solutions:

  1. Update the container base image to include Mesa 24.2+ which has better RDNA 3.5 support
  2. Add an environment variable (e.g., AMD_DEBUG=novpe or LIBVA_DRIVER_NAME=null) to disable VPE when software encoding is selected
  3. Provide a workaround in documentation for users with unsupported AMD GPUs

Workaround (current):
Remove /dev/dri from the container and use pure software transcoding, but this loses the benefit of hardware acceleration entirely.

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions