YouTube Caption & Chapter Preflight avatar

YouTube Caption & Chapter Preflight

Pricing

$20.00 / 1,000 results

Go to Apify Store
YouTube Caption & Chapter Preflight

YouTube Caption & Chapter Preflight

Validate SRT captions and YouTube chapters before upload. Detect timing errors, overlaps, reading-speed issues, and chapter-rule violations, then export cleaned caption and chapter files plus validation reports. No video scraping or AI caption generation.

Pricing

$20.00 / 1,000 results

Rating

0.0

(0)

Developer

bread kim

bread kim

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

19 days ago

Last modified

Categories

Share

A private Apify Actor for developer teams and creator agencies that batch-check creator-owned or otherwise authorized basic UTF-8 SRT and description chapter text before a manual YouTube upload. It performs no scraping, video/audio download, AI inference, proxying, account access, or YouTube mutation.

The Actor accepts pasted SRT plus trusted durationSeconds metadata. It returns exactly one coordinate-only summary in OUTPUT and exactly one identical default-dataset item for valid input. Valid artifacts are independently exportable: a chapter failure does not withhold a valid caption export, and a caption failure does not withhold valid chapters. Private KVS subtitle/chapter exports contain customer text; the dataset and reports do not.

Supported contract

  • 1–20 videos; 11-character video IDs are metadata only and are never fetched.
  • Basic numbered UTF-8 SRT blocks separated by blank lines, exact HH:MM:SS,mmm --> HH:MM:SS,mmm, BOM/CRLF accepted, multiline Unicode text preserved.
  • Plain text only. WebVTT, ASS, TTML, cue settings and markup are refused instead of silently transformed.
  • Cue timing is never sorted, shifted, repaired, removed, or invented. Export changes only line endings, removes a leading BOM, and reindexes cue IDs.
  • Overlap, gaps over five seconds, and reading speed are advisory warnings. Overlap may be legitimate for speakers. Reading speed counts Unicode code points, not grapheme clusters, and is not a YouTube rule.
  • Chapter parsing recognizes only nonempty-title lines beginning with MM:SS (minutes 00–59) or H:MM:SS. Other description lines are ignored; timestamp-looking malformed lines are errors. Normalized chapter exports exclude ordinary description prose.
  • Chapter rules checked: at least three timestamps, first at 00:00, strictly ascending, each start before duration, and every span—including the last—at least ten seconds. These implement the documented chapter timing rules but do not claim that YouTube will actually display chapters.

This is not transcript-accuracy review, legal/accessibility certification, ownership proof, automatic upload, or an authorization bypass. Do not submit third-party, confidential, unlawful, or unauthorized content. Credential/private-key patterns are rejected, but the detector is not a secret scanner guarantee.

Use

See examples/input.json. Run npm ci --ignore-scripts, then npm test, npm run typecheck, and npm run build. For local Actor-storage integration, set an absolute CRAWLEE_STORAGE_DIR; no input produces only an OUTPUT record with INVALID_INPUT and no dataset row. AUTOMATON_CONTAINER_SMOKE=1 selects a deterministic no-network startup check.

Outputs include REPORT.JSON, REPORT.MD, EXPORTS.JSON, MANIFEST.JSON, and eligible CAPTIONS_<hash>.SRT / CHAPTERS_<hash>.TXT records. Record keys are derived from the validated video ID; payload hashes and a canonical source-input hash support reproducibility. Deep links are canonical https://www.youtube.com/watch?v=<validated-id>&t=0s values and are never requested.

Free alternatives include Subtitle Edit and manual checks in YouTube Studio. The product's value is bounded batch/CI validation, line-level evidence, machine-readable summaries, independent handoff files, and reproducible hashes—not a novel caption algorithm.