Raxol.Recording.Player (Raxol v2.3.0)

View Source

Replays recorded terminal sessions from .cast files.

Writes output events to the terminal at their recorded timing, with interactive controls for pause, speed, seek, and quit.

Usage

Player.play("demo.cast")
Player.play("demo.cast", speed: 2.0)
Player.play(session, speed: 0.5, max_delay: 3.0)

Controls during playback

  • space - Pause / resume
  • + / = - Increase speed (1x -> 2x -> 4x -> 8x)
  • - - Decrease speed (8x -> 4x -> 2x -> 1x -> 0.5x -> 0.25x)
  • > / . - Skip forward 5 seconds
  • < / , - Skip backward 5 seconds
  • 0..9 - Jump to 0%-90% of recording
  • q / ESC - Quit

Summary

Functions

Plays a .cast file or session struct.

Functions

play(path_or_session, opts \\ [])

@spec play(
  Path.t() | Raxol.Recording.Session.t(),
  keyword()
) :: :ok | {:error, term()}

Plays a .cast file or session struct.

Options

  • :speed - Playback speed multiplier (default: 1.0). 2.0 = double speed.
  • :max_delay - Cap on delay between events in seconds (default: 5.0).
  • :interactive - Enable keyboard controls (default: true).