Table of Contents
mpv-control
Video and image display application for escape rooms. Plays video files, shows images, and plays audio in fullscreen on a dedicated screen — a monitor, TV, or projector connected to a mini-PC.
Controlled via HTTP REST API from Node-RED on the Main PC.
Status: Production.
Key Features
- Fullscreen display of video, images, and audio on a dedicated screen
- Works with monitors, TVs, and projectors — any display connected via HDMI
- Any video format and resolution supported (hardware-dependent)
- Simple HTTP GET API — easy integration with Node-RED
Supported Formats
- Video: MP4, MKV, AVI
- Images: JPG, JPEG, PNG, BMP
- Audio: MP3, WAV
How It Works
mpv-control runs on a dedicated mini-PC (BeeLink) connected to a display. The application controls the MPV media player via IPC socket. Node-RED sends simple HTTP GET requests to trigger playback.
Files are loaded paused by default — a separate play command starts the playback. This allows precise synchronization with other room events.
HTTP API
All endpoints use GET method. Default port: 3000.
| Endpoint | Description |
|---|---|
/files | List all media files in the media directory (JSON tree) |
/load?file=<path> | Load a file (paused by default) |
/play | Start or resume playback |
/pause | Pause playback |
/stop | Stop playback |
/forward | Seek forward 10 seconds |
/backward | Seek backward 10 seconds |
Hardware
- Computer: BeeLink mini-PC with HDMI output to the display
- Display: Any monitor, TV, or projector connected via HDMI
- Media directory:
/home/er/media— upload media files here - Startup: Automatic — the application starts on boot, no manual intervention needed
Web UI
A built-in web interface is available at http:<ip>:3000'' for manual testing — file browser with playback controls. During normal operation, everything is controlled from Node-RED.
