Repository navigation
Technical Background Jobs
Audience: developers and advanced administrators. Baseline reviewed: 2026-10-29.
| Work | Owner and entry point |
|---|---|
| Periodic Streamer plugin hooks | Scheduler plugin; plugin/Scheduler/run.php
|
| Scheduled commands/releases/messages | Scheduler data classes and configured plugin jobs |
| Encoder monitoring/queue recovery | Encoder installation; its install/cron.php and monitor classes |
| Live automatic restream startup | plugin/Live/restreamInBackground.php |
| Seek sprite generation | VideoThumbnails createSprite.php worker |
| Social upload work | SocialMediaPublisher publisher worker/queue |
| WebRTC service watchdog | WebRTC periodic hook and separate service process |
An external cron/timer invoking an entry point is different from the plugin being enabled. Docker deployment samples include a Streamer Scheduler cron, but an existing host can use a different scheduler/user/path. Discover it rather than copying another installation's command.
Scheduler dispatches periodic plugin hooks and configured jobs. Its settings include watchdog and retention/cleanup behavior. Manually running the Scheduler can therefore do more than produce a diagnostic status.
Inspect the actual command, run user, PHP binary/SAPI configuration, last execution, locks, execution time and output destination. Compare the expected interval with job duration. An overlapping job or stale lock needs investigation before removal.
The Encoder has its own installation and can serve multiple Streamers. Its monitor requests email delivery from the correct originating Streamer; it does not use a Streamer users table or local Streamer mailer.
Queue-idle detection requires a sustained idle condition with waiting work, rather than one observation immediately after a long conversion finishes. A job waiting behind active conversion is not a stalled queue.
An accepted start request does not establish successful work. Follow worker startup, lock ownership, progress/state files, errors, retries, output artifact and final consumer. Recovery state must belong to the current job/source rather than an older process sharing a URL or filename.
For payment and storage jobs, distinguish transport retries from business idempotency. For live jobs, identify the exact broadcast/relay before stopping any process. See live streaming, encoding and payments.
Documentation generation did not install cron, execute application jobs, restart services or clear locks.
Start
Install and update
- Install on Ubuntu 24.04 or 26.04
- Installation Setup Page
- Scheduler cron job (required)
- Set up email
- Use HTTPS
- Own Encoder
- Docker
- Update AVideo
- Backup
- Secure file permissions
- Server command-line tools
- Hidden configuration options
Videos
- Upload a video
- Local Encoder (on your computer)
- Bulk upload by FTP
- Import a channel
- Publish on YouTube and social media
- Privacy options
- Only for logged-in users
- Resolutions by user group
- Storage options
- Move and protect video files
- Video does not play
Users
Live
- Make a live stream
- Stream with OBS
- Own live server
- One live server, many sites
- Live server install errors
- Live does not play
Plugins
Problems
Other
- Translate your site
- Write a plugin (developers)
- Technical reference (developers and advanced administrators)
Old and retired guides