/meme-box

Manage and trigger media in OBS as a browser source

Primary LanguageTypeScriptGNU Affero General Public License v3.0AGPL-3.0

All Contributors

A complete management app for image / audio / video / iframe / widgets "media" to be used inside OBS. Or trigger other custom actions.

Media Setup Example + Mobile View Setup a Twitch-Trigger
memebox example setup gif memebox example twitch trigger gif

Download

Download latest release! (currently a bit ouf of date, new release soon) - latest nightly Builds

Working Features

Show Media Screens (in OBS) Triggers
Images

Animations on show / hide Visibility:

  • Play (on a trigger)
  • Toggle (per trigger)
  • Always Visible

Custom Position per Media / Screen:

  • Fullscreen
  • Fixed (on a position)
  • Centered
  • Random

Misc:

Streamdeck Plugin
✅ Timers
✅ Mobile View
✅ Twitch Events

  • Bits
  • Channel Points
  • Message
  • Raid
  • User Ban
  • Subscription
  • Gift Sub
Videos
Iframes
Widgets
Play Audio
Actions

Trigger multiple / random Media

Scripts (Action)
  • Trigger other Actions with custom logic/timeouts/overrides
  • Trigger OBS functions
  • Write to Twitch Chat
Permanent Script
  • Same as Scripts just that those will run and stay active all the time.
  • Used for Bots or other functionalities
  • React on custom callbacks from Twitch / OBS Events
  • Create your own WebSocket-Server - see Script-API examples
API for Developers
  • Trigger Actions with WebSockets
  • Receive all Twitch Events using WebSockets /ws/twitch_events to use in other Apps / Overlays
  • Twitch Helix REST bridge /api/twitchData/helix/* instead of https://api.twitch.tv/helix/

Getting Started

Note: These are the current Getting Started / Tutorials for this branch.

To see the updated Getting Started / Tutorials from the released version - click here!

1. Installation

2. Getting Started

3. Advanced:


Roadmap

2021.3.0

  • Widgets (previously HTML)
    • API for Twitch or Events that its shown and so on
    • Templates
    • Widget-Variables
    • Import / Export Widgets
    • Persistence of the Widget State across Screens
  • Custom Port Settings, default Port now on 6363
  • Electron can be hidden into the Tray
  • "Action Type": Scripts for more advanced features
    • Wait once a triggered clip (inside the script) is done to trigger other stuff
    • Use custom variables like in the Widget-Variables for easier configs
  • "Action Type": Permanent Scripts for even more advanced features
    • Create your own custom WebSocket Server
    • Create your own logic to react on "stuff"
  • Overhaul of the Media Creation Dialog(s)

2021.4.0

  • Labels on or around the Media, each with their own Position / Animation
    • Changeable by Trigger Variables
    • Can be placed like in the Arrange View
  • OBS Websockets
    • "Action Type": OBS Command
    • Screen Arrange View gets the current OBS-Scene as Background to move stuff around
  • Overview of local media files not existing anymore

Future, if you want to help open a PR :)

  • Change media options by triggered variables (e.g. different style, or something)
  • Stats per commands / media / or something last cheerer and so on
  • more to be added :)

How to help / contribute?

Getting started with Development

Contributors ✨

Thanks goes to these wonderful people (emoji key):


Aaron Rackley

💻

Salma @whitep4nth3r

💻 🤔 🎨

Igor Ilic

🐛 🤔 💻

CrypticEngima

🎨

Oliver

🐛 💻

jonathanbucci

📖

Divyanshu Singh

💻

This project follows the all-contributors specification. Contributions of any kind welcome!