Skip to main content

Logging

You can log video in the following formats:
  • MP4 - MPEG-4 Part 14 container format
  • GIF - Graphics Interchange Format
  • WebM - Open web media format
  • M4A - MPEG-4 Audio format
  • OGG - Free, open container format
To log a video, instantiate the pluto.Video class:
video = pluto.Video(
    data: Union[str, np.ndarray],
    rate: int | None = 30,
    caption: str | None = None,
    format: str | None = None,
)
pluto.log({"video/file/0-0": video}, step=step)
ParameterTypeDescription
dataUnion[str, np.ndarray]The video data to log. Can be a path to a video file or a NumPy array.
rateintThe frame rate of the video. Defaults to 30.
captionstrA caption for the video.
formatstrThe format of the video. Defaults to mp4.

Examples

Logging Videos from File Paths

path = "video.mp4"
pluto.log({"video": pluto.Video(path)}, step=step)

Logging Videos from NumPy Arrays

data = np.random.randint(low=0, high=256, size=(10, 3, 112, 112), dtype=np.uint8)
pluto.log({"video": pluto.Video(data)}, step=step)

Viewing

Logged videos appear as playable widgets. Each video card includes standard playback controls (play/pause, seek) and displays the filename and associated run. Video widget in the dashboard When comparing multiple runs, video widgets from each run are shown together, making it easy to visually compare generated outputs or training episodes across experiments.

Step Navigation

If you log videos at multiple training steps, use the step slider below the players to browse through different steps. When multiple video groups are displayed in the same section, their step sliders can be linked so that changing the step on one group changes all of them simultaneously. Click the lock icon on the step navigator to toggle sync on or off.

Fullscreen View

Click the expand button on any video card’s toolbar to open it in fullscreen. The fullscreen view displays the full multi-run comparison at viewport size. Use arrow keys to navigate between steps.