JerichoGenerico Posted May 23, 2024 Posted May 23, 2024 Hi, all! I'm trying to do as the title suggests. I have two ultrawide displays and one standard display. I want to stream BigBox via Moonlight to my Apple TV, but with the ultrawide, it doesn't scale properly. I want to get BigBox to automatically change my primary display to the monitor of my choice so that everything works fine and loads up on that display. Is this doable? Quote
JoeViking245 Posted May 23, 2024 Posted May 23, 2024 12 hours ago, JerichoGenerico said: I want to get BigBox to automatically change my primary display to the monitor of my choice so that everything works fine and loads up on that display. The BigBox main display will only show on a single display (monitor/tv) that you set in the System Menu. Also, the 'Primary Screen' you select to use has no direct ties to the "Main Display" you set in Windows. It's either monitor #1 or monitor #2 (or #3 or #4 etc.). There are no command-line parameters available to tell BigBox to start on a specific monitor. 12 hours ago, JerichoGenerico said: Is this doable? To start BigBox on a specific display of your choosing (without launching it and changing it in the UI), you'd need to modify its settings file by changing the value for the Primary Screen, save and close, then start BigBox. This could be 'automated' by creating a PowerShell Script, batch file, AutoHotkey script or other medium of your choosing that would do the change, save, then start BigBox. Create 2 of them, one to start it on your Apple TV and another to start it on your ultrawide. Regarding it not scaling properly on the ultrawide, that's out of my area of expertise. But one thing I have read about is, if you have the displays' Scale (in Windows Display Settings) set to something other than 100%, you could experience something along those lines. Quote
zombiefly Posted May 26 Posted May 26 (edited) I've been fiddling with this for a few hrs, a simple request, open big box on my side monitor, not the massive ultrawide primary. I don't know why it has a problem with this, but NOTHING works. scaling is set the same on both etc. so i've written a script to sort it out. If you don't already use display fusion for your multi-monitor setup, you probably should the first version of the script uses 2 display fusion profiles with the same monitor setup but different primary monitors, so you have a lot of flexibility with this, you can change orientation etc in display fusion profiles, scaling, whatever. DisplayFusion steps to use it.. 1. save to local machine as "bigbox primary.ps1" or whatever you want to call it 2. change your paths for display fusion and bigbox exes 3. create your display fusion monitor profiles as required, be sure to set "primary" as you want it in each profile. 4. turn off the setting in display fusion, options/advanced options to ask for confirmation for monitor profile switching via command line or api 5. adjust the script to call your profiles by adjusting the names in -monitorloadprofile "<name>" parameters 6. save the script 7.create a shortcut to "bigbox primary.ps1" and enter this into the target box: powershell.exe -NoExit -ExecutionPolicy Bypass -File "C:\Path\To\big box primary.ps1" # Load the "bigbox" monitor profile Start-Process "C:\Program Files\DisplayFusion\DisplayFusionCommand.exe" -ArgumentList '-monitorloadprofile "bigbox"' -NoNewWindow -Wait # Start BigBox Start-Process "D:\Launchbox\BigBox.exe" # Wait until BigBox.exe is no longer running do { Start-Sleep -Seconds 2 } while (Get-Process -Name "BigBox" -ErrorAction SilentlyContinue) # Load the "upstairs" monitor profile Start-Process "C:\Program Files\DisplayFusion\DisplayFusionCommand.exe" -ArgumentList '-monitorloadprofile "upstairs"' -NoNewWindow -Wait now, simply double click the script and it will do the following: 1. switch your primary monitor to the one of your choice, with optional settings based on display fusion profile. 2. start bigbox on the primary monitor 3. wait for bigbox to close, then set back to the display fusion profile of your choice. MultiMonitorTool Option for those who don't use display fusion. you can use a free tool called multimonitor tool, the only problem here is it seems to mess up the order of your screens when it restores, this might be ok if you have them in the correct order of your video card ports, i haven't tried that though. 1. download multimonitortool.exe from https://www.nirsoft.net/utils/multi_monitor_tool.html 2. put multimonitortool.exe in the same folder as the following script 3. adjust your primary monitors in this script as required (check your display settings for monitor IDs) 4. save the script as "bigbox mm primary.ps1" 5. create a shortcut to "bigbox mm primary.ps1" and enter this into the target box: powershell.exe -NoExit -ExecutionPolicy Bypass -File "C:\Path\To\big box mm primary.ps1" # Get the script's current directory $scriptDir = Split-Path -Parent $MyInvocation.MyCommand.Path # Set the primary monitor for bigbox using MultiMonitorTool Start-Process "$scriptDir\MultiMonitorTool.exe" -ArgumentList "/SetPrimary 3" -NoNewWindow -Wait # Change '3' to your desired monitor ID # Start BigBox Start-Process "D:\Launchbox\BigBox.exe" # Wait until BigBox.exe is no longer running do { Start-Sleep -Seconds 2 } while (Get-Process -Name "BigBox" -ErrorAction SilentlyContinue) # Set the primary monitor back using MultiMonitorTool Start-Process "$scriptDir\MultiMonitorTool.exe" -ArgumentList "/SetPrimary 1" -NoNewWindow -Wait # Change '1' to your desired monitor ID hope you get some use out of these options. Edited May 26 by zombiefly Quote
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.