Skip to main content

Replay controls

Use these entities to select, load, and control a completed F1 session. For the normal watching workflow, follow Replay Mode.

Configuration entities​

EntityPurpose
select.f1_replay_yearSelect the season year
select.f1_replay_sessionSelect which session to replay
select.f1_replay_start_referenceChoose where playback starts
button.f1_replay_loadDownload and prepare the selected session
button.f1_replay_playStart or resume playback
button.f1_replay_pausePause playback
button.f1_replay_stopStop playback and return to idle
button.f1_replay_back_30Move replay back 30 seconds
button.f1_replay_forward_30Move replay forward 30 seconds
button.f1_replay_refreshRefresh the session list

Media Player Entity​

The media_player.f1_replay_player entity provides standard media player controls for replay.

State (enum)

  • One of: idle, buffering, playing, paused

Features

  • Play, pause, and stop controls
  • Seek to a specific playback position
  • Position and duration tracking
  • Can be controlled through standard Home Assistant media player actions and compatible cards or automations

Attributes

AttributeTypeDescription
media_titlestringName of the selected session
media_positionnumberCurrent position in seconds
media_durationnumberTotal duration in seconds
replay_statestringReplay state (idle, selected, loading, ready, playing, paused, seeking)
selected_sessionstringName of the selected session
selected_session_idstringInternal session identifier (best effort)
playback_position_snumberCurrent position in seconds
playback_remaining_snumberRemaining time in seconds
playback_total_snumberTotal playback duration in seconds
session_start_offset_snumberStart offset in seconds from the underlying session archive (best effort)

Replay Status Sensor​

The sensor.f1_replay_status entity tracks the current state and provides detailed attributes.

State (enum)

  • One of: idle, selected, loading, ready, playing, paused, seeking

Attributes

AttributeTypeDescription
selected_sessionstringName of the selected session
download_progressnumberDownload progress percentage (0–100)
download_errorstringError message if download failed
playback_position_snumberCurrent playback position in seconds
playback_position_formattedstringCurrent position as HH:MM:SS
playback_total_snumberTotal playback duration in seconds
playback_total_formattedstringTotal duration as HH:MM:SS
session_start_offset_snumberStart offset in seconds from the underlying session archive (best effort)
pausedbooleanTrue when playback is paused
sessions_availablenumberNumber of sessions available for the selected year
selected_yearnumberCurrently selected year
index_yearnumberYear that the session index was loaded from (best effort)
index_statusstringIndex status such as ok, no_data, or error (best effort)
index_errorstringError details when index fetch fails (best effort)
sync_pointslistVerified lap or qualifying-part starts, with an ID, kind, value, and playback position in seconds

Playback position and seeking​

Playback positions and duration are relative to the chosen playback start reference. session_start_offset_s is the session-start offset in the archive; it is not the current playback position.

The media player reports buffering while loading or seeking. Its detailed replay_state distinguishes loading from seeking, and selected or ready from idle. During loading or seeking, the standard media position and duration can be zero; use the replay state to decide what to display.

Seek is supported when replay is ready, playing, or paused. For example, seek to 90 seconds after the chosen start reference:

action: media_player.media_seek
target:
entity_id: media_player.f1_replay_player
data:
seek_position: 90

The Replay module uses sync_points to offer session-specific shortcuts. Race and sprint sessions can provide lap starts. Qualifying and sprint qualifying sessions can provide Q1–Q3 or SQ1–SQ3 starts. Missing markers are omitted instead of estimated.

Rewinding can repeat events

Historical state changes and events can be emitted again when you rewind. Replay-driven automations, lights, and notifications may run again.

Next steps​