windows.media.playback.mediaplayer: EXCEPTION_ACCESS_VIOLATION in get_SystemMediaTransportControls() crashes app on unpackaged MediaPlayer.SystemMediaTransportControls access
Issue transferred from https://github.com/ValveSoftware/Proton/issues/9990.
@Tseshongfeeshur posted on 2026-07-19T15:07:57:
On launch (or shortly after starting playback), the game shows a native
MessageBox with the text "This application requires a package identity."
Closing the dialog immediately terminates the process.
Proton debug log shows the app activates Windows.Media.Playback.MediaPlayer
via RoGetActivationFactory, which succeeds, but the subsequent
QueryInterface call for get_SystemMediaTransportControls() fails with
E_NOINTERFACE and is immediately followed by a genuine
EXCEPTION_ACCESS_VIOLATION (code=c0000005) inside
windows.media.playback.mediaplayer.dll:
fixme:mediaplayer:media_player_QueryInterface {ee0660da-031b-4feb-bd9b-92e0a0a8d299} not implemented, returning E_NOINTERFACE.
trace:seh:dispatch_exception code=c0000005 (EXCEPTION_ACCESS_VIOLATION) flags=0 addr=00006FFFFB16306D
The application uses the recommended unpackaged-desktop-app path
(MediaPlayer.SystemMediaTransportControls property, not
SystemMediaTransportControls.GetForCurrentView()), which per Microsoft
documentation does not require MSIX package identity, so this appears to be a
Wine implementation gap rather than a genuine Windows restriction being
correctly replicated. A Wine merge request implementing
IMediaPlayer2::get_SystemMediaTransportControls()
(https://gitlab.winehq.org/wine/wine/-/merge_requests/8951) suggests this
method was previously unimplemented / only partially implemented, matching
the observed "activation succeeds, QueryInterface crashes" behavior.
Reproduced identically on both Proton Experimental (20260713) (LOG) and the latest
GE-Proton, with the same crash address and same DLLs involved
(windows.media.playback.mediaplayer.dll, windows.media.mediacontrol.dll).
Manually replacing these two builtin DLLs with the versions from a native Arch Linux Wine install
(which does not exhibit this crash when running the exe outside Steam) did
not resolve the issue, suggesting either an ABI mismatch was silently masking
the swap, or the crash originates from a related code path not covered by
just these two files.
proton experimentalx1 2026-07mediacontrol.dllx1 2026-07mediaplayer.dllx1 2026-07
Compatibility Report
System Information
I confirm:
Symptoms
I’ve tried launching it with several different Proton versions, but each time a JVM crash dialog pops up.
steam-3009140.log