Author Topic: Using shaders with MPC-HC or MPC-BE and madVR  (Read 8911 times)


  • Hero Member
  • *****
  • Posts: 2558
Many MusicBee users choose either MPC-HC or MPC-BE as external video players.  Both of these players come with two Microsoft DirectX-9 files, d3dx9_43.dll and d3dcompiler_47.dll, that allow them to be used without having to do a system install of the whole DX-9 package.  However, if that whole package is not installed and madVR is the chosen renderer, you will not be able to use the players' built-in shaders.  This is because madVR actually checks for d3dcompiler_43.dll, not the updated *_47 version supplied by the players.

To enable shader use and not have to do a full install of the DX9 redist, first download the redist without installing it from here: .  Then, follow these steps:

1.  Extract the contents of the installer (do not "run" it!) with 7-zip into an empty folder.

2.  Find the cab file or, depending if your MPC-HC/BE install is 64-bit or 32-bit.

3.  Open the appropriate cab file and extract D3DCompiler_43.dll.

4.  Copy the extracted file to the main folder of either MPC-HC or MPC-BE; you can leave the existing d3dcompiler_47.dll (and d3dx9_43.dll) in the folder.

5.  Delete the folder you extracted the whole redist to.  You can now use the players' supplied shaders when using madVR as a renderer.


NOTE: an unaltered PORTABLE install of MPC-BE (but not MPC-HC) requires an additional step to allow shader usage in any circumstance:

a) Open MPC-BE, select the option "Store settings in the player folder" and exit the player;  then restart it, disable the option, and exit again.

b) The shader files will have then been copied to ..Users/<username>/AppData/Roaming/MPC-BE/Shaders.

c) Shaders can now be used with the player.

This procedure is only necessary if you used the Portable, not Installer version of MPC-BE.
Last Edit: May 07, 2020, 11:07:46 PM by sveakul