Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions Core/Installer/setup.iss
Original file line number Diff line number Diff line change
Expand Up @@ -9,8 +9,8 @@
#ifndef AppVersion
#define AppVersion "1.5.1"
#endif
#define AppPublisher "mlopezsegura"
#define AppURL "https://github.com/mlopezsegura/OpenStreamMS"
#define AppPublisher "OpenstreamCo"
#define AppURL "https://github.com/OpenstreamCo/OpenStreamMultiSeat"
#define AppExeName "OpenStreamMS.exe"
#define AppService "OpenStreamMS"

Expand Down
2 changes: 1 addition & 1 deletion Core/wwwroot/index.html
Original file line number Diff line number Diff line change
Expand Up @@ -756,7 +756,7 @@ <h3 data-i18n="about.title">Acerca de</h3>
<div class="modal-footer about-modal-footer">
<span class="about-license" data-i18n="about.license">MIT License · Open Source</span>
<div style="display:flex;gap:.6rem">
<a href="https://github.com/mlopezsegura/OpenStreamMS" target="_blank" rel="noopener"
<a href="https://github.com/OpenstreamCo/OpenStreamMultiSeat" target="_blank" rel="noopener"
class="btn btn-primary btn-sm">
<svg width="15" height="15" viewBox="0 0 24 24" fill="currentColor">
<path d="M12 0C5.37 0 0 5.37 0 12c0 5.31 3.435 9.795 8.205 11.385.6.105.825-.255.825-.57 0-.285-.015-1.23-.015-2.235-3.015.555-3.795-.735-4.035-1.41-.135-.345-.72-1.41-1.23-1.695-.42-.225-1.02-.78-.015-.795.945-.015 1.62.87 1.845 1.23 1.08 1.815 2.805 1.305 3.495.99.105-.78.42-1.305.765-1.605-2.67-.3-5.46-1.335-5.46-5.925 0-1.305.465-2.385 1.23-3.225-.12-.3-.54-1.53.12-3.18 0 0 1.005-.315 3.3 1.23.96-.27 1.98-.405 3-.405s2.04.135 3 .405c2.295-1.56 3.3-1.23 3.3-1.23.66 1.65.24 2.88.12 3.18.765.84 1.23 1.905 1.23 3.225 0 4.605-2.805 5.625-5.475 5.925.435.375.81 1.095.81 2.22 0 1.605-.015 2.895-.015 3.3 0 .315.225.69.825.57A12.02 12.02 0 0 0 24 12c0-6.63-5.37-12-12-12z"/>
Expand Down
17 changes: 10 additions & 7 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,13 +9,13 @@
Isolated streaming sessions for **Moonlight** and **WebRTC TVs**, and **local seats** that turn one PC into several —
managed from a web dashboard, a tray icon or a REST API.

