Repository navigation
Technical Plugin Rebroadcaster
Schedules prerecorded videos for live rebroadcast and optional restreaming.
Audience: developers, advanced administrators and AI-assisted diagnosis. Plugin catalog.
- Review date: 2026-10-29. Method: static source analysis; runtime/provider behavior was not exercised.
- Code ownership: independently versioned plugin repository.
- Reported version:
5.1. - Source revision:
a626ad7fac738b5cea296d4009fd8cea6fb3ade2. - Entry class file: Rebroadcaster.php.
Confirm the installed plugin version independently of the Streamer version. Configuration defaults below are not a dump of this installation's saved settings.
No literal dependency declaration was extracted. This does not prove the plugin is standalone.
| Override | Implementation |
|---|---|
updateScript() |
Rebroadcaster.php:38 |
getVideosManagerListButton() |
Rebroadcaster.php:225 |
getPluginMenu() |
Rebroadcaster.php:240 |
executeEveryMinute() |
Rebroadcaster.php:389 |
executeEveryDay() |
Rebroadcaster.php:425 |
canRecordVideo($key) |
Rebroadcaster.php:501 |
These are direct assignments inside getEmptyDataObject(), not evaluated effective defaults. Stored plugins.object_data, globals, structured values and conditional branches may alter runtime behavior. Private/default credential values are omitted.
| Field | Literal default or expression type | Literal source label/help | Evidence |
|---|---|---|---|
ffmpegParameters |
Computed/structured; inspect source | — | source |
This inventory distinguishes implementation files from an API specification. Includes, templates, callbacks and CLI workers are not interchangeable HTTP endpoints. Request-field names below are direct source references, not a complete schema or permission declaration.
| File | Source role | Direct request fields observed |
|---|---|---|
| Objects/RebroadcasterSchedule.php | class/helper implementation | — |
| Rebroadcaster.php | plugin entry class | — |
| View/RebroadcasterSchedule/add.json.php | JSON entry point; inspect caller and guard |
id, start_time, status, videos_id
|
| View/RebroadcasterSchedule/delete.json.php | JSON entry point; inspect caller and guard | id |
| View/RebroadcasterSchedule/index.php | PHP page/include/worker; inspect caller | — |
| View/RebroadcasterSchedule/index_body.php | PHP page/include/worker; inspect caller | — |
| View/RebroadcasterSchedule/list.json.php | JSON entry point; inspect caller and guard |
date_from, date_to, draw, filter_status
|
| View/editor.php | PHP page/include/worker; inspect caller | — |
| install/install.sql | schema/migration SQL | — |
Tables named in available CREATE TABLE statements: RebroadcasterSchedule.
Apply installation/update behavior through the owning plugin; this reference is not a script for running historical migrations manually.
Visibility and implementation semantics must be checked in source. Nonempty string defaults are represented as . This is a symbol reference, not a stable public API promise.
| Function or method | Source |
|---|---|
getDescription() |
14 |
getName() |
23 |
getUUID() |
28 |
getPluginVersion() |
33 |
updateScript() |
38 |
getEmptyDataObject() |
54 |
getPlaybackOptimizedFFmpegParameters() |
80 |
usesLegacyHighBitrateProfile($parameters) |
93 |
getFFmpegParameterRules() |
109 |
parseFFmpegParameters($parameters, &$error = '') |
137 |
getFFmpegParametersForShell($parameters) |
196 |
canRebroadcast() |
214 |
getVideosManagerListButton() |
225 |
getPluginMenu() |
240 |
canEdit($rebreadcasterSchedule_id) |
246 |
claimSchedulerRow($scheduleId) |
261 |
transitionSchedulerRowStatus($scheduleId, $fromStatus, $toStatus, $operation) |
301 |
getSchedulerRowState($scheduleId) |
344 |
getSchedulerExecutionContext() |
360 |
releaseSchedulerRow($scheduleId, $reason) |
371 |
executeEveryMinute() |
389 |
executeEveryDay() |
425 |
canRecordVideo($key) |
501 |
isKeyARebroadcast($key) |
506 |
getRebroadcastkey($videos_id, $forceIndex = '') |
516 |
rebroadcastVideo($videos_id, $to_users_id = 0, $forceIndex = ''<string>''<string>'', $addRebroadcastIndex = true) |
521 |
getLastRebroadcastInfo() |
748 |
getRebroadcastLogSummary() |
754 |
getRunningRebroadcastPids($streamIndex) |
777 |
sanitizeFFmpegLogTail($logTail) |
809 |
log($message) |
820 |
These symbols are grouped by source file; inspect the class declaration and visibility before calling them.
Declared classes: RebroadcasterSchedule.
| Named symbol | Source |
|---|---|
getSearchFieldsNames() |
10 |
getTableName() |
15 |
setId($id) |
20 |
setStart_time($start_time) |
25 |
setEnd_time($end_time) |
33 |
setStatus($status) |
41 |
setTimezone($timezone) |
46 |
setVideos_id($videos_id) |
51 |
setUsers_id($users_id) |
56 |
getId() |
62 |
getStart_time() |
67 |
getEnd_time() |
72 |
getStatus() |
77 |
getTimezone() |
82 |
getVideos_id() |
87 |
getUsers_id() |
92 |
getSchedulerSQL($videos_id = 0, $users_id = 0, $status = '', $lowerThenData = false, $greaterThenData = false) |
98 |
getScheduler($videos_id = 0, $users_id = 0, $status = '', $lowerThenData = false, $greaterThenData = false) |
141 |
getSchedulerTotal($videos_id = 0, $users_id = 0, $status = '', $lowerThenData = false, $greaterThenData = false) |
168 |
- Check the installed/enabled version and the dependencies/settings above.
- Identify the actual failing page, request, callback or worker and correlate its timestamp with the AVideo log.
- Follow the linked method and caller. Check business-state changes and output artifacts as well as HTTP status.
- Reproduce the relevant workflow in a test environment. External provider, Encoder, live-server, storage, payment and authenticated flows require their real integrations.
Related test filenames (name matches only; not executed by generation):
Shared diagnostic workflow. This page is not a security audit or a claim of end-to-end validation.
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