Duo (1 PC, multiple users) (Patreon)
Downloads
Content
What is Duo?
Duo is an HDR-compatible, headless, bare-metal, multi-seat streaming server based around RdpWrap, Sunshine, Moonlight and a variety of custom drivers & libraries.
You can think of it as a version of Sunshine that allows multiple users to use the same computer at the same time without occupying the computer's physical session or otherwise interfering with each other.
Each session's resolution, refresh rate, scaling and dynamic range are controlled directly via Moonlight.
The typical "1 PC, multiple users" scenario that we all know and love.
Duo (native) versus Castor (virtualized)
Those that have been supporting me for a while might remember Castor.
Castor is another piece of software I provide over here on my Patreon that too serves the purpose of sharing a single computer with multiple users, but goes about it in a different way.
While Duo lets multiple users share the same physical computer using a combination of custom drivers & libraries, Castor creates a new virtual computer for every user, including all of the overhead that comes with that.
Possible use cases
Empowering your handheld device
You own a handheld device that can't handle the latest games, but still want to play them?
Start a Duo instance on your gaming computer, connect to it, and play that game, all while still being able to use your computer normally.
Sharing your gaming hardware with friends or family
Your friend / family member doesn't own a decent enough computer but you do?
Start a Duo instance on your gaming computer, let them connect to it, and play that fancy multiplayer game together that they just can't run right.
Hosting your own cloud gaming server
Enable UPnP on your router, toggle the according setting in your instance's admin panel and your computer is now reachable anywhere in the world.
Getting started with Duo
Setup Guide
A step-by-step guide on how to get started with Duo.
Troubleshooting
A list of frequently asked-about issues and how to resolve them.
Known Issues
A list of known issues that we really can't do all too much about due to technical limitations.
Changelog
Version 1.4.5
Added support for Windows Core OS containers
Added support for non-administrative Users on Windows Home
The Auto Start setting can now be changed while the service is running
Updated RdpWrap
Version 1.4.4
Instances now pause whenever the host suspends
Updated the AV exclusion list to improve hooking speed
Updated the bundled RdpWrap.dll & RdpWrap.ini
Version 1.4.3
Improved the RdpWrap.ini updater
Updated built-in RdpWrap.ini
Version 1.4.2
The scale factor adjustment range has been changed to 50~200%
Version 1.4.1
Fixed a memory leak in Duo.exe
Version 1.4.0
Fixed a hook timing issue
Fixed a bug in the termsrv.dll version reader
Disabled some no-longer-needed debug messages
Updated built-in RdpWrap.ini
Version 1.3.9
Updated Sunshine (fixes pairing issue)
Updated built-in RdpWrap.ini (adds support for Windows 11 10.0.22621.2080)
Version 1.3.8
Inlined RdpWrap
Inlined aardwolf
Inlined TaskScheduler
RdpWrap.ini updates are now automated
Instances can now recover from adapter errors
Instances can now be started & stopped on-demand via a WebUI
Removed no-longer-needed python dependency
Reduced service & session startup time
Updated Duo Manager
Updated Sunshine
Version 1.3.7
Improved capture performance
Fixed an issue that corrupted instance setting files after web admin panel configuration changes
Version 1.3.6
The UI scale factor can now be adjusted with a multiplier (0.13888 * height * multiplier)
Removed unneeded python components
Version 1.3.5
Memory integrity is now disabled (to ensure RdpIdd.dll & IddCx.dll can be patched properly)
Version 1.3.4
Updated Sunshine
Duo's unlock status is now visible in the title bar (as a + symbol in the version number)
Duo's revision number has been removed from the title bar
The web admin panel button now doubles as an online indicator
Version 1.3.3
Duo can now spawn multiple instances of Steam out-of-the-box (see assets\apps.json)
Version 1.3.2
Added support for Windows 10 21H2
Network Level Authentication is now force-enabled
Render adapters are now chosen based on their available dedicated video memory
Instances linked to expired user passwords will now be skipped
Left-over python processes are now being detected & garbage-collected
Version 1.3.1
Added support for Windows 10 22H2
Scale factors are now notched to 25% increments
Improved the display configuration change response time
Improved the instance start time
Fixed a rare black screen error
Fixed a session join error
Fixed a session stop error
Version 1.3.0
Fixed an issue with UI scaling at sub-720p resolutions
Version 1.2.9
Fixed a gamepad isolation issue
Resolution, refresh rate, scaling and HDR can now be controlled via Moonlight
The version number is now visible in Duo Manager
Version 1.2.8
Improved gamepad isolation
Removed no-longer-needed libraries
Passwords are now hidden
Instances can now be disabled
Each instance has its own application list now
Version 1.2.7
Fixed several input issues
Version 1.2.6
Improved capture performance
Version 1.2.5
Fixed the XBOX360 gamepad mode
Fixed a screen tearing issue
Version 1.2.4
Optimized frame capture performance
Reworked gamepad isolation algorithm
Version 1.2.3
Fixed a framedrop issue
Fixed a desktop render glitch
Fixed a gamepad isolation bug
Version 1.2.2
Optimized the framebuffer capture code
Optimized the service start code
Version 1.2.1
Implemented PnP device redirection (deprecating HIDHide)
Implemented a physical HID device watchdog
Moved WTS API calls into their own subprocesses (to work around a known API issue)
Fixed several instance start errors
Version 1.2.0
Added HDR support
Updated Sunshine
Fixed two instance start deadlocks
Fixed custom scale factors (again)
Rewrote RdpIdd.dll & IddCx.dll patches so that Windows Update can't break them anymore
Version 1.1.1
Fixed a service shutdown deadlock
Fixed a desktop scaling issue
Fixed animated mouse cursors
Fixed monochrome mouse cursors
Fixed mouse cursor scaling
Optimized mouse cursor blending
Increased the default log verbosity
Raised minimum system requirements to Windows 11 23H2 (in preparation for HDR support)
Version 1.1.0
HidHide segregation code is now more resilient
Physical devices now get jailed to the active WTS console session on Sunshine ViGEmBus callback invocation
Virtual DS4 gamepads now get jailed properly
Version 1.0.9
Automatically enables HidHide cloaking when required now
Version 1.0.8
Updated Sunshine
Removed sunshinesvc.exe (Duo doesn't need it)
Gamepad segregation is now provided via ViGEmBus & HidHide (no longer experimental)
Version 1.0.7
Removed version update message (as Duo isn't compatible with upstream Sunshine)
Sunshine applications now launch in the right user session
I had to re-upload this one because Windows Defender ate a file (please re-download & re-install if your Duo service refuses to start)
Version 1.0.6
Fixed an issue with spaces in usernames
Version 1.0.5
Fixed an issue that affected Windows 11 Home Edition
Version 1.0.4
Fixed desktop scaling (after KB5030310 broke it)
Version 1.0.3
Fixed the software encoder's video format settings
Removed the DXGI test code as its no longer needed
Version 1.0.2
Added support for Microsoft's new IddCx20 API
Version 1.0.1
Added support for KB5030310 (23H2 Preview)
Version 1.0.0
Initial release
Downloads