|
1 | | -#### Virtual Display for sunshine-super |
| 1 | +# 🛠️ Virtual Display Driver Development Team |
2 | 2 |
|
3 | | -#### changelog |
| 3 | +| 👤 Developer | 🏷️ Role | 💖 Support Us | |
| 4 | +| --------------------- | ----------------------------------- | --------------------------------------------------------------------------------------------------------------------- | |
| 5 | +| **[MikeTheTech](https://github.com/itsmikethetech)** | Project Manager, Lead Programmer | [Patreon](https://www.patreon.com/mikethetech) :gem: / [GitHub Sponsors](https://github.com/sponsors/itsmikethetech/) 💖 | |
| 6 | +| **[Jocke](https://github.com/zjoasan)** | Programmer, Concept Design | [GitHub Sponsors ](https://github.com/sponsors/zjoasan) 💖 | |
4 | 7 |
|
5 | | -##### 1.0.26.021201 |
6 | | -1. update install scripts. |
7 | | -2. merge from master. |
8 | | -3. update changeres-VDD script. |
| 8 | +:bulb: *We appreciate your support—every contribution helps us keep building amazing experiences!* |
9 | 9 |
|
10 | | -##### 1.0.25.102701 |
11 | | -1. move script to child directory,like ./scripts/vdd/ . |
12 | | -2. add set display mode script for extend. |
13 | | -3. add set disable vdd after first setup. |
| 10 | +# <img src="https://github.com/user-attachments/assets/22ff37ba-a8ea-4b65-b7b2-e7fcb09d858b" height="32" width="32"></img> Virtual Display Driver |
| 11 | +This project creates a _virtual monitor_ in Windows that functions just like a physical display. It is particularly useful for applications such as **streaming, virtual reality, screen recording,** and **headless servers—systems** that operate without a physical display attached. |
14 | 12 |
|
15 | | -##### 1.0.25.102401 |
16 | | -1. add vdd install and uninstall shell bat. |
17 | | -2. optimize script make workspace is current directory. |
| 13 | +Unlike traditional monitors, this virtual display supports custom resolutions and refresh rates beyond hardware limitations—offering greater flexibility for advanced setups. You can also use custom EDIDs to simulate or emulate existing hardware displays. |
| 14 | + |
| 15 | +## 🧾 Changelog (recent) |
| 16 | + |
| 17 | +- **PCI-bus based GPU selection (LUID)**: Improved multi-GPU render adapter selection by resolving an adapter **LUID from a PCI bus number** (more deterministic than name-only matching). |
| 18 | +- **Device/PCI-slot friendly naming**: Improved device identification / friendly naming using DeviceID and PCI slot info. |
| 19 | +- **GetIddCx helper tool**: Added source for the `GetIddCx` utility to query IddCx versions. |
| 20 | +- **EDID integration**: Added EDID integration support for custom/virtual monitor profiles. |
| 21 | +- **Performance optimization**: Driver performance improvements (various internal optimizations). |
| 22 | + |
| 23 | +## ⬇️ Download Latest Version |
| 24 | + |
| 25 | +- [Driver Installer (Windows 10/11)](https://github.com/VirtualDrivers/Virtual-Display-Driver/releases) - Check the [Releases](https://github.com/VirtualDrivers/Virtual-Display-Driver/releases) page for the latest version and release notes. |
| 26 | +- **Winget:** `winget install --id=VirtualDrivers.Virtual-Display-Driver -e` |
| 27 | + |
| 28 | +> [!IMPORTANT] |
| 29 | +> Before using the Virtual Display Driver, ensure the following dependencies are installed: |
| 30 | +> - **Microsoft Visual C++ Redistributable** |
| 31 | +> If you encounter the error `vcruntime140.dll not found`, download and install the latest version from the [Microsoft Visual C++ Redistributable page](https://learn.microsoft.com/en-us/cpp/windows/latest-supported-vc-redist?view=msvc-170). |
| 32 | +> |
| 33 | +> **Driver update safety:** If you're about to install **major GPU/chipset driver updates**, uninstall VDD first. If you get a black screen or display priority gets scrambled, boot into **Safe Mode** and uninstall VDD to recover. |
| 34 | +
|
| 35 | + |
| 36 | +## 🛠️ Installation |
| 37 | + |
| 38 | +- Step 1: Download the Virtual Driver Control app. |
| 39 | + - You can download the installer directly from the [Releases](https://github.com/VirtualDrivers/Virtual-Display-Driver/releases) page. |
| 40 | + |
| 41 | +- Step 2: Extract to a folder and run the app |
| 42 | + - Launch the VDC. |
| 43 | + - Click the Install button. |
| 44 | + |
| 45 | +- Step 3: Verify the Installation (Optional) |
| 46 | + - Check if the Virtual Display Driver is correctly installed by running the following: |
| 47 | + - **Device Manager:** Check "Device Manager" under "Display Adapters." |
| 48 | + - **Settings:** Check display settings under system settings and see if the virtual displays show. |
| 49 | + |
| 50 | +While VDC is a good and friendly way to work with VDD, you can also do a a lot manually. Like adding or removing resolutions or enable/disable |
| 51 | +functions, which is done by editing vdd_settings.xml. You should be able to locate the file at the default location: |
| 52 | +```C:\VirtualDisplayDriver\vdd_settings.xml ``` |
| 53 | + |
| 54 | +For more information about manual installation, uninstallation and "personalization", please check out the [Wiki](https://github.com/VirtualDrivers/Virtual-Display-Driver/wiki) here on |
| 55 | +the project GitHub repository. If you are into tinkering, check out the Powershell scripts in [Community scripts](https://github.com/VirtualDrivers/Virtual-Display-Driver/tree/master/Community%20Scripts). |
| 56 | + |
| 57 | +## 🤔 Comparison with other IDDs |
| 58 | + |
| 59 | +The table below shows a comparison with other popular Indirect Display Driver |
| 60 | +projects. |
| 61 | + |
| 62 | +| Project | Iddcx version | Signed | SDR | HDR | H-Cursor | Tweakable | ARM64 Support | Custom EDID | Floating Point Refresh Rates | |
| 63 | +| :--- | :---: | :---: | :---: | :---: | :---: | :---: | :---: | :---: | :---: | |
| 64 | +| [Virtual-Display-Driver (HDR)] | 1.10 (latest) | ✅ | ✅ (8/10bit) | ✅ (1-/12bit) | ✅ | ✅ | ✅¹ | ✅ | ✅ | |
| 65 | +| [usbmmid_v2] | | ✅ | ✅ (8bit) | | | | | | | |
| 66 | +| [virtual-display-rs] | 1.5 | | ✅ (8bit) | | ✅ | ✅ | | | | |
| 67 | +| [parsec-vdd]| 1.5 | ✅ | ✅ (8bit) | | ✅ | ✅ | | | | |
| 68 | +| [lddSampleDriver] | 1.2 | | ✅ (8bit) | | | | | | | |
| 69 | +| [RustDesklddDriver] | 1.2 | | ✅ (8bit) | | | | | | | |
| 70 | + |
| 71 | +¹ ARM64 Support in Windows 11 24H2 or later may require test signing be enabled. |
| 72 | + |
| 73 | +HDR Support Now Available for Windows 11 23H2+ |
| 74 | + |
| 75 | +## ▶️ Videos and Tutorials |
| 76 | + |
| 77 | +### Installation Video |
| 78 | + |
| 79 | +[](https://youtu.be/jN5YnHlC0fE) |
| 80 | + |
| 81 | + |
| 82 | + |
| 83 | +## 🤝 Sponsors |
| 84 | + |
| 85 | +<table> |
| 86 | + <tr> |
| 87 | + <td><img src="https://github.com/user-attachments/assets/ca93d971-67dc-41dd-b945-ab4f372ea72a" /></td> |
| 88 | + <td>Free code signing on Windows provided by <a href="https://signpath.io">SignPath.io</a>, certificate by <a href="https://signpath.org">SignPath Foundation</a></td> |
| 89 | + </tr> |
| 90 | +</table> |
| 91 | + |
| 92 | +<table> |
| 93 | + <tr> |
| 94 | + <td>Advanced 32bit IEEE Float Audio brought to you by **Lune Studios**.</td> |
| 95 | + </tr> |
| 96 | +</table> |
| 97 | + |
| 98 | +## Acknowledgements |
| 99 | + |
| 100 | +- Special thanks to **[@ye4241](https://github.com/ye4241)** for submitting the package to Microsoft (WinGet). |
| 101 | + |
| 102 | +- Shoutout to **[MikeTheTech](https://github.com/itsmikethetech)** Project Manager, Owner, and Programmer |
| 103 | +- Shoutout to **[zjoasan](https://github.com/zjoasan)** Programmer. For scripts, EDID integration, and parts of installer. |
| 104 | +- Shoutout to **[Bud](https://github.com/bud3699)** Former Lead Programmer, has since left the project. |
| 105 | +- Shoutout to **[Roshkins](https://github.com/roshkins/IddSampleDriver)** for the original repo. |
| 106 | +- Shoutout to **[Baloukj](https://github.com/baloukj/IddSampleDriver)** for the 8-bit / 10-bit support. (Also, first to push the new Microsoft Driver public!) |
| 107 | +- Shoutout to **[Anakngtokwa](https://github.com/Anakngtokwa)** for assisting with finding driver sources. |
| 108 | +- **[Microsoft](https://github.com/microsoft/Windows-driver-samples/tree/master/video/IndirectDisplay)** Indirect Display Driver/Sample (Driver code) |
| 109 | +- Thanks to **[AKATrevorJay](https://github.com/akatrevorjay/edid-generator)** for the hi-res EDID. |
| 110 | +- Shoutout to **[LexTrack](https://github.com/lextrack/)** for the MiniScreenRecorder script. |
| 111 | + |
| 112 | +## Star History |
| 113 | + |
| 114 | +[](https://www.star-history.com/#VirtualDrivers/Virtual-Display-Driver&Date) |
| 115 | + |
| 116 | +## Disclaimer: |
| 117 | + |
| 118 | +This software is provided "AS IS" with NO IMPLICIT OR EXPLICIT warranty. It's worth noting that while this software functioned without issues on our systems, there is no guarantee that it will not impact your computer. It operates in User Mode(Session0), which reduces the likelihood of causing system instability, such as the Blue Screen of Death. However, exercise caution when using this software. |
0 commit comments