2026-09-23 15:03:20 +00:00
|
|
|
# Transcript and Glossary Input Files
|
2026-05-24 01:07:27 +00:00
|
|
|
|
2026-09-23 15:03:20 +00:00
|
|
|
This document owns accepted input formats. Use the [CLI reference](../cli.md) for
|
|
|
|
|
invocation and error exit semantics, [operations](../operations.md) for artifact
|
|
|
|
|
handling, and [output files](output-files.md) for corrected-transcript serialization.
|
2026-05-24 01:07:27 +00:00
|
|
|
|
|
|
|
|
## Transcript JSON Contract
|
|
|
|
|
|
2026-09-23 15:03:20 +00:00
|
|
|
Accepted top-level shapes are an array of segments or an object containing a
|
|
|
|
|
`segments` array. The array must contain at least one segment. Unknown object
|
|
|
|
|
fields are ignored by the current parser; an input envelope does not require a
|
|
|
|
|
schema/version marker.
|
2026-05-24 01:07:27 +00:00
|
|
|
|
2026-09-23 15:03:20 +00:00
|
|
|
| Segment field | Type and validation |
|
|
|
|
|
| --- | --- |
|
|
|
|
|
| `id` | Optional integer (or null). Supplied IDs must be unique; missing IDs are accepted. |
|
|
|
|
|
| `speaker` | Non-empty string |
|
|
|
|
|
| `start`, `end` | Numeric seconds, finite and non-negative; end must be at least start |
|
|
|
|
|
| `text` | Non-empty string |
|
|
|
|
|
| `categories` | Optional array of non-empty strings |
|
2026-05-24 01:07:27 +00:00
|
|
|
|
2026-09-23 15:03:20 +00:00
|
|
|
Supply explicit start and end times for meaningful timing. The current decoder
|
|
|
|
|
uses zero for missing or null timestamps rather than enforcing their presence.
|
|
|
|
|
String validation checks empty values, not whitespace trimming. Normalization can
|
|
|
|
|
merge segments and reassign IDs, so source IDs need not match output IDs.
|
2026-05-24 01:07:27 +00:00
|
|
|
|
2026-09-23 15:03:20 +00:00
|
|
|
The [tiny transcript](../../examples/tiny-transcript.json) is a complete copyable
|
|
|
|
|
input. Invalid JSON, unsupported top-level shapes, empty transcripts, invalid field
|
|
|
|
|
types, duplicate supplied IDs, and the validation failures above are rejected.
|
2026-05-24 01:07:27 +00:00
|
|
|
|
2026-11-10 17:52:14 +00:00
|
|
|
## Glossary collections
|
|
|
|
|
|
|
|
|
|
Glossary definitions are composed as application configuration, including the
|
|
|
|
|
optional companion inputs described by the [configuration reference](../config.md).
|
|
|
|
|
The [local example](../../examples/local/glossary.yml) provides a complete
|
|
|
|
|
collection. Configuration may contain empty collections; processing preflight
|
|
|
|
|
requires every glossary-correction entry to select at least one glossary entry.
|
|
|
|
|
The previous standalone `glossary` file format is not a processing input.
|