obs_media_control
Control OBS media sources with play, pause, stop, restart, next, and previous actions. Handle playlist-only behavior to prevent silent failures and ensure reliable media operation.
Instructions
Transport control for a media source: play, pause, stop, restart, next, previous.
next and previous are PLAYLIST actions. They only do something on a vlc_source, which holds a list of files. On an ffmpeg_source - which is every media input on the reference machine, a looping media source included - there is no playlist, so they succeed and change nothing. A tool call that returns success while nothing happened is worse than an error, so check the returned state.
Careful with a looping media source specifically: its watchdog in music/player.js advances the queue on states ended, none and error, but NOT on paused or stopped. So pausing or stopping a looping media source here is not self-healing - the music stays silent until a person notices, which is the exact failure mode the reference machine already paid seventeen hours for. Use node music/player.js --next to skip a track instead.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| action | Yes | next/previous are playlist-only and are no-ops on an ffmpeg_source. | |
| inputName | No | Name of the media input. | |
| inputUuid | No | UUID instead of a name. |