A sync-locked, multi-stem review player for WordPress. One video plus up to six switchable audio stems, held in tight sync (±30 ms of picture) — built for film, TV, and audio client review. Deliver an explorable mix instead of a stack of static files.
Reviewers toggle stems on/off, solo them, and ride per-stem faders while playback continues. Sync is the contract: if any track can't sustain playback, everything pauses rather than drift.
- One video + up to six audio stems, locked in sync (per-stem PI drift correction + an all-or-nothing prebuffer gate)
- Per-stem mute/solo + volume faders; full keyboard control
- Access groups — restrict players to named groups of WordPress users
- Privacy-compliant, opt-in logging (no raw IP/UA; daily-rotating hashes) with a Logs Explorer + CSV export
- Opt-in anomaly alerts (session sharing, unauthorized access, anomalous seeking)
- No third-party requests — no external fonts, no phone-home
Download the latest stemple-x.y.z.zip from Releases and install via Plugins → Add New → Upload Plugin, or available on the WordPress.org plugin directory. Requires WordPress 6.4+ and PHP 8.1+.
See stemple/README.md for full usage, docs/ADMIN-GUIDE.md for the admin walkthrough, and docs/ARCHITECTURE.md for the developer overview.
stemple/ the plugin (this folder is what ships in the ZIP)
bin/build-js.js build script for the player runtime
docs/ architecture + admin guide
package.json npm run build
The player runtime (stemple/assets/dist/stemple.js) is concatenated from the modules in stemple/assets/src/ by a zero-dependency Node script:
npm run build
No build is required to run the plugin — the dist/ files are committed. The build is only needed when editing assets/src/.
GPL v2 or later. See LICENSE. Copyright © Stan van den Baar.