Announcements

What we shipped this summer: a rebuilt pipeline and in-region transcription

Ziggeo is the capture layer inside other people’s products. When we do our job well you never think about us: someone records an answer inside your application, under your brand, and a playable video with a transcript comes out the other side.

Over the summer we rebuilt most of what sits behind that, in both regions. The API did not change, so there is nothing for you to migrate — but three things about your output and your data are different now, and they are worth two minutes.

Your renditions are now identical in both regions

Everything that happens to a recording after it arrives — transcoding, renditions, thumbnails, effects, audio, images, metadata — runs on one rewritten pipeline, live for every account in the US and the EU since August.

The part that shows up in your output is the toolchain: both regions run a byte-identical FFmpeg build, pinned by image digest. The same source file uploaded to either region produces the same renditions: same encoder, same flags, same output, whichever side of the Atlantic your account sits on.

Output dimensions are also derived by probing the media itself rather than trusting stored values, and rotation is read from the display matrix. In practice: phone recordings play upright, however the handset chose to write them.

Transcription runs in the region your media is in

Transcription used to be a call out to a third-party speech vendor. Since August it is whisper.cpp running a large-v3-turbo model in the same task that just transcoded the media. The audio is already in that process, and it does not leave it.

  • No transcription sub-processor. If you sell into the EU, your customers’ DPA reviews ask who processes their end users’ audio and where. The answer is now the same one you already have for storage and transcoding — no separate speech vendor to name, no extra transfer to justify. EU media is transcribed in the EU.
  • Nothing to change in your code. Word-level timings and per-word confidence scores are still there, in the same fields, which is what subtitles are built from.
  • Profanity masking works in all ten languages. It used to be English-only: set a video to it-IT or pt-BR and the filter quietly did nothing. nl-NL, en-US, en-UK, en-AU, fr-FR, de-DE, it-IT, pt-BR, es-ES and es-LA all mask now.
  • Silence stays silent. Whisper-family models are prone to filling an empty recording with a polite “Thank you.” Every transcription is gated by a voice-activity model first, so a recording with no speech in it produces no speech in the transcript.

More is coming this autumn, and we will write about it here. If there is something you want covered — how the recorder behaves on locked-down corporate and school networks is the question we get asked most — tell us and we will take that one next.