Input Overlay

Input Overlay 5.0.0

universallp

Member
TL:DR
It seems, for sending inputs remotely, the plugin (unfortunately) has to run an OBS on the gaming machine to act as a server? if i get that correctly, i would like to ask if the server can send it without an OBS running, as you know the best part of dual pc streaming is not sharing resources between the game and OBS...

The Longer version of that text:
hi there, i have been using your plugin since the early days, it was tricky to customize but i was able to achieve what ever look and feel i wanted.
View attachment 78952
see the preview, i was using it for football games hence the chalk style outlines with minimal ui! I basically deleted most of the overlay gfx and added checlky outlines to it. what extra i had to do was, I had to use two circular lines as a background undernearth the overlay so that it was more readable of how far the analogs were pushed.If i did not do that, there were not elements on the overlay to understand how far and the directionality of the analogs pushed.


Anyways... as the plugins was working great already, i never had to check for updates apart from the initial review. I was using ds4windows.exe for both gaming and streaming machines where i connected to gaming pc through usb cable while using bluetooth for sending inputs to streaming pc.

Lately, i stopped using the input overlay due to lack of games needing them but also the requirement of a usb cable hassle for dual pc streaming usage.

Now i have read that you can actually achieve remote sending of inputs, does this mean , we just have to launch the client32/64.exe in the gaming pc while plugin receives it in the OBS? or is it like the gaming pc needs and obs running to send inputs? I just started the client64.exe and either the exe crashed rapidly or there are some things that i am missing...

I will further test things out and update my post if it really can send inputs to streaming pc without an obs running (so only obs for receiving on streaming pc)
You don't need to have obs run on the gaming pc, you just need the client application
It doesn't have a gui, so you'll need to use the command line.
 

I3ordo

Member
You don't need to have obs run on the gaming pc, you just need the client application
It doesn't have a gui, so you'll need to use the command line.
Hello, very pleased to read that the the exe can send without an obs running on server!
I was gonna try using it but third times in a row, the plugin on the streamer pc side had consistent crashes.

this crash occurred after i set it up with preset configurations, then go to menu item (in obs)"tools\input-overlay configuration\remote connection" and enable "remote connection" , when i hit "reload" to detect any running "senders. the reload button hangs in "pressed down"" mode and
https://obsproject.com/logs/7LbwI8ihM5X7kKIk
and another by the same steps.

may be a firewall problem.? windows default firewall usage, same freeze and crash...

also ran on a portable OBS with zero other plugins
log file shows: https://obsproject.com/logs/362CrZMReLijC2lz
"20:36:59.427: LoadLibrary failed for '../../obs-plugins/64bit/obs-browser.dll': The specified module could not be found.
20:36:59.427: (126)
20:36:59.427: Module '../../obs-plugins/64bit/obs-browser.dll' not loaded"
some prerequisite is missing?
i tried to install both VC_redist.x86 and VC_redist.x64 , the installers complained about newer versions installed.



