utilpeek: check subtitle timing, line length and reading speed
check_subtitle_deliveryutilpeek: Check subtitle delivery timing, line length and reading speed. Returns a cue-level SRT/WebVTT delivery review with versioned language/audience profiles: en-US-adult-v1, en-US-children-v1, ja-adult-v1 and ar-adult-v1. Checks overlaps, minimum gaps, duration, line length, line count and characters per second (Unicode grapheme clusters, not bytes or display columns). At most 1,000,000 characters and 10,000 cues. Findings and suggestions are separate from the original file and cues. No platform approval. English profiles are based on official Netflix guides read 2026-10-22; Japanese/Arabic profiles are Tanod heuristics. Counting and the 80 ms gap are Tanod choices. No audio alignment or missing-speech detection. First 1,000 finding details, exact totals. Malformed input is a 422, not charged. Typically under 0.3 s. Price: USD 0.002. Free: 10 utilpeek calls per IP per UTC day.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| content | Yes | SRT or WebVTT text, at most 1,000,000 characters and 10,000 cues. Preserved verbatim in original_content. | |
| profile | Yes | Explicit versioned language/audience profile. en-US adult/children: based on Netflix general and US-English guides read 2026-10-22 (834-7000 ms, 42 characters/line, 2 lines, 20/17 CPS). ja-adult: Tanod heuristic (1000-7000 ms, 20/line, 2 lines, 8 CPS); ar-adult: Tanod heuristic (1000-7000 ms, 42/line, 2 lines, 17 CPS). All use Tanod's 80 ms minimum gap and grapheme counting; not platform approval. Full rules and official source URLs are returned in profile. | |
| from_format | No | Optional input format; otherwise detect WEBVTT header. | |
| intentional_overlaps | No | Unique 1-based cue numbers in file order: downgrade only their overlap finding to a warning, e.g. concurrent speakers. No cue is modified; other checks still apply. |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| cues | No | ||
| from | No | ||
| error | No | Only on an error result: an object {code, message}, or the reason string of an x402 PaymentRequired object. | |
| metrics | No | ||
| profile | No | ||
| summary | No | ||
| findings | No | ||
| operation | No | ||
| truncated | No | ||
| limitations | No | ||
| suggestions | No | ||
| original_content | No |