rocket-park / craft-mux
MUX is a Craft CMS plugin used to upload and manage videos using the MUX service.
Requires
- php: ^8.2
- craftcms/cms: ^5.0.0
- firebase/php-jwt: >=v6.11.1
- muxinc/mux-php: >=5.1.0
Requires (Dev)
None
Suggests
None
Provides
None
Conflicts
None
Replaces
None
- dev-craft-5
- 2.7.0
- 2.7.0-beta.1
- 2.6.0
- 2.6.0-beta.1
- 2.5.2
- 2.5.2-beta.1
- 2.5.1
- 2.5.1-beta-1
- 2.5.0
- 2.5.0-beta.3
- 2.5.0-beta.2
- 2.5.0-beta.1
- 2.4.0.5
- 2.4.0.3
- 2.4.0.2
- 2.4.0.1
- 2.4.0
- 2.4.0-beta.9
- 2.4.0-beta.8
- 2.4.0-beta.7
- 2.4.0-beta.6
- 2.4.0-beta.5
- 2.4.0-beta.4
- 2.4.0-beta.3
- 2.4.0-beta.2
- 2.4.0-beta.1
- 2.1.2
- 2.1.1
- 2.1.0
- 2.0.20
- 2.0.12
- 2.0.9
- 2.0.6
- 2.0.2
- 2.0.1
- dev-craft-4 / 1.x-dev
- dev-craft-5-dev
This package is auto-updated.
Last update: 2026-10-28 21:15:49 UTC
README
Mux for Craft CMS
MUX is a Craft CMS plugin used to upload and manage videos using the MUX service.
Features
Video Management
- Upload and manage videos directly from Craft CMS
- Organize videos in custom volumes and folders
- Sync assets between Mux and Craft CMS
Analytics Dashboard
- Real-time video performance metrics
- Interactive charts and data visualization
- Track views, unique viewers, and engagement
- Multiple timespan options (1 week to 1 year)
Security & Access Control
- Secure video playback with JWT tokens
- Domain and geographic restrictions
- Granular user permissions
- Signed keys management
Video Processing
- Static renditions for offline viewing
- Automatic closed caption generation
- Multiple resolution and encoding options
- Track management (subtitles, audio)
Developer Integration
- GraphQL API support
- Custom Mux Asset field type
- Webhook integration for real-time updates
- Template variables for frontend use
Console Commands
- Asset synchronization:
php craft mux/sync/all - Cache management:
php craft mux/cache/clear - Background job processing
Frontend Ready
- Template variables for video display
- Player integration support
MUX configuration
Signup For MUX Account
You must obtain a MUX Token ID & Token Secret from your MUX environment access tokens page.
Webhooks
The plugin relies on Mux webhooks to keep assets up to date. For each Mux environment (e.g. development, staging, production):
- On the Mux webhooks settings page, add a webhook pointing to
https://your-site.com/actions/mux/webhooks/mux-webhooks(the URL is also shown in Mux → Settings). - Copy the webhook's signing secret into the site's
.env, e.g.MUX_WEBHOOK_SECRET="...". - In Mux → Settings → Webhook Signing Secret, select
$MUX_WEBHOOK_SECRET.
Every webhook is verified against the Mux-Signature header. Requests with a missing, invalid or expired signature are rejected with a 401, and all webhooks are rejected while no signing secret is configured. Signatures older than 5 minutes are rejected; adjust this with webhookTimestampTolerance (seconds) in config/mux.php if needed.
Documentation
Visit the Mux Plugin page for all documentation, pricing and developer resources.
Support
Get in touch with us via the Mux Support page or by creating a Github issue
Brought to you by Rocket Park