SceneSwitcher icon indicating copy to clipboard operation
SceneSwitcher copied to clipboard

Feature Request: Device input detected

Open xamionex opened this issue 2 years ago • 2 comments

Is your feature request related to a problem? Please describe. My obs is made so I can clip/replay moments, usually I play on keyboard, but when I play on controller I can't set it to toggle my gamepad overlay due to Idle Macro checking for only if KB&M are idle, and there aren't any macros to check if for example Device id 0 is <being used/idle> or <Gamepad/Keyboard/Mouse> type device has been <unplugged/plugged in>

Describe the solution you'd like It would be very cool if you could make it check device input changes. For example If <gamepad/keyboard/mouse> has been <unplugged/plugged in>

xamionex avatar Apr 24 '23 00:04 xamionex

Thanks for the suggestion and sorry for the late reply! :)

I am not sure if this is something that can be easily implemented cross-platform, but I will try to look into it once I find the time to do so.

WarmUpTill avatar May 05 '23 23:05 WarmUpTill

Until this is merged/released I have made a powershell one-liner that checks whether or not a bluetooth controller is connected and outputs to a file :) Probably easier on linux but I don't game on linux so I haven't made it

($null -eq (Get-PnpDeviceProperty -InstanceId "$((Get-PnpDevice | Where-Object Name -Like "Wireless Controller").InstanceId)" -KeyName "DEVPKEY_Bluetooth_LastConnectedTime" | ForEach-Object Data)) | Out-File -FilePath $PSScriptRoot\controller.txt
  • You just make a new .ps1 file and replace "Wireless Controller" with the name of your controller in Settings > Devices
  • And then make a timer in SS which runs the script indefinitely every x seconds (powershell "path/to/script.ps1") image image
  • And a file macro that does whatever you want with the controller.txt file in the same dir as the ps1 script image

False = Disconnected True = Connected

xamionex avatar Jan 25 '24 22:01 xamionex

Support for the "USB" condition type was added in the linked PR. It will allow you to check if a given USB device is connected or not.

A build with this functionality is available here: https://github.com/WarmUpTill/SceneSwitcher/actions/runs/9845002585

image

Unfortunately supporting this functionality for non-USB devices might be tricky to implement. If it should be required however feel free to open another issue and I might look into it in the future.

Sorry for taking so long to get around to this topic.

WarmUpTill avatar Jul 08 '24 18:07 WarmUpTill