Submit from here
Pick a file, paste your bearer token, and upload straight to the relay — no app install, no Tailscale. Your token carries your quota, so one key can't eat the box. No token yet? Ask the operator to mint one with relay/tokens.py add.
New job
Saved only in this browser's local storage. Never sent anywhere except this relay.
Quota + job status
Your budget
Signal chain
Three hops, one direction. The phone never talks to the GPU box directly, so the same call works on mobile data or inside the tailnet.
Submit
- Multipart upload with a JSON options block
- Streams to disk, never held in memory
- Options validated before the job is accepted
Relay
- Stores audio and tracks job state
- Holds the queue while b550 is offline
- Hands jobs over FIFO the moment the worker polls
Transcribe
- Pulls work over the tailnet when it is up
- Runs NeMo Parakeet on CUDA
- Returns SRT plus a derived plain-text transcript
Interface
One bearer token for clients, one for the worker. The status endpoint is the only thing a client needs to poll.
Endpoints
Live status
Pipeline
Options, honestly
What the pipeline actually honours today. Unsupported values are ignored and noted in the job log rather than silently pretending to work.
| Option | Values | Status | Behaviour |
|---|---|---|---|
| language | auto · en · de · fr … | partial | Non-English switches on the multilingual Parakeet v3 model. There is no per-language switch — auto and de behave identically. |
| tracks | mix · left · right · split | partial | left/right map to audio track 0/1. mix and split fall back to the default track. |
| diarization | true · false | blocked | Needs a HuggingFace token on the worker for pyannote. Not configured yet, so requests fail with a clear error. |
| model | tiny · base · small … | ignored | Parakeet TDT 0.6B is the only engine. The value is accepted and logged, but does not change anything. |
| speakers | 1–16 | ignored | No speaker-count hint is supported by the engine yet. |
| output_formats | txt · srt | works | Both are produced from the same pass. vtt and json are requested often but not produced yet — asking for them returns 404. |