also; i need clarify these:
1:this command will be run on the gaming pc: that will send the inputs to another computer. no obs needed.
"C:\Users\username\Desktop\client.x64.exe 192.168.1.44 raven 1608 --gamepad=1".
the ip that comes after .exe should belong to the receiving pc (streaming pc) and the name should any name of the gaming pc for identification.
currently if i do this i get "netlib_tcp_open failed: Couldn't connect to remote host" (maybe because streamer pc crashes on network "reload" at the moment.
 
Last edited:

universallp

Member
Hello, very pleased to read that the the exe can send without an obs running on server!
I was gonna try using it but third times in a row, the plugin on the streamer pc side had consistent crashes.

this crash occurred after i set it up with preset configurations, then go to menu item (in obs)"tools\input-overlay configuration\remote connection" and enable "remote connection" , when i hit "reload" to detect any running "senders. the reload button hangs in "pressed down"" mode and
https://obsproject.com/logs/7LbwI8ihM5X7kKIk
and another by the same steps.

may be a firewall problem.? windows default firewall usage, same freeze and crash...

Before testing any further i need clarify these:
1:this command will be run on the gaming pc: that will send the inputs to another computer. no obs needed.
"C:\Users\username\Desktop\client.x64.exe 192.168.1.44 raven 1608 --gamepad=1".
the ip that comes after .exe should belong to the receiving pc (streaming pc) and the name should any name of the gaming pc for identification.
currently if i do this i get "netlib_tcp_open failed: Couldn't connect to remote host" (maybe because streamer pc crashes on network "reload" at the moment.
You need to restart obs first after enabling the remote connection. I guess clicking refresh before that causes a crash. Don't expect too much though, the remote connection is a bit unreliable right now
 

I3ordo

Member
You need to restart obs first after enabling the remote connection. I guess clicking refresh before that causes a crash. Don't expect too much though, the remote connection is a bit unreliable right now
yes that was definitely the case, if hit refresh without restarting OBS, the plugins or obs can not request a connection from the firewall, a restart is a must , a warning pop up can be implemented if possible

once i ran the client.exe , i can get some inputs finally but it is acting weird i agree.

the inputs received have analog sticks off center, and not consistent. it s like it show whatever it gets at that time in a 100 to 900ms refresh fashion.

i get two messages from client
error: Couldn't read bindings from './bindings.json'
and other warning is:
hook_run [661]: hInst was not set by DllMain().

other than that, i get also
info: Hook thread started
[ uiohook::dispatch_proc:065]: uiohook started

ps: unfortunately, i am using ds4windows in xinput mode , now i will begin testing with unemulated genuine xbox gamepad first.


Update:
I plugged a proper xbox controller to gaming pc, restart the client.exe, reconfigured the source to receive from the proper controller. My impression, the updates are not accurate, and there are some problems after 20 or more actions, for example the d-pad right is still on hold mode, if i hold LS up, both sticks go up and LT seems still pressed down.

update 2:
I gave up on remote sending for the time being as it is nowhere near comparable to the usb (local) implementation consistency wise.

question : I have loaded the newest preset and the overlay files that are compatible with this plugin.(on the github) , i am having strange alpha problems. any ideas ?
1641929500054.png
 
Last edited:

bettaTM

New Member
Not sure if this thread is still active, but I have been looking for a preset with only arrow keys for a few hours now, and can't find one anywhere. I tried making my own using the ones from the "qwerty-arrows" preset, but it went over my head and I couldn't get it to work. I would appreciate any help! Thanks in advance!
 

universallp

Member
yes that was definitely the case, if hit refresh without restarting OBS, the plugins or obs can not request a connection from the firewall, a restart is a must , a warning pop up can be implemented if possible

once i ran the client.exe , i can get some inputs finally but it is acting weird i agree.

the inputs received have analog sticks off center, and not consistent. it s like it show whatever it gets at that time in a 100 to 900ms refresh fashion.

i get two messages from client
error: Couldn't read bindings from './bindings.json'
and other warning is:
hook_run [661]: hInst was not set by DllMain().

other than that, i get also
info: Hook thread started
[ uiohook::dispatch_proc:065]: uiohook started

ps: unfortunately, i am using ds4windows in xinput mode , now i will begin testing with unemulated genuine xbox gamepad first.


Update:
I plugged a proper xbox controller to gaming pc, restart the client.exe, reconfigured the source to receive from the proper controller. My impression, the updates are not accurate, and there are some problems after 20 or more actions, for example the d-pad right is still on hold mode, if i hold LS up, both sticks go up and LT seems still pressed down.

update 2:
I gave up on remote sending for the time being as it is nowhere near comparable to the usb (local) implementation consistency wise.

question : I have loaded the newest preset and the overlay files that are compatible with this plugin.(on the github) , i am having strange alpha problems. any ideas ?View attachment 78970
Do you have a filter on the input overlay source? Or is the source inside a group or something that has a filter?
Not sure if this thread is still active, but I have been looking for a preset with only arrow keys for a few hours now, and can't find one anywhere. I tried making my own using the ones from the "qwerty-arrows" preset, but it went over my head and I couldn't get it to work. I would appreciate any help! Thanks in advance!
Did you watch the tutorial for the config tool?
 

xuan

New Member
Can anyone adjust the qwerty layout for qwertz?

Thanks in advance.
 

Attachments

  • qwerty.rar
    351.2 KB · Views: 32

ShannonLittel

New Member
yes that was definitely the case, if hit refresh without restarting OBS, the plugins or obs can not request a connection from the firewall, a restart is a must , a warning pop up can be implemented if possible

once i ran the client.exe , i can get some inputs finally but it is acting weird i agree.

the inputs received have analog sticks off center, and not consistent. it s like it show whatever it gets at that time in a 100 to 900ms refresh fashion.

i get two messages from client
error: Couldn't read bindings from './bindings.json'
and other warning is:
hook_run [661]: hInst was not set by DllMain().

other than that, i get also
info: Hook thread started
[ uiohook::dispatch_proc:065]: uiohook started

ps: unfortunately, i am using ds4windows in xinput mode , now i will begin testing with unemulated genuine xbox gamepad first.


Update:
I plugged a proper xbox controller to gaming pc, restart the client.exe, reconfigured the source to receive from the proper controller. My impression, the updates are not accurate, and there are some problems after 20 or more actions, for example the d-pad right is still on hold mode, if i hold LS up, both sticks go up and LT seems still pressed down.

update 2:
I gave up on remote sending for the time being as it is nowhere near comparable to the usb (local) implementation consistency wise.

question : I have loaded the newest preset and the overlay files that are compatible with this plugin.(on the github) , i am having strange alpha problems. any ideas ?View attachment 78970
What I think is every d-environment deals with inputs differently and maps it with its own unique mapping method, I have tried several gamepad mapping tool online like https://gamepadtest.com they all map controller input differently, one thing that is common is that if your key is triggering a function they will map it in their respective UI. controller mapping is very tricky and it is always upto you how you utilize it.
 

Omnipoint

New Member
Would it be theoretically possible to do something similar to this with a midi controller? For example I have a Novation Launch Control XL, or APC40 MKII
novation_launchcontrol-xl.jpg
akai-apc40_mkii.png


if anyone sees this and decides to work on it please let's start a conversation so I can learn how it might work!
 

universallp

Member
Would it be theoretically possible to do something similar to this with a midi controller? For example I have a Novation Launch Control XL, or APC40 MKII
View attachment 79576View attachment 79577

if anyone sees this and decides to work on it please let's start a conversation so I can learn how it might work!
@cpyarger works on obs-midi, might want to talk to him. I might be able to add a procedure to the global procedure handler which other plugins can use to submit input events, but I'm not gonna touch midi input as that is outside of the scope of this plugin.
 

f2bacon

New Member
stopped working for me recently. i went to reconfigure and now it asks for a json instead of an ini file
 

universallp

Member
stopped working for me recently. i went to reconfigure and now it asks for a json instead of an ini file
The new version uses json presets. You can download the presets on the release page where you downloaded the plugin. The old stable version that uses ini files is also still available.
 

fatihG_

New Member
Hi, I recently switched back to 4.8 simply because I cant get 5.0 to work with any of my controllers properly.

But thats beside the point. I was wondering if it is possible at all to change the Z order of the elements in the .ini files.
For example I made a mouse preset, which just consists of the buttons. I have not made a 'body' graphic for it.
The 'body' graphic that I have is just a black gradient, to separate the buttons from the background in OBS.

Right now to get the effect I want I have to remove parts of the 'body' in order not to occlude the buttons.
The set up that you have right now works fine for transparent designs or for simple outlines. But anything thats more realistic/solid is a lot more difficult to design around. Possible, but not without ugly work arounds. (you get halo's around the edges between the elements for example. Because you have 2 semi transparent edges right on top of each other it will never add up perfectly.)

I included an image of my current set up in order to get around the issue I am facing, to illustrate my point.

Mouse.png
 

universallp

Member
Hi, I recently switched back to 4.8 simply because I cant get 5.0 to work with any of my controllers properly.

But thats beside the point. I was wondering if it is possible at all to change the Z order of the elements in the .ini files.
For example I made a mouse preset, which just consists of the buttons. I have not made a 'body' graphic for it.
The 'body' graphic that I have is just a black gradient, to separate the buttons from the background in OBS.

Right now to get the effect I want I have to remove parts of the 'body' in order not to occlude the buttons.
The set up that you have right now works fine for transparent designs or for simple outlines. But anything thats more realistic/solid is a lot more difficult to design around. Possible, but not without ugly work arounds. (you get halo's around the edges between the elements for example. Because you have 2 semi transparent edges right on top of each other it will never add up perfectly.)

I included an image of my current set up in order to get around the issue I am facing, to illustrate my point.

View attachment 79672
Unfortunately no, the old system doesn't have any layers it's all hardcoded.
 

SimetAtip

New Member
Hey, thanks for your plugin, its amazing, but i edited the layout with the program that you give us in github but it doesn't works with arrows keys, its a bug or i'm doing something wrong? (Sorry for my english)
 

Attachments

  • wasd.7z
    164.3 KB · Views: 24

craznn

New Member
I wasn't able to find a thread search function to look this up, so sorry if I am asking a duplicate question.

The joysticks for a gamepad are mapped to different axes for vertical and horizontal actuation, and i was wondering if the plugin has anyway to separately map them to different overlay textures?

Right now it takes the analog output of the joystick and maps the position of the joystick texture, but I was thinking of taking the output of the joystick and either mapping it to two separate analog sliders, or maybe just have an overlay button that is 'pressed' whenever an axis is past a certain threshold
 

craznn

New Member
I wasn't able to find a thread search function to look this up, so sorry if I am asking a duplicate question.

The joysticks for a gamepad are mapped to different axes for vertical and horizontal actuation, and i was wondering if the plugin has anyway to separately map them to different overlay textures?

Right now it takes the analog output of the joystick and maps the position of the joystick texture, but I was thinking of taking the output of the joystick and either mapping it to two separate analog sliders, or maybe just have an overlay button that is 'pressed' whenever an axis is past a certain threshold
Nevermind! I found the search function. Looks like it's not possible from a quick skim of the search results
 
Top