Deploy & Operate

Playback after restart

DearScenario Player does not resume the previous session after a crash, power loss, or a normal restart. A new process starts idle unless this launch has an explicit playback target.

This is intentional. Process restart is not content restore. If a show needs media back after the player returns, the controller must send a new command.

What happens on startup

LaunchResult
No file argumentIdle. No load, play, seek, or loop.
--open-file or a positional media pathThat one file plays from 0 seconds, loop=false.
Load failureStatus reports the error. The player does not pick another file.

Playback during a session still comes from explicit control commands such as play_media. The player does not provide saved scenes or automatic state restoration; the controller must issue the desired commands again.

Leftover files and old config keys

If a previous version wrote playback_state.json next to config.json, the current player leaves that file on disk and never reads it. Installers must not treat it as live run-state.

If a previous version wrote overlays.json next to config.json, the current player leaves it on disk and never reads or deletes it. Do not keep editing overlays.json.

These keys are ignored if they still appear in config.json. Saving config erases them:

Removed keyFormer meaning
playlist.resume_on_startupMaster switch for automatic resume
playlist.startup_resume_policyoff / crash_only / always / report_only
playlist.autoloadScan a directory and pick a file
autorun_presetRemoved saved-preset startup behavior
window.inhibit_screensaverOptional screensaver inhibition; the player always inhibits now
window.fullscreen_refresh_rateExclusive-fullscreen Hz; the player now follows the display's current refresh rate
control.freeze_exit_secRender-freeze self-exit; the player no longer terminates itself

There is no recovery object on GET /api/status, and no command to clear recovery state. The former maintenance command recovery_clear has been removed.

Restoring content after a restart

Use one of:

  1. Show control — detect that the player is back and send the same absolute playback command again.
  2. This launch only — start with --open-file <path> (or a positional media path). That path is not written to config.json.
  3. Operator — start the documented launch command or issue the desired control commands.

Do not rely on the player to remember the last file, position, loop flag, or playlist index.

Process watchdog vs content recovery

A watchdog or systemd Restart= brings the process back. The new process is still idle until something explicit starts media. An external restarter as described in Watchdog does not replay the previous source. DearScenario Player does not self-terminate based on render telemetry.

Previous / Next