Docs Setting up screens
Offline playback
How screens keep playing through network and server outages.
Screens are built to keep going when the network doesn't. Once a screen has synced, it needs no connection at all to keep playing.
How it works
- When you publish, the screen receives a manifest: the playlists, slides, schedule rules and a list of media files with their checksums.
- The agent downloads every media file into a local cache and verifies its sha256 checksum.
- Only when everything is downloaded and verified does the player switch to the new version.
- The player plays entirely from the local cache, served by the agent on the screen itself.
If the network drops halfway through a download, the screen keeps playing the previous version and resumes later.
What works offline
| Works offline | Needs a connection while shown |
|---|---|
| Images, uploaded videos, text, clocks, HTML slides without external resources | YouTube slides, web page slides, HTML slides that load things from the internet |
| Schedule rules (they're evaluated on the screen) | Remote commands, screenshots, status in the editor |
What you'll see in the editor
An offline screen shows as Offline in the editor with the time it was last seen. It's still playing; it just can't tell you. When it comes back it reports in, fetches anything new and catches up.
Restarts and power cuts
The cache and the last good manifest survive restarts. A screen that loses power and boots without a network goes straight back to playing its cached content.
Cache size
The cache holds the media the current version needs; files that are no longer used are removed after each sync. The cache is capped at 8 GB by default — if the current content alone is bigger, the least recently used files are evicted, so keep the limit comfortably above the size of everything a screen plays. Change it with CACHE_MAX_MB — see installing the agent.
Something unclear or out of date? Tell us.