Skip to content

MPC-VR RTX SuperRes 1.1 / 2023.03.02-4e2e160

Compare
Choose a tag to compare
@emoose emoose released this 02 Mar 13:13
· 4 commits to superres since this release

(old release, see https://github.com/emoose/VideoRenderer/releases for latest)

MPC VideoRenderer with code to enable NVIDIA RTX VSR & Intel Xe VPE scalers.

Tested with the Feb 2023 MPC-BE 1.6.6 release, also known to work with clsid2's updated MPC-HC fork, and most likely other DirectShow-based players too (ie: anything that worked with madVR)

480p madVR NGU Sharp comparison: https://imgsli.com/MTU4NTg4/0/2
480p disabled/enabled comparison: https://imgsli.com/MTU4MzM1


Changes in rtx-1.1:

  • Prevent activating VSR for P010/P016-formatted videos (common in 10-bit H.265) due to memory leak in VSR.
    A workaround to automatically convert them & keep scaling with VSR can be found at bottom of #1 (comment) (thanks to clsid2 for the tip!)

  • Prevent activating for HDR content due to HDR being unsupported by VSR.

  • Added support for Intel Xe VPE scaling, now checks vendor ID and activates Nvidia VSR/Intel VPE depending on card being used.

  • Added Nvidia-VSR-requested / Intel-VPE-requested text to MPC-VR stats overlay if we've requested NVIDIA VSR / Intel VPE to be activated.
    Note that this isn't a confirmation that the scaler is actually active, just that we've asked them to be used, doesn't seem to be any way to ask if it's active yet.

  • Modified install script, hopefully less chance of issues.


Setup:

  • Extract the ZIP to somewhere you want to install the renderer (make sure not to move/delete it afterwards or video renderer will break)
    (if upgrading from previous version, recommend overwriting your previous install & following the rest of this guide)

  • Right click the Install_MPCVR_32.cmd file and choose Run as Administrator, same for Install_MPCVR_64.cmd.

  • Run the Reset_Settings.cmd file to make sure VideoRenderer settings are set properly.

  • Inside MPC-HC, go to View > Options > Playback > Output, and pick MPC Video Renderer from the dropdown list.
    (for MPC-BE this should be under View > Options > Video)

  • Press OK to all dialogs and then close down your player (usually needs to close down for it to change renderer properly)

  • Finally open a video file, now enabling/disabling the SuperRes option in NVIDIA Control Panel should have a noticeable difference once you switch back to the player window (some players may need to resume playback first)

  • It's recommended to follow the steps at bottom of #1 (comment) to automatically convert any P01X content to a format that VSR has better support for.


Known issues:

  • Scaling is disabled for P010/P016-formatted videos (common in H.265 10-bit), due to a rapid memory leak in the Nvidia scaler.
    A workaround for this can be found at bottom part of #1 (comment) (thanks to clsid2 for the tip!)

  • Prefer maximum performance enabled in global NVCP settings will increase power draw when VSR is used outside of web-browsers, adding your video player to NVCP's Program Settings tab and overriding power management mode should help lower usage of it.

  • If it doesn't seem to have any effect for you, check in the VideoRenderer properties that the Use Direct3D 11 & Use for resizing checkboxes are enabled, and maybe try it with the Use dithering setting disabled
    (Properties might not be available in certain players such as MPC-HC, you can download MPC-BE portable from the link above to access it from inside MPC-BE, changes will take effect across any player using the VideoRenderer)

  • If you use a HDR screen and it doesn't seem to activate even with non-HDR content (with no Nvidia-VSR / Intel-VPE showing on stats overlay), try the rtx1.2 build from #5 (comment) - please report in that thread if the build worked for you.

  • Issues with VSR deactivating/activating at random might be solved by changing your graphics adapter performance settings in Windows (this is separate to the NVCP performance setting), the guide here explains how (skip to Graphics performance preference settings section)

  • Nvidia-VSR only supports Nvidia 30 & 40 series right now, unsure which cards Intel VPE supports.
    (the FAQ below mentions that 20 series support will be added later on)

  • Refer to the Nvidia VSR FAQ for more information: https://nvidia.custhelp.com/app/answers/detail/a_id/5448


Release post on reddit, feel free to post any questions there: https://www.reddit.com/r/nvidia/comments/11e7ukr/game_ready_driver_53118_faqdiscussion/jacpqwt/

Will keep this fork updated with the latest MPC-VR commits too, as it's not certain when SuperRes might get merged into the main MPC-VR project yet.
(you can bookmark the releases page or add to your Github watch list above to keep tabs on any new updates)

Nvidia users may also be interested in DLSSTweaks too: https://github.com/emoose/DLSSTweaks