Closed Caption Converter
Closed Caption Converter is a professional-grade caption processing platform built for broadcasters, post-production facilities, and media technology teams. It handles every step of the caption workflow — from format conversion and timing correction through to transcription, translation, and direct delivery to cloud storage and media asset management systems. Whether you need to convert a single SRT file in the browser or automate thousands of jobs per day through an API, Closed Caption Converter has a solution designed for how you actually work.
Three Ways to Use Closed Caption Converter
Every caption workflow is different, so Closed Caption Converter is available in three forms: a zero-install web application for quick conversions, a cloud API for full workflow automation, and a CLI binary for secure on-premise environments.
| Solution | Description | Best For |
|---|---|---|
| Web Application | Runs entirely in your browser. No files are uploaded — all processing happens locally on your device. Select source and target profiles, configure filters, and download converted files instantly. | Ad hoc conversions, small teams, and workflows where data security is a priority. |
| API | A fully-featured REST API that supports conversion, transcription, translation, alignment, and delivery as individual job types. Extend capabilities with Access Providers that connect your existing accounts with third-party services. | Automated broadcast pipelines, media platforms, MAM integrations, and any workflow that requires reliable, high-volume processing. |
| CLI | A single self-contained binary with no external dependencies. Available for macOS, Windows, and Linux. Accepts the same Job Description JSON format as the API and supports stored presets for repeatability. | On-premise and air-gapped environments, serverless deployments (e.g. AWS Lambda), and facilities that cannot send files outside their network. |
Core Concepts
Understanding a handful of foundational concepts will help you get the most out of Closed Caption Converter regardless of which solution you use.
Closed Caption Project (CCPRJ)
CCPRJ is the internal JSON format that Closed Caption Converter uses to represent caption data during processing. Every decode operation reads a source file and converts it into a CCPRJ object. Every encode operation takes a CCPRJ object and writes it to a target format. Filters are functions that receive a CCPRJ object and return a modified CCPRJ object. This consistent internal representation is what makes it possible to convert between any two of the 30+ supported formats without writing a dedicated converter for every pair.
Profiles
A Profile defines how to read (decode) or write (encode) a specific caption format. For example, the SubRip Profile knows how to parse .srt files and convert their timing and text data into CCPRJ, and also how to serialise CCPRJ back out to .srt. Some profiles are decode-only (for example, raw transcription output from a speech-to-text service), and a small number are encode-only. Most profiles support both reading and writing. See the Profiles & Formats page for the full list.
Filters
Filters are transformation functions applied to a CCPRJ object after decoding and before encoding. They are used to conform caption files to technical specifications — correcting timing, adjusting reading speed, segmenting regions, inserting frame gaps, or running quality control checks. Filters are configured individually and applied in sequence. See the Filters page for a description of every available filter.
Job Descriptions
A Job Description is the JSON document you provide to Closed Caption Converter to specify what should happen to a caption file. It identifies the source and target profiles, the frame rate, any filters to apply, and — for API jobs — optional transcription, translation, or delivery instructions. The Job Description is the core interface for both the API and the CLI. The API — Job Types & Descriptions page explains the full schema.
Job Presets
A Job Preset is a saved Job Description stored in the Closed Caption Converter dashboard and identified by a unique preset ID. Instead of passing a complete Job Description in every API or CLI call, you can reference a preset ID and the server will apply the stored configuration. Presets simplify code, reduce the chance of configuration drift between environments, and make it easy to share standard workflows within a team. See API — Presets for more detail.
Access Providers
Access Providers are configured integrations that connect Closed Caption Converter to third-party services — such as transcription engines, translation services, and cloud storage providers. They follow a Bring Your Own Key (BYOK) model: you register your own account credentials with Closed Caption Converter and the platform uses them to call the third-party service on your behalf. This keeps costs transparent and direct. See Access Providers for the full catalogue.