Media, Gaming & Sports
Video Metadata Intelligence API
Most video libraries are searchable by title and almost nothing else. The content inside the file is the part people want to find, and it is usually invisible.
- Streaming platforms
- Broadcasters
- Archive holders
- Education platforms
- Sports and news publishers
What your customers would see
example interfaceMockupIllustrative mockup of the interface we would build. Figures shown are examples, not results from a live deployment.
The problem this solves
An archive of thirty thousand hours typically carries metadata created for a different purpose: a title, a transmission date, a rights note, perhaps a one-line synopsis written by somebody who had not watched it. Search returns almost nothing useful, clips cannot be found, and repurposing an old programme means somebody scrubbing through it.
Manual logging solves this properly and costs what it costs. Rates for detailed shot-level logging make full retrospective coverage of a large archive economically impossible, so it gets done for the recent and valuable material and never for the tail — which is exactly where the undiscovered value sits.
Automated metadata has become genuinely good at the mechanical layers: shot boundaries, speech transcription, speaker turns, on-screen text, topic segmentation, chapter points. It remains unreliable at editorial judgement, names it has never seen, and anything requiring knowledge outside the file. A build that is honest about that division — machine for the mechanical, human for the editorial — produces something usable; one that pretends otherwise produces metadata nobody trusts.
Who buys this
Streaming platforms, Broadcasters, Archive holders, Education platforms, Sports and news publishers
What the API returns
What comes back
- Shot and scene boundaries with timecodes
- Speech transcription with word-level timing and speaker turn segmentation
- Subtitle and caption files in standard delivery formats
- Topic segmentation and chapter points with suggested titles
- On-screen text extraction, including lower thirds and captions burnt into the picture
- Scene-level and programme-level summaries with the timecodes they derive from
- Keyword and entity tags with confidence values and source timecodes
- Quality flags where audio, language or picture conditions make output unreliable
Endpoints
| Method | Path | Returns |
|---|---|---|
| POST | /v1/jobs | Submit a video asset for analysis |
| GET | /v1/jobs/{id} | Job status and progress |
| GET | /v1/assets/{id}/metadata | Full structured metadata for an analysed asset |
| GET | /v1/assets/{id}/chapters | Chapter points with suggested titles |
| GET | /v1/assets/{id}/subtitles | Subtitle output in the requested format |
| POST | /v1/assets/{id}/corrections | Submit human corrections back into the record |
Request and response
illustrativeRequest
{
"asset": { "id": "prog_20714", "uri": "s3://your-bucket/prog_20714.mxf",
"duration_s": 3480 },
"language_hint": "en-GB",
"outputs": ["scenes", "transcript", "chapters", "subtitles", "summary", "entities"],
"subtitle_format": "vtt"
}Response
{
"asset_id": "prog_20714",
"status": "complete",
"duration_s": 3480,
"language_detected": "en-GB",
"scenes": [
{ "from_s": 0.0, "to_s": 94.6, "shots": 12, "type": "studio" },
{ "from_s": 94.6, "to_s": 612.3, "shots": 48, "type": "location" }
],
"chapters": [
{ "from_s": 0.0, "title": "Introduction and panel setup", "confidence": 0.88 },
{ "from_s": 612.3, "title": "Coastal erosion at Dunwich", "confidence": 0.74 },
{ "from_s": 1904.0,"title": "Funding debate", "confidence": 0.61 }
],
"transcript": { "words": 7421, "speakers_detected": 4,
"mean_confidence": 0.93 },
"entities": [
{ "label": "Dunwich", "type": "place", "confidence": 0.95,
"timecodes_s": [618.2, 701.4, 884.9] },
{ "label": "coastal defence levy", "type": "topic", "confidence": 0.71,
"timecodes_s": [1912.6] }
],
"summary": "A studio panel discusses coastal erosion, followed by a location report from Dunwich and a closing debate on local funding.",
"quality_flags": [
{ "from_s": 2104.0, "to_s": 2188.0, "flag": "heavy_wind_noise",
"effect": "transcript confidence below 0.6 in this region" }
]
}Where the data comes from
| Your video files | The source material, read from your storage — nothing useful happens without access to the actual media |
| Existing catalogue records | Titles, synopses, cast lists and transmission data, used to anchor names the model would otherwise guess |
| Your house style and taxonomy | Chapter naming conventions, topic vocabulary and subtitle standards, so output matches what your systems already expect |
| Speech and language models | Self-hosted or licensed; licence terms differ sharply on commercial use and on whether output may be redistributed |
| Existing subtitle files | Where they exist, they are both a quality benchmark and training material for your specific content and accents |
| Human corrections | Corrections made by your loggers, fed back so the same error is not repeated across the archive |
The intelligence layer
The difference between a demo and a service is mostly in this section. These are the parts that keep the answer trustworthy once real traffic is hitting it.
- Shot boundary detection on frame differencing plus histogram analysis, with scene grouping above it — shots are a mechanical fact, scenes are an inference
- Transcription with domain vocabulary injected from your own catalogue, which is what fixes proper nouns and programme-specific terms
- Speaker diarisation reported as turn segmentation rather than identification, unless you hold a voice reference set and the legal basis to use it
- Topic segmentation from transcript structure and visual change together, since either alone puts chapter points in the wrong places
- Summaries constrained to content present in the transcript, with every claim traceable to a timecode; unsupported summaries are withheld rather than returned
- Confidence reported per field and per region, so a reviewer knows which eighty seconds to check instead of the whole programme
- Benchmarking against your existing human-logged material to produce a real accuracy figure for your content, not a published model score
- Correction feedback loop with monitoring of error rates by genre, language and audio condition
What it changes for the business
Searchable archive
Material that could not previously be found becomes discoverable, which is where archive value actually gets realised.
Subtitle cost
Machine subtitles with human correction cost substantially less per hour than origination from scratch.
Clip and repurposing workflows
Timecoded topics and entities make finding a usable clip a query rather than an afternoon.
Recommendation inputs
Scene and topic metadata gives a recommender something to work with on titles that have no viewing history.
How it fits into your product
How it embeds
- Asynchronous job submission with webhook callbacks, since a feature-length file is minutes of processing rather than milliseconds
- Output written directly into your MAM or catalogue schema instead of a format your systems then have to translate
- Subtitle delivery in the formats your playout and web players already consume
- Deployment inside your own environment, which is normal when the media cannot leave your storage
- Correction endpoints so human edits are captured as the authoritative record
- Backfill tooling for processing an existing archive at a controlled rate and cost
Included in every build
- Authentication, scoped API keys and per-customer rate limiting
- Input validation with predictable, documented error responses
- Versioned endpoints so your integration never breaks without notice
- Request and response logging for audit and dispute resolution
- Latency, error-rate and usage monitoring with alerting
- OpenAPI specification, sandbox environment and client examples
- Backups, failover design and a documented recovery procedure
- An agreed support arrangement once the service is live
How we would build it
about 12 weeksDiscovery and data review
Weeks 1–2
We agree the exact question the API answers, review the sources you already hold, check what has to be licensed, and write down the response contract your developers will code against.
Architecture and prototype
Weeks 3–4
You get a written architecture plus a working endpoint on real data — narrow, but genuinely callable — so integration can be tested against something concrete rather than a document.
Production build
Weeks 5–10
Pipelines, models, storage, authentication, rate limiting, logging, tests and documentation. Security and observability are part of this phase, not a later one.
Integration and handover
Weeks 11–12
We support your engineers through their integration, run load tests at your expected volume, and agree how the service is monitored and supported once it is live.
Commercial models
There is no fixed price list, because the cost is driven by data complexity, integration count, model requirements, request volume and the support level you need. Scope is agreed in writing before development starts.
Fixed-scope prototype
A defined slice of the service, built and priced as one piece of work. The usual first step when the business case needs proving internally.
Fixed-price build
An agreed scope against a written architecture, delivered for an agreed price. Best when the requirements are already clear.
Build then retainer
We build the service, then operate and improve it under a monthly agreement covering monitoring, updates and model maintenance.
White-label product
The service runs under your brand, your domain and your pricing, with MLPivot invisible to your customers.
Questions buyers ask
How accurate is the transcription?
It depends heavily on your material, and we would measure it rather than quote a number. Clean studio speech in a well-covered language is very good. Heavy accents, overlapping speech, location noise, archive audio and specialist vocabulary all degrade it, sometimes severely. The API flags low-confidence regions so correction effort goes where it is needed.
Can the summaries be published without review?
For internal search and discovery, generally yes. For anything customer-facing we would recommend review. Summaries are constrained to the transcript and validated against it, which prevents invention, but they still make editorial choices about emphasis that a publisher usually wants a person to approve.
Will it identify people on screen?
Not by default, and we would want a clear conversation before building it. Facial recognition carries specific legal requirements in several jurisdictions and is error-prone across demographics. Speaker turns and on-screen text names are usually what the workflow actually needs, and they carry far less risk.
What about languages outside the major ones?
Quality falls off, and for some languages and dialects it falls off to the point of being unusable. We would test on your actual material during the prototype and tell you which parts of your archive this is worth running against and which parts still need a human.
Can it replace our logging team?
No. It removes the mechanical work — timecoding, transcription, shot detection, first-pass tagging — and leaves the editorial judgement, which is the part your loggers are actually valuable for. Teams that redeploy rather than replace get far better metadata out of this.
Related blueprints
Copyright Similarity Detection API
Similarity matching across audio, video, text and images that returns evidence for a human reviewer rather than an automated infringement verdict.
Content Recommendation API
Personalised rankings, related-item lists and discovery rows for streaming services and publishers, delivered as an API your product calls.
Audience Intelligence API
Interest profiles, consumption trends and segment analysis computed from your own audience data and returned as an API your product teams can query.
Want this built for your platform?
Tell us what your product does today and what you want another system to be able to ask it. We will come back with an approach, a scope and a price.