Input Overlay

Input Overlay v4.7.3

Supported Bit Versions
Source Code URL
Minimum OBS Studio Version
Supported Platforms
Windows, Linux
A small plugin for obs studio that shows keyboard, mouse and gamepad inputs on stream.
Supports Windows and Linux (64bit, if you need 32bit either compile it yourself or message me)

It adds two new source types to obs: Input Overlay and Input History

Update (21st August):

Planned features & todo's (Current progress):
  • Unify input methods (Gamepad, Keyboard etc.)
  • New config system
    • Overlay options
      • Static texture (Gamepad body etc.)
      • Text (Scroll speed, repeated keypress count)
      • Gamepad trigger (Show how much a trigger is pressed down)
  • Remote connection (Connect gaming pc and streaming pc)
  • Config creation tool (Graphical program to easily create configs for textures)
  • General code refactor

Also this plugin does not and probably will not work with Streamlabs OBS,
since their API is completely different and I personally prefer OBS Studio.

Input Overlay:

Side note when using this plugin (Windows only):
Since this plugin hooks into input do not open two instances of OBS, because it will result in stuttering input. If you do need two instances then only install the plugin on either 32bit or 64bit and open the second instance without the plugin.

These values are used to let the plugin calculate the direction of your mouse movements.
Here you'll find out what values you need to use for your game.
demo_hook.exe and demo_hook_async.exe are located inside the release zip archive under the folder "util"!

Since v4.3 the plugin comes with a *.so file for OBS Studio on linux. I compiled and tested it on Manjaro.
The installation instructions included are currently incorrect.
Here's how the installation should go down for most linux distros (Note that this will install the plugin globally for all users, for user specific installation you can follow these instructions):
1. Download the latest release zip
2. Create a folder called "input-overlay" in "/usr/share/obs/obs-plugins"
3. Copy the contents of the folder "data" in "plugin-linux" into the new folder
4. Copy the file "" in "bin/64bit" into "/usr/lib/obs-plugins"
5. Install libuihook over your package manager or (only try this if compiling is not an option) download this binary and copy it into "/usr/lib" (and "usr/lib64" if necessary)

Things to note:
You need to install libuiohook manually, since I do not ship it with the plugin. Look it up in your package manager or compile it from source (Make sure to not just use sudo make install, because it offers no way of removing it again!)
For Arch and its derivatives you can get libuiohook from the AUR.
OBS Studio running with input-overlay on Manjaro (inside a VM)

Please note:
That if you're on a fresh installation of windows or you don't play any games there's a high chance that you don't have the Visual C++ 2015 Redistributable installed.
You can get them here.
Video link, since vimeo embedding is broken
How does it work?
The plugin uses a texture and a config file to create the overlay. This means that you can configure which buttons are shown on screen, how they are arranged and how they look.
By default the plugin comes with presets for mouse, keyboard, gamepad and icons for the arrow keys.
When creating an "Input Overlay" source in obs you can then point it to either the preset files or the ones you made yourself.

Or scan it yourself:
First release
Last update
4.36 star(s) 14 ratings

More resources from universallp

Latest updates

  1. Smaller additions

    While I'm still working on 5.0, I also try my best to maintain the current version. I've...
  2. Input History crash fix, keyboard layout fix

    Fixed crashes when loading key icons for input history Fixed keyboard layouts having mismatching...
  3. Linux gamepad

    Added support for the gamepad overlay on linux. Currently only tested with my own gamepad, but...

Latest reviews

Does the job and performs well. Thanks for this!
Does more or less what it says on the tin, though setting it up and knowing where to put the image files and so on isn't mentioned in the "installation" instructions.

One major problem/oversight, though, and the reason I'm rating it the way it is, is that the "Input History" overlay has several keyboard buttons that it doesn't register. Specifically, no punctuation marks show up when you press them.

Since I was planning to use this to make some Photoshop and other tutorials more accessible with visible keystrokes, this oversight makes the plugin unusable for me, since ctrl++, ctrl+[, etc. are common keyboard shortcuts, and none of them register. (Ironically, they do show up on the keyboard overlay, but displaying the whole keyboard on-screen at once takes up way too much screen real estate.)

It looks like I'll have to find some external solution that runs outside of OBS.
There's a tutorial video for more detailed installation instructions. Also Input history only shows keyboard shortcuts of predefined keycodes. If you want additional key names, there is an option to load a config file which maps keycodes to names:
Keycodes can be obtained by running demo_hook_async.exe in the "util" folder.
Its a good Plugin but, i dont understand the section of "2_key_row/col" i was unable to create my own keyboard
btw, still have a problem with the default presets
When i use the
Qwerty Full, this happens:
WASD Full,
And every preset is like that
Need help :C
Which version are you using? As for creating your own overlays, did you watch the tutorial video?
Really professional overlay, looks great and it's easy to configure for newcomers.
I program my own keyboard this night I have a lot of problems to indicate the program which letters have to use. I couldn't use what you do in your tutorial video

I couldn't put:

E.g: 2_key_order= Q,W,E,R ...

For this letters, I have to write:


I don't exactly know how to find this hex numbers because I extract from your templates to develop my own (For league of legends)

Anyways now is working and I love the plugin if you answer this question could be nice to make easy the experience to developers
In previous versions it was possible to write the letters, but in the newer versions you'll have to use codes from this page:
For example to find the code for the key "W" you'd search for VC_W in uiohook.h
Hi How to use in Streamlabs OBS ?
You can't. Streamlabs doesn't support OBS Studio plugins
This is pretty awesome!!
Much better than "nohboard".
I even shoot a guide - how to use it\install it\modify it.

Creators thx for free, good, plugin.
V4.3.1 running due to some bugs occured on 4.4.... still awesome plugin :D
Danke das Du es weiter entwickelst
Cool plugin! It's not hard to create your own layout.