Standby-Modus mit laufendem OBS Studio in Windows

Wenn jemand meinen vorherigen Guide genutzt hat, um seinen OBS Replay Buffer als ShadowPlay-Ersatz zu nutzen, dem wird eventuell auffallen, dass unter Windows weder Computer noch Monitor den Standby-Modus wechseln, während OBS Studio läuft.

Das ist in vieler hinsicht ärgerlich und Besitzer von OLED-Monitoren haben hier ein besonderes Problem, da der Monitor nicht permanent laufen sollte, im Burn-In zu vermeiden.

Um den Geräten zu erlauben in den Standby-Modus zu wechseln, während OBS Studio läuft, benötigt man einen Griff in die nicht ganz so offensichtliche Trickkiste von Windows.

Ich habe mir ein Windows Batch-Skript aus verschiedenen gegoogelten Lösungen zusammengeschrieben, das man als .bat Datei abspeichern und im Autostart-Ordner verknüpfen kann:

@echo off

echo Waiting for OBS to start...
:search
tasklist|find "obs64.exe"
IF %ERRORLEVEL% == 0 GOTO :found
TIMEOUT /T 1
GOTO :search

:found
echo OBS started
powercfg -requestsoverride process obs64.exe display system awaymode

Was das Skripts genau macht, erkläre ich hier im weiteren.

@echo off

Vielen Leuten bestimmt schon bekannt; Dies weist dem Batch-Skript an, den ausgeführten Befehl nicht noch einmal auszugeben, sondern nur die Programmausgaben.

echo Waiting for OBS to start...
:search
tasklist|find "obs64.exe"
IF %ERRORLEVEL% == 0 GOTO :found
TIMEOUT /T 1
GOTO :search

:found

Dies ist eine kleine Schleife. Zuerst wird "Waiting for OBS to start..." ausgegeben und dann suchen wir mit tasklist|find "obs64.exe", ob das Programm obs64.exe ausgeführt wird. mit TIMEOUT /T 1 wird eine Sekunde gewartet, bis noch einmal OBS gesucht wird.

Die Schleife bricht erst ab, wenn OBS Studio gestartet ist. Sollte OBS abstürzen bevor das Skript es finden konnte, läuft es unendlich. Hier gäbe es Verbesserungspotential, aber das war mir an dieser Stelle nicht wichtig.

:found
echo OBS Started
powercfg -requestsoverride process obs64.exe display system awaymode

Das Programm powercfg ist das Windows-Kommandozeilen Programm zum einstellen der Energieverwaltungseinstellungen.

Mit powercfg -requests Kann man sich anzeigen lassen, welche Programme gerade z.B. den Standby-Modus verhindern und so weiter, und powercfg -requestsoverride kann man eingestellte Ausnahmen anzeigen und auch festlegen.

Wer sich den Befehl genauer anschauen möchte kann sich powercfg -? und powercfg requestsoverride -? durchlesen.

Der Aufruf in meinem Skript fügt also Ausnahmen für die laufende obs64.exe hinzu, sodass das Programm den Standby-Modus nicht mehr blockiert.

Wenn man OBS Studio mit ReplayBuffer und mein Skript also zum Systemstart laufen lässt, hat man nun einen ShadowPlay-Ersatz mit einem Nachteil weniger.

Besitzer von OLED Monitoren werden sich freuen!