How Translation Works
Overview
SignStream converts text into AI-generated sign language video. You send a text string to the Generate endpoint, and SignStream processes it through a multi-stage pipeline and delivers a sign language video in your chosen format. For live streams, the Live Translation flow transcribes the incoming audio track to text first, then feeds it through the same pipeline.
The Translation Pipeline
Every translation follows the same core pipeline:
- Input — A text string is submitted via the API
- Natural Language Processing — The input text is analysed for meaning, grammar, and context
- Text-to-Gloss Conversion — The processed text is converted into sign language gloss notation, a structured representation of signs
- Sign Language Video Generation — The gloss sequence drives a digital signer avatar to produce video frames
- Output Delivery — The generated video is encoded in your chosen format and delivered via your selected method
For Live Translation sessions, the incoming stream’s audio track is transcribed to text by an additional speech-to-text step before the NLP stage.
Input Types
The Generate endpoint accepts text input:
| Input Type | Description |
|---|---|
| Text | A direct text string to translate. Set content.type to text and provide the string in content.data. |
To translate a live stream in real time, use Live Translation: you connect an RTMP or HLS source and SignStream transcribes its audio track to text automatically — there is no audio or video file input on the Generate endpoint. To convert a finished audio or video file to signed video, use SignStudio.
Output Formats
Choose the format that best fits your use case:
| Format | Best For |
|---|---|
| HLS | Live streaming and real-time playback in web players |
| MP4 | Downloadable video files, offline use, and broad device compatibility |
Delivery Methods
The delivery.method field controls how the generated video is returned:
| Method | Behaviour |
|---|---|
stream | Returns a 303 redirect to an HLS manifest URL for streaming playback |
download | Returns a 303 redirect to a downloadable file |
display | Routes the output to a configured display screen. Requires delivery.config.screenId |
push | Pushes the output to a configured destination |
Configuration Options
Fine-tune your output using the delivery.config object:
delivery.config
| Name | Type | Required | Description |
|---|---|---|---|
| quality | string | optional | Output resolution. SDHD4K |
| codec | string | optional | Video codec. Default: h265h264h265 |
| backgroundColor | string | optional | Background colour as hex (e.g. #1a73e8) or transparent. |
| digitalSigner | string | optional | Avatar signer to use. RAE signs BSL, JAY and MAX sign ASL. Default: RAERAEJAYMAX |
| language | string | optional | Target sign language. Must match the selected digitalSigner: BSL for RAE, ASL for JAY and MAX. BSLASL |
| lowLatencyMode | boolean | optional | Enable LL-HLS for reduced latency. |
| hlsSegmentDuration | number | optional | HLS segment duration in seconds (1.0–10.0). |
| screenId | number | optional | Target display screen identifier. Required when delivery.method is "display". |
For full details on all parameters, see the API Reference.