video
Control playback and inspect media across all frames, including cross-origin iframes: list, play/pause, seek, set rate/volume, capture frames, and extract captions.
Instructions
Watch videos on the page (all frames, incl. cross-origin iframes). list: one line per video (ref, frame, src, duration, time, paused, muted, volume, rate, size, readyState, text tracks). play/pause/seek(time)/set(rate, muted, volume, loop). frames: images by element screenshot, each preceded by "frame i/n @ mm:ss.ss": times=[s…] (seek each), count (default 6, evenly spaced over start..end), or every_ms + duration_ms (sample while playing); seek-based capture restores time and paused state; all-black frames (DRM) are flagged. captions: text-track cues as "mm:ss.ss-mm:ss.ss text", optional start/end window. Default target: the largest visible playing video, else the largest visible one.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| end | No | frames with count / captions: window end (s) | |
| tab | No | Tab id such as "t3"; default is the active tab | |
| loop | No | set | |
| rate | No | set: playback rate | |
| save | No | frames: also write each image under <output-dir>/frames/ | |
| time | No | seek: time in seconds | |
| count | No | frames: evenly spaced frames over [start, end] (default 6) | |
| muted | No | set | |
| start | No | frames with count / captions: window start (s) | |
| times | No | frames: seek to each time (s) and capture | |
| action | Yes | ||
| format | No | frames: jpeg (default) or png | |
| target | No | Video ref from video list/snapshot, or a selector; default: the largest visible playing video, else the largest visible one | |
| volume | No | set: 0..1 | |
| every_ms | No | frames: sample every N ms while the video plays in real time | |
| max_edge | No | frames: long edge of each image in px (default 1280) | |
| timeout_ms | No | Timeout in ms; default is the configured action/navigation timeout | |
| duration_ms | No | frames with every_ms: how long to sample |