A set of tools to create Twitch-style video overlay and add interactivity to livestreams (videos played based on custom events). The tools used Notion as the source of truth.
Video Generation Service
The service generated a video given a set of inputs. Videos were uploaded to Google Cloud Storage. Firestore collection was used to store metadata and serve as a cache. Written in Python, used Pillow for image, and moviepy for video generation.
Task Manager
Web app for managing (CRUD) tasks defined in Notion. Modifying tasks scheduled video generation, and queued a command to play this video in a video player.
UI Overlay
Web app serving as the Twitch-style video overlay. The app rendered UI based on config fetched from Firestore collection.
Video Player
Simple web app serving as a video overlay, it used Firestore as a command queue. When a command arrived, the app played a video based on the command.
OBS Panel
Web-based stream deck, conceptually similar to LioranBoard, this allowed to control OBS remotely.
RTMP Server
Dockerized RTMP server to enable streaming to multiple platforms simultaneously.