Not for the screensaver, but in "Power & Sleep" the setting "Screen: when plugged in, turn off after" turns off the screen after a given number of minutes. Here is a powershell script that sets this feature to "Never", runs the DeaDBeeF audio player and waits, finally restores the old setting after the audio player exits.
A desktop shortcut launches it with the following target:
C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe -nologo -windowstyle hidden -command &'C:\MyUtils\ScreenSaverSet.ps1'
You could run a browser instead of the audio player or run nothing and pause for the user to hit any key when powering off the screen becomes desirable again.
Note that running of powershell scripts is controlled by a policy which is off by default. Google how to turn it on or put the following in a batch file ScreenSaverSet.bat and run that instead which theoretically bypasses the policy.
powershell.exe -ExecutionPolicy Bypass -File C:\MyUtils\ScreenSaverSet.ps1
Script follows:
#Get GUID of active plan
#$GUID = (((Get-CimInstance -classname Win32_PowerPlan -Namespace "root\cimv2\power" | where {$_.IsActive -eq "true"}).InstanceID) -split("\\"))[1]
#Cut {} off of string at beginning and end of GUID
#$GUID = $GUID.Substring(1, $GUID.Length-2)
#The original script getting the GUID only worked as admin so use this method instead
$powerScheme = powercfg -getactivescheme
$GUID = $powerScheme.Substring($powerScheme.IndexOf(":")+2)
$GUID = $GUID.Substring(0, $GUID.IndexOf(" "))
#Write-Host "GUID = ""$GUID"""
#Get a list of all options for this plan
$Options = powercfg -query $GUID SUB_VIDEO VIDEOIDLE
$index = 0
#Find index of line that contains Turn off screen Settings
For($i=0; $i -lt $Options.Length; $i++)
{
$line = $Options[$i]
if($line.ToLower() -like "*Turn off display after*")
{
$index = $i
break
}
}
#AC Setting is 6 lines later
$screenOffSetting = $Options[$index + 6]
#trim off the beginning of the string, leaving only the value
$screenOffSettingTrimmed = $screenOffSetting.Substring($screenOffSetting.IndexOf(":")+2)
$screenOffSetting = [int]$screenOffSettingTrimmed / 60 # convert to minutes
# prevent screen turn off , run our program & wait, restore screen turn off
powercfg -change -monitor-timeout-ac 0
Start-Process -FilePath "C:\Program Files\DeaDBeeF\deadbeef.exe" -Wait
powercfg -change -monitor-timeout-ac $screenOffSetting