[![Latest release](https://img.shields.io/github/v/release/mlopezsegura/OpenStreamMS?style=flat-square&color=7c5cff)](https://github.com/mlopezsegura/OpenStreamMS/releases/latest)
[![Downloads](https://img.shields.io/github/downloads/mlopezsegura/OpenStreamMS/total?style=flat-square&color=2dd4bf)](https://github.com/mlopezsegura/OpenStreamMS/releases)
[![Latest release](https://img.shields.io/github/v/release/OpenstreamCo/OpenStreamMultiSeat?style=flat-square&color=7c5cff)](https://github.com/OpenstreamCo/OpenStreamMultiSeat/releases/latest)
[![Downloads](https://img.shields.io/github/downloads/OpenstreamCo/OpenStreamMultiSeat/total?style=flat-square&color=2dd4bf)](https://github.com/OpenstreamCo/OpenStreamMultiSeat/releases)
[![Windows 10/11](https://img.shields.io/badge/Windows-10%20%7C%2011-0078d4?style=flat-square&logo=windows)](#installation)
[![.NET 10](https://img.shields.io/badge/.NET-10-512bd4?style=flat-square&logo=dotnet)](https://dotnet.microsoft.com/download)
[![License: MIT](https://img.shields.io/badge/license-MIT-green?style=flat-square)](LICENSE)

**[⬇ Download](https://github.com/mlopezsegura/OpenStreamMS/releases/latest)** ·
**[⬇ Download](https://github.com/OpenstreamCo/OpenStreamMultiSeat/releases/latest)** ·
[Quick start](#-quick-start) ·
[Features](#-features) ·
[Local seats](#local-seats) ·
Expand Down Expand Up @@ -67,7 +67,7 @@ Each session serves Moonlight apps, Samsung TVs running Moonlight WebRTC, or bot

## 🚀 Quick start

1. **Download** `OpenStreamMS-Setup-x.x.x.exe` from [Releases](https://github.com/mlopezsegura/OpenStreamMS/releases/latest).
1. **Download** `OpenStreamMS-Setup-x.x.x.exe` from [Releases](https://github.com/OpenstreamCo/OpenStreamMultiSeat/releases/latest).
2. **Install** it as Administrator. It sets up the service, the tray icon and everything it needs (TermWrap, ViGEmBus, HidHide).
3. **Open OpenStreamMS** from the Start menu, create your admin account and follow the built-in guide to your first session.

Expand Down Expand Up @@ -117,7 +117,7 @@ Then add the PC in Moonlight (or on your TV) — **Connect** in the dashboard sh

### Option A — Installer (recommended)

1. Download `OpenStreamMS-Setup-x.x.x.exe` from [Releases](https://github.com/mlopezsegura/OpenStreamMS/releases)
1. Download `OpenStreamMS-Setup-x.x.x.exe` from [Releases](https://github.com/OpenstreamCo/OpenStreamMultiSeat/releases)
2. Run it as Administrator and follow the wizard
3. The installer registers the Windows service, adds the tray icon to Windows startup, and optionally starts everything immediately

Expand Down Expand Up @@ -228,7 +228,7 @@ shows what is missing (components, first session, how to connect). After that, t
<summary><b>Streaming protocols and ports</b> — Moonlight, WebRTC, firewall</summary>

Sessions run the Sunshine in `Sunshine\` (or the one set in `SunshineExePath`). With the
[sunshine-webrtc](https://github.com/mlopezsegura/Sunshine-Web-RTC) build, a session can serve:
[sunshine-webrtc](https://github.com/OpenstreamCo/Sunshine-Web-RTC) build, a session can serve:

| Protocol | Clients | Ports opened in the firewall |
|---|---|---|
Expand Down Expand Up @@ -418,4 +418,7 @@ OpenStreamMS.exe (Windows Service, SYSTEM)
OpenStreamMS is released under the [MIT License](LICENSE).
The bundled Sunshine (GPL-3.0) and FreeRDP (Apache-2.0) binaries keep their own licenses — see [THIRD_PARTY_NOTICES.md](THIRD_PARTY_NOTICES.md).

"MS" stands for *Multi-Session*. OpenStreamMS is an independent project, not affiliated with or endorsed by Microsoft. Windows is a trademark of Microsoft Corporation.
"MS" stands for *Multi-Seat*. OpenStreamMS is an independent project, not affiliated with or endorsed by Microsoft. Windows is a trademark of Microsoft Corporation.

> [!IMPORTANT]
> On Windows client editions (Home/Pro), concurrent sessions and local seats rely on [TermWrap](https://github.com/llccd/TermWrap), which patches `termsrv`. This is not permitted by the Windows license terms; using it is each user's decision and responsibility. The supported way to run multiple concurrent sessions is Windows Server with RDS CALs.
2 changes: 1 addition & 1 deletion THIRD_PARTY_NOTICES.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ remains under its own license; the full license text ships next to the binaries.

| Component | Version | License | License file | Source code |
|---|---|---|---|---|
| [Sunshine](https://github.com/LizardByte/Sunshine) (LizardByte), [sunshine-webrtc](https://github.com/mlopezsegura/Sunshine-Web-RTC) build: upstream Sunshine plus Moonlight WebRTC for Samsung TVs | 2026.1006.152353-16-gbcde822b (commit `bcde822bd8f5d750be1eb71c8ccbcb87c98f0b7a`, upstream base `0594f62d4cc6179aa055f0363043adbc8849b62b`) | GPL-3.0 | `Sunshine/LICENSE.txt` | https://github.com/mlopezsegura/Sunshine-Web-RTC/tree/bcde822bd8f5d750be1eb71c8ccbcb87c98f0b7a |
| [Sunshine](https://github.com/LizardByte/Sunshine) (LizardByte), [sunshine-webrtc](https://github.com/OpenstreamCo/Sunshine-Web-RTC) build: upstream Sunshine plus Moonlight WebRTC for Samsung TVs | 2026.1006.152353-16-gbcde822b (commit `bcde822bd8f5d750be1eb71c8ccbcb87c98f0b7a`, upstream base `0594f62d4cc6179aa055f0363043adbc8849b62b`) | GPL-3.0 | `Sunshine/LICENSE.txt` | https://github.com/OpenstreamCo/Sunshine-Web-RTC/tree/bcde822bd8f5d750be1eb71c8ccbcb87c98f0b7a |
| [FreeRDP](https://github.com/FreeRDP/FreeRDP) | 3.32.0 | Apache-2.0 | `FreeRDP/LICENSE.txt` | https://github.com/FreeRDP/FreeRDP |
| [zlib](https://zlib.net) (bundled with Sunshine) | — | zlib | `Sunshine/zlib-LICENSE.txt` | https://github.com/madler/zlib |

Expand Down
22 changes: 13 additions & 9 deletions docs/index.html
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>OpenStreamMS</title>
<title>OpenStreamMS · Multi-Seat</title>
<meta name="description" content="Windows service that runs multiple isolated Sunshine game-streaming sessions for Moonlight, each in its own RDP session, and turns one PC into several local seats with their own monitor, keyboard, mouse, gamepad and audio.">
<link rel="icon" href="data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32'><rect width='32' height='32' rx='7' fill='%237c3aed'/><path d='M12 9l11 7-11 7z' fill='white'/></svg>">
<link rel="preconnect" href="https://fonts.googleapis.com">
Expand Down Expand Up @@ -210,6 +210,7 @@

footer { padding: 40px 0 56px; color: var(--muted); font-size: 14px; border-top: 1px solid var(--border); }
footer .wrap { display: flex; gap: 20px; flex-wrap: wrap; justify-content: space-between; }
footer .legal { flex-basis: 100%; font-size: 12px; line-height: 1.6; opacity: .85; }
</style>
</head>
<body>
Expand All @@ -228,7 +229,7 @@
<a href="#api">API</a>
<a href="#install"><span lang="en">Install</span><span lang="es">Instalación</span></a>
<a href="#fame"><span lang="en">Hall of fame</span><span lang="es">Hall de la fama</span></a>
<a href="https://github.com/mlopezsegura/OpenStreamMS">GitHub</a>
<a href="https://github.com/OpenstreamCo/OpenStreamMultiSeat">GitHub</a>
</div>
<div class="tools">
<button class="chip" id="langBtn" type="button" aria-label="Switch language">ES</button>
Expand All @@ -252,10 +253,10 @@ <h1>
<span lang="es">OpenStreamMS es un servicio de Windows que ejecuta varias sesiones de streaming de juegos con <strong>Sunshine</strong> a la vez, cada una dentro de su propia sesión RDP aislada, con su usuario, escritorio, audio y clientes Moonlight. Conecta más monitores, teclados, ratones y mandos y esas mismas sesiones se convierten en <strong>puestos locales</strong>: varias personas jugando en un solo PC, en la misma habitación. Todo se gestiona desde un panel, en su propia ventana, en el navegador o en el móvil.</span>
</p>
<div class="cta">
<a class="btn primary" href="https://github.com/mlopezsegura/OpenStreamMS/releases">
<a class="btn primary" href="https://github.com/OpenstreamCo/OpenStreamMultiSeat/releases">
<span lang="en">Download installer</span><span lang="es">Descargar instalador</span>
</a>
<a class="btn" href="https://github.com/mlopezsegura/OpenStreamMS">
<a class="btn" href="https://github.com/OpenstreamCo/OpenStreamMultiSeat">
<svg width="16" height="16" viewBox="0 0 16 16" fill="currentColor"><path d="M8 0C3.58 0 0 3.58 0 8c0 3.54 2.29 6.53 5.47 7.59.4.07.55-.17.55-.38 0-.19-.01-.82-.01-1.49-2.01.37-2.53-.49-2.69-.94-.09-.23-.48-.94-.82-1.13-.28-.15-.68-.52-.01-.53.63-.01 1.08.58 1.23.82.72 1.21 1.87.87 2.33.66.07-.52.28-.87.51-1.07-1.78-.2-3.64-.89-3.64-3.95 0-.87.31-1.59.82-2.15-.08-.2-.36-1.02.08-2.12 0 0 .67-.21 2.2.82.64-.18 1.32-.27 2-.27.68 0 1.36.09 2 .27 1.53-1.04 2.2-.82 2.2-.82.44 1.1.16 1.92.08 2.12.51.56.82 1.27.82 2.15 0 3.07-1.87 3.75-3.65 3.95.29.25.54.73.54 1.48 0 1.07-.01 1.93-.01 2.2 0 .21.15.46.55.38A8.013 8.013 0 0016 8c0-4.42-3.58-8-8-8z"/></svg>
<span lang="en">View on GitHub</span><span lang="es">Ver en GitHub</span>
</a>
Expand Down Expand Up @@ -713,8 +714,8 @@ <h3 style="margin-top:0"><span lang="en">Requirements</span><span lang="es">Requ
<li><span lang="en">Optional: WebView2 (included in Windows 11) to open the dashboard in its own window; without it, it opens in the browser</span><span lang="es">Opcional: WebView2 (viene con Windows 11) para abrir el panel en su propia ventana; sin él se abre en el navegador</span></li>
</ul>
<h3 style="margin-top:28px"><span lang="en">Build from source</span><span lang="es">Compilar desde el código</span></h3>
<pre><span class="k">git</span> clone https://github.com/mlopezsegura/OpenStreamMS
<span class="k">cd</span> OpenStreamMS
<pre><span class="k">git</span> clone https://github.com/OpenstreamCo/OpenStreamMultiSeat
<span class="k">cd</span> OpenStreamMultiSeat
<span class="k">dotnet</span> publish -c Release -r win-x64 --self-contained -o publish
publish\OpenStreamMS.exe --install</pre>
</div>
Expand All @@ -736,7 +737,7 @@ <h2><span lang="en">The people who build it</span><span lang="es">Quienes lo con
</ol>
<p class="fame-more">
<span lang="en">Want to be here? Pull requests are welcome on</span><span lang="es">¿Quieres aparecer aquí? Las pull requests son bienvenidas en</span>
<a href="https://github.com/mlopezsegura/OpenStreamMS">GitHub</a>.
<a href="https://github.com/OpenstreamCo/OpenStreamMultiSeat">GitHub</a>.
</p>
</div>
</section>
Expand All @@ -746,7 +747,7 @@ <h2><span lang="en">The people who build it</span><span lang="es">Quienes lo con
<div>
<strong style="color:var(--text)">OpenStreamMS</strong> ·
<span lang="en">MIT License</span><span lang="es">Licencia MIT</span> ·
<a href="https://github.com/mlopezsegura/OpenStreamMS/blob/master/THIRD_PARTY_NOTICES.md"><span lang="en">Third-party notices</span><span lang="es">Avisos de terceros</span></a>
<a href="https://github.com/OpenstreamCo/OpenStreamMultiSeat/blob/master/THIRD_PARTY_NOTICES.md"><span lang="en">Third-party notices</span><span lang="es">Avisos de terceros</span></a>
</div>
<div>
<span lang="en">Built on</span><span lang="es">Construido sobre</span>
Expand All @@ -755,6 +756,9 @@ <h2><span lang="en">The people who build it</span><span lang="es">Quienes lo con
<a href="https://github.com/FreeRDP/FreeRDP">FreeRDP</a>.
<span lang="en">Not affiliated with them.</span><span lang="es">Sin afiliación con ellos.</span>
</div>
<div class="legal">
<span lang="en">“MS” stands for Multi-Seat. OpenStreamMS is an independent project, not affiliated with or endorsed by Microsoft; Windows is a trademark of Microsoft Corporation. On Windows Home/Pro, concurrent sessions and local seats rely on TermWrap, which patches <code>termsrv</code>: this is not permitted by the Windows license terms, and using it is each user's decision and responsibility. The supported way to run multiple concurrent sessions is Windows Server with RDS CALs.</span><span lang="es">“MS” significa Multi-Seat (multipuesto). OpenStreamMS es un proyecto independiente, sin relación con Microsoft ni respaldo suyo; Windows es una marca de Microsoft Corporation. En Windows Home/Pro, las sesiones simultáneas y los puestos locales dependen de TermWrap, que modifica <code>termsrv</code>: la licencia de Windows no lo permite y usarlo es decisión y responsabilidad de cada usuario. La forma soportada de tener varias sesiones simultáneas es Windows Server con licencias RDS CAL.</span>
</div>
</div>
</footer>

Expand Down Expand Up @@ -802,7 +806,7 @@ <h2><span lang="en">The people who build it</span><span lang="es">Quienes lo con
return s;
}
if (fame && window.fetch) {
fetch('https://api.github.com/repos/mlopezsegura/OpenStreamMS/contributors?per_page=100')
fetch('https://api.github.com/repos/OpenstreamCo/OpenStreamMultiSeat/contributors?per_page=100')
.then(function (r) { if (!r.ok) throw new Error(r.status); return r.json(); })
.then(function (list) {
var top = list.filter(function (c) { return !isExcluded(c); }).slice(0, 5);
Expand Down
Loading