Wir sind gerade gestartet. Website und Service werden noch verfeinert – wir bitten schon jetzt um Entschuldigung für mögliche Ungenauigkeiten und Unebenheiten. Ist Ihnen ein Fehler aufgefallen oder funktioniert etwas nicht wie erwartet? Schreiben Sie uns – wir beheben es schnell.

← Alle Projekte
DE
Mehr als TAKT

qsm-rd

QSM Direct ersetzt das noVNC-Bild in der Webkonsole von Proxmox VE durch einen WebRTC-Videostream – im selben Browser-Tab, mit demselben PVE-Login und derselben Berechtigung VM.Console. Auf dem Client wird nichts installiert, und pveproxy und pvedaemon laufen unverändert.

  • Proxmox VE
  • WebRTC
  • LXC
Status
Version 0.4.0. HEVC ist experimentell, und die Live-Migration einer VM mit QSM Display1 wurde nicht qualifiziert. Bei Proxmox ist ein Feature-Request eingereicht (Bug #8106); ein RFC und Patch-Serien für qemu-server und pve-manager liegen vorbereitet im Repository.
Lizenz
GPL-3.0-or-later; das PVE-Konsolenskript, der Signalisierungsdienst, die LXC-Konsole und die Viewer-Seite stehen unter AGPL-3.0-or-later.
Plattformen
Knoten mit Proxmox VE 9; auf dem Client ein Browser mit H.264 und Opus in WebRTC.

Welches Problem es löst

Die Standardkonsole noVNC überträgt geänderte Bildschirmrechtecke. Bei der Arbeit in einem laufenden Desktop, etwa mit Video, Scrollen oder animierten Oberflächen, ergibt das wenige unterscheidbare Bilder pro Sekunde bei hoher Bandbreite, und 3D im Gast gibt es nicht. QSM Direct kodiert die Gastanzeige auf dem Knoten als Video und streamt sie in den Browser. Das README veröffentlicht einen gemessenen Vergleich mit der Standardkonsole noVNC, einschließlich der Fälle, in denen noVNC das bessere Werkzeug bleibt: das erste Bild, ein einzelnes isoliertes Zeigerereignis und alles, bevor ein Betriebssystem läuft.

Wichtigste Funktionen

  • Standardmäßig H.264 über NVENC, QSV, VA-API oder libx264 auf der CPU; HEVC als ausdrückliche, experimentelle Wahl pro VM.
  • VirGL-Gäste mit OpenGL und 3D oder die Adapter Standard VGA, VirtIO und VMware ohne GPU.
  • Ton (Opus), das Browser-Mikrofon im Gast und Text-Zwischenablage in beide Richtungen; in einer VM braucht die Zwischenablage einen optionalen Gast-Agenten.
  • Zeigerbewegungen laufen auf einer eigenen, ungeordneten Spur, die nur den letzten Stand trägt, und können sich nicht hinter einem aufwendigen Frame stauen.
  • LXC-Container mit KDE-Plasma-Desktop: eine Konsole pro tty, jede mit eigenem Anmeldebildschirm.

So funktioniert es

Der Browser schickt sein WebRTC-Angebot an einen knotenlokalen Signalisierungsdienst auf TLS-Port 8007. Der Dienst prüft das PVE-Ticket des Browsers und die Berechtigung VM.Console über PVEs eigenes /access/ticket und reicht das Angebot an einen Terminal-Dienst weiter, der pro VM einen Medien-Worker startet. Der Worker liest die D-Bus-Anzeige von QEMU, kodiert Bild und Ton und sendet beides direkt an den Browser; Eingaben gehen denselben Weg zurück. Alle Betrachter einer VM teilen sich einen Encoder-Stream.

apt install ./qsm-pve-direct_*.deb
systemctl enable --now qsm-pve-direct-terminal.service qsm-pve-direct-signal.service

Voraussetzungen

  • Proxmox VE 9 (pve-manager 9.x); das Paket wird auf Debian 13 gebaut und auf jedem Knoten installiert, auf dem die VM laufen kann.
  • Browser: Chrome, Edge, Chromium mit proprietären Codecs, Safari oder Firefox mit dem OpenH264-Plugin.
  • Netzwerk: TCP 8006 und 8007 sowie eingehendes UDP aus den Netzen der Operatoren; ein Hostname, für den das Knotenzertifikat gültig ist.
  • Encoder: NVENC, QSV, VA-API oder die CPU (etwa ein halber Kern pro offener Konsole mit libx264); das VirGL-Profil braucht ein DRM-Render-Gerät. Bis zu 16 Konsolensitzungen pro Knoten.

Diese Seite fasst README und Dokumentation des Repositorys mit Stand Oktober 2026 zusammen. Maßgeblich ist das Repository selbst.