An all-in-one tool to setup Sunshine with all needed tools (Windows 10/11).
It includes: Sunshine, Virtual Display Driver, Sunshine Virtual Monitor, Playnite and Playnite Watcher.
Warning
🚧This Branch is under development. Bugs can appear.🚧
There are several reasons:
-
A dedicated display for your game stream will be created by the Virtual Display Driver.
-
Sunshine Virtual Monitor will deactivate all your physical monitors and enable the Virtual Display to stream your games.
Note
It will automatically adjust the resolution, quality, HDR option, and frame rate of the Virtual Display based on Moonlight client settings.
-
Playnite will allow you to gather all your games from any platform in one launcher for your convenience.
-
Playnite Watcher stop the stream when the game is closed. (Sunshine does not support it natively)
Note
It will import all your games into Sunshine effortlessly.
- Sunshine-AIO
- Add Custom Resolutions\Frame Rates
- Build the project
- Troubleshooting
- Contributing
- License
- Acknowledgements
- Star History
- Download the Latest Release and execute
Sunshine-AIO.exe
.
Warning
The file might be flagged as Trojan/Malware, but it's a false positive. (It is due to Nuitka build)
To prevent the file being deleted by your anti-virus, make sure to temporarily disable your anti-virus, or add an exception to the folder you want to download the file.
Note
Playnite and Playnite Watcher are optional, but they are installed by default within the everything
command.
-
You will need to add custom resolutions if your client resolutions are not listed here.
-
After you have executed the script once and installed everything:
- Open the
"C:\IddSampleDriver\option.txt"
file and add your custom Resolutions/Frame Rates.
Tip
Open the option.txt
file via Sunshine-AIO from 7. Extra
→ 5. Edit Custom Resolutions/Frame Rates (option.txt)
Important
Make sure to follow the syntax of the file:
option.txt:
RES_WIDTH, RES_HEIGHT, FRAME_RATE
-
Add a line for each frame rate wanted for one resolution.
-
For example:
option.txt:
(...) 3120, 1440, 60 3120, 1440, 90 3120, 1440, 120
Warning
Make sure the Virtual Display Driver is disabled.
- Open Sunshine WebUI and navigate to
Configuration
→Audio/Video
Tab.
Tip
Open Sunshine Config via Sunshine-AIO from 7. Extra
→ 6. Open Sunshine Settings
- Scroll down and add your custom resolutions and custom frame rates here.
- Make sure that every resolutions and frame rates are well indicated in the
"C:\IddSampleDriver\option.txt"
file too.
- If you want to contribute to the project and add some features or even fix some issues by yourself, or anything else, you can fork this repository (See Contributing).
- You will need some pre-requisites:
- Download Latest Python3 and install it on your computer.
Important
Add python to the Path when asked during the installation.
- Download Git for Windows and install it on your computer.
Note
Dynamic pull of the repository and all the files on your local computer would be advantageous, as you can receive updates when they are available using the git pull
command.
Please keep in mind this AIO tool is still in development and you may encounter bugs or issues when using it.
I may have also forgotten to implement some functions due to the fact that the script is at its very first version. I didn’t test all the options that the script provides, because I wanted to provide a first version quickly so as to have your feedback and allow to progress faster than on my own. It works for me, but I suspect that it may not work at first for some of you.
Opening an issue at https://github.com/LeGeRyChEeSe/Sunshine-AIO/issues/new/choose is encouraged to receive initial help and improve the script.
Feel free to ask me any questions, so that I can one day provide the final version of the script to everyone.
Don't forget to configure your Moonlight client to connect to Sunshine and enjoy optimized streaming :)
Any contributions you make are greatly appreciated.
- Fork the Project.
- Create your Feature Branch. (
git checkout -b feature/NewFeature
) - Commit your Changes. (
git commit -m 'Add some NewFeature'
) - Push to the Branch. (
git push origin feature/NewFeature
) - Open a Pull Request.
Thanks to every contributors who have contributed in this project.
Distributed under the MIT License. See LICENSE for more information.
Shoutout to LizardByte for the Sunshine repo: https://github.com/LizardByte/Sunshine
Shoutout to itsmikethetech for the Virtual Display Driver repo: https://github.com/itsmikethetech/Virtual-Display-Driver
Thanks to Cynary for the Sunshine Virtual Monitor scripts: https://github.com/Cynary/sunshine-virtual-monitor
Shoutout to JosefNemec for Playnite: https://github.com/JosefNemec/Playnite
Shoutout to Nonary for the PlayNiteWatcher script: https://github.com/Nonary/PlayNiteWatcher
Author/Maintainer: Garoh | Discord: garohrl