Building a Production AI Translation and Lip-Sync System at Scale

meta · Media & Entertainment · 2023 · source Agentic: no · promotional bias: med · source-backed · extracted with prompt 0.5.4 (schema v2)

Generated from extraction.json — do not edit by hand. Every claim cites verbatim source evidence; stated means the quote directly asserts the claim, implied means it supports it indirectly.

Problem

Domain: Production multimodal translation and lip-sync for social video

Meta needed to translate Reels into other languages, preserve speaker voice/tone, generate lip-synced video, and deliver the right language version at platform scale without creating unsafe or misleading AI media.

Constraints:

Architecture

Meta built AI translations as an asynchronous multimodal media pipeline. A Reel is uploaded to Oil distributed storage, a translation request is queued, AI-enabled workers fetch the media, run audio translation through eligibility checks, sentence splitting, Seamless translation, time stretching, background-noise restoration, safety filters, and then feed translated audio plus the original video into lip-sync preprocessing, alignment, per-Reel/language tuning, inference, muxing, watermarking, provenance metadata, and playback delivery keyed by user language settings.

Diagram confidence: reconstructed (reconstructed from prose).

flowchart LR
  creator-upload[Creator upload] --> oil-distributed-storage[Oil distributed storage]
  oil-distributed-storage --> translation-queue[Translation queue]
  translation-queue --> ai-enabled-worker[AI-enabled worker]
  ai-enabled-worker --> audio-translation-pipeline[Audio translation pipeline]
  audio-translation-pipeline --> seamless-model[Seamless model]
  audio-translation-pipeline --> safety-and-integrity-layer[Safety and integrity layer]
  ai-enabled-worker --> lip-sync-pipeline[Lip-sync pipeline]
  lip-sync-pipeline --> safety-and-integrity-layer
  lip-sync-pipeline --> oil-distributed-storage
  oil-distributed-storage --> playback-stack[Playback stack]
  playback-stack --> consumer-device[Consumer device]
Drag to pan · scroll or use +/− to zoom · reconstructed from the source's described component topology

Components

Component Role Interacts with
Creator upload Entry point where the original Reel is uploaded for sharing and possible translation. Oil distributed storage
Oil distributed storage Media-specialized distributed storage for original and generated translated/lip-synced assets. Creator upload, Translation queue, AI-enabled worker, Playback stack
Translation queue Asynchronous request queue that holds translation orders for target languages. Oil distributed storage, AI-enabled worker
AI-enabled worker Worker process that fetches media, coordinates translation and lip-sync processing, and writes generated media back to storage. Translation queue, Oil distributed storage, Audio translation pipeline, Lip-sync pipeline
Audio translation pipeline Eligibility, segmentation, translation, post-processing, noise handling, and audio mixing pipeline. AI-enabled worker, Seamless model, Safety and integrity layer, Lip-sync pipeline
Seamless model Core universal translator model used to translate supported language segments while preserving voice characteristics. Audio translation pipeline
Safety and integrity layer Red teaming, toxicity detection, watermarking, provenance metadata, deletion, and feedback controls for AI-generated translations. Audio translation pipeline, Lip-sync pipeline, Playback stack
Lip-sync pipeline Video preprocessing, audio-video alignment, lip-sync frame generation, muxing, watermarking, and delivery preparation. AI-enabled worker, Audio translation pipeline, Safety and integrity layer, Oil distributed storage
Playback stack Delivery path that selects and prefetches language-specific media variants using locale and language signals. Oil distributed storage, Safety and integrity layer, Consumer device
Consumer device Viewer endpoint whose language setting determines whether the original or translated Reel is served. Playback stack

Data flow

A creator uploads a Reel to Oil. Meta enqueues a translation order, an AI-enabled worker downloads the media, translates audio, creates the translated and lip-synced asset, and writes it back to Oil. On playback, the delivery stack uses the viewer's device language and locale signals to choose the original or translated asset and prefetch it for a responsive experience.

4 supporting quotes
“first step is to upload this to our distributed storage what that we call oil that is specifically designed to handle media”transcript, stated
“that order is put into a queue few milliseconds after some worker in this case AI enabled picks up that command downloads the media from oil”transcript, stated
“reads that media translate that media creates the Spanish Tab and liap sync content and put that content into the distributed storage into oil”transcript, stated
“if some user connects with their device in English we will send them the English version of that content but if the device is set in Spanish we will send them the Spanish content”transcript, stated

Why this architecture

Meta used an asynchronous storage-and-worker pipeline because translation and lip sync are heavy media transformations, not synchronous request/response features. Seamless provided the core translation model, while auxiliary eligibility, segmentation, alignment, safety, and delivery systems were needed because production Reels differ from clean model-training examples and because language-specific assets must be delivered responsively and transparently.

4 supporting quotes
“detail audio pipeline comprises of multiple steps and uses 10 plus models for different processing steps as a first step we decode the audio to get PCM signals out next we done pre-processing stage which has multiple steps like eligibility sentence”transcript, stated
“seamless model sits at the core of our translation pipeline seamless model is a universal translator model meta released it last year”transcript, stated
“users multi experience is a new format and it required significant changes across injection processing and delivery and this involved orchestration of multiple models and de which were developed independently to create a seamless and natural viewing experience”transcript, stated
“this involved orchestration of multiple models and de which were developed independently to create a seamless and natural viewing experience”transcript, stated

Models used: Seamless · language identification model · audio classifier models · automatic speech recognition · voice activity detection model · lip-sync model · Minto toxicity detector · auxiliary audio/video models

Scale

Alternatives considered (roads not taken)

Split audio arbitrarily into small chunks

Rejected because: Cutting mid-sentence can harm translation quality, so Meta used ASR punctuation and VAD pauses to split around sentence boundaries.

“there are various ways to split the audio however if you split split audio mid sentence it can impact translation quality”transcript, stated
“we use bunch of models like automatic speech recognition to detect punctuation full stop Etc to Mark sentence boundary”transcript, stated

Leave translated audio at its natural translated length

Rejected because: Different language lengths would desynchronize audio and video, so Meta used time stretching to match source duration without sounding rushed or slow.

“as you can see translated audio will be much shorter and will cause a sync issue to ensure audio and video are in sync we need to make sure translated audio length is SA same as source audio length even though word or syllable count might differ this is Major challenge during”transcript, stated
“post-processing to solve this we developed time stretching algorithm to speed up or down the translated audio as needed additionally algorithm ensured that it doesn't seem too rust or too slow to make output more natural without changing audio length another challenge during”transcript, stated

Rely mainly on reference-based automatic quality metrics

Rejected because: The automatic metrics correlated poorly with human perception, forcing heavier subjective eval and statistical bias removal.

“we run correlation studies with both references and reference based metrics to measure quality of translations and both of them correlated poorly with human perception”transcript, stated
“perception this led us to heavily invest on subjective eval and human ratings as these ratings are highly subjective we have to use complex statistical methods to remove variance and bias in the ratings for consistent results between”transcript, stated

Move decoded uncompressed frames through ordinary production networks

Rejected because: Shared network and memory constraints made uncompressed frame movement risky, so Meta designed streaming interfaces.

“decoded and uncompressed frames are part pass between various models we had to carefully design the interfaces and workflows to avoid outof memory issues”transcript, stated
“we have to ensure that we are not B bogging down the network by sending uncompressed frames over Network which necessitated to build streaming interfaces”transcript, stated

Patterns

batch-offline-processing (workflow-orchestration)

Translation requests are queued after media upload, then AI-enabled workers fetch media from Oil, transform it, and write generated language variants back to storage.

“that order is put into a queue few milliseconds after some worker in this case AI enabled picks up that command downloads the media from oil”transcript, stated
“creates the Spanish Tab and liap sync content and put that content into the distributed storage into oil”transcript, stated

guardrails-io-filtering (safety)

The pipeline adds eligibility checks, hallucination/toxicity mitigation, watermarking, provenance metadata, deletion, and user feedback around generated translations.

“as any other model seamless can also have hallucination it also can generate toxic translation which can hurt user feelings”transcript, stated
“we used Minto to detect and mitigate toxic translation during inference time additionally we added water marking”transcript, stated

eval-driven-development (evaluation)

Model iteration depends on subjective human ratings, statistical bias/variance removal, and expert analysis because reference metrics did not match human perception.

“both of them correlated poorly with human perception this led us to heavily invest on subjective eval and human ratings”transcript, stated
“we have to use complex statistical methods to remove variance and bias in the ratings for consistent results between model iterations”transcript, stated

latency-optimization (delivery)

The playback stack uses language and regional signals to prefetch the right translated asset and keep viewing responsive across locations and language preferences.

“we made changes to our playback stack to consider additional signals and language settings”transcript, stated
“this allowed us to optimize prefetch and develop a Snappy experience for our users regardless of their content their location and language preferences”transcript, stated

Tradeoffs

Use sentence-boundary segmentation before translation

Chose ASR punctuation plus VAD-based sentence splitting over arbitrary short audio chunks.

Rationale: Seamless performs better on smaller segments, but cutting mid-sentence can degrade translation quality.

“seamless model is more effective for on smaller audio segments that's why we added sentence spitting stage”transcript, stated
“if you split split audio mid sentence it can impact translation quality so we split audio around sentence boundary”transcript, stated

Stretch translated audio to match source timing

Chose time stretching with naturalness constraints over letting translation length determine audio duration.

Rationale: Matching source duration preserves audio/video sync, but the adjustment must avoid making speech sound rushed or slow.

“translated audio will be much shorter and will cause a sync issue to ensure audio and video are in sync”transcript, stated
“algorithm ensured that it doesn't seem too rust or too slow to make output more natural without changing audio length”transcript, stated

Prioritize semantic translation at scale while adding lip sync

Chose AI translation plus lip-sync generation over human-crafted dubbing that optimizes lip movement at the expense of semantics.

Rationale: Meta needed scalable translation within minutes for many content types, while still avoiding jarring audio/video mismatch.

“traditional movie translations where humans spend hours crafting sentences and carefully selecting words to match lip movements sometimes at the expense of semantic accuracy”transcript, stated
“we need to translate content at scale within minutes across a wide variety of content”transcript, stated

Use subjective human evaluation despite scaling cost

Chose human ratings with statistical debiasing and expert analysis over reference-based metrics as the main quality signal.

Rationale: Automatic metrics poorly tracked human perception, but human ratings are subjective, slow, and hard to scale.

“both of them correlated poorly with human perception this led us to heavily invest on subjective eval and human ratings”transcript, stated
“as you can imagine this is quite timec consuming and difficult to scale”transcript, stated

Add explicit AI provenance to generated media

Chose visual watermarking and provenance metadata over unmarked translated/lip-synced media.

Rationale: Generated media needs transparency and manipulation protection, especially when it can alter voice and lip movement.

“a visual Watermark has been integrated to inform users that a piece of metadata has been generated by AI”transcript, stated
“Provence metadata is an emerging standard in the industry we have Incorporated to provide users with information about any modifications made to a piece of media using AI”transcript, stated

Gotchas (what bit them)

Translated speech length can break audio/video synchronization.

Root cause: Languages encode the same meaning with different word and syllable counts.

Resolution: Meta added time stretching so translated audio matches the source duration without sounding unnaturally rushed or slow.

“some language tend to be more verbos than others consequently when translating from one language to another the translated text often contains more or less words”transcript, stated
“we developed time stretching algorithm to speed up or down the translated audio as needed”transcript, stated

A model trained on clean speech did not handle noisy production videos by itself.

Root cause: Real Reels contain background noise, edits, and diverse recording conditions unlike the clean training data.

Resolution: Meta extracted background noise during preprocessing and added it back during post-processing using in-house algorithms and models.

“seamless model was trained on clean data it doesn't work well if input is noisy”transcript, stated
“ensure background noise is extracted during pre-processing and then added back during postprocessing we developed in-house algorithm and models”transcript, stated

Automatic translation metrics did not reliably reflect perceived quality.

Root cause: Translation quality spans accuracy, expressivity, voice similarity, and lip/audio sync, which reference metrics correlated with poorly.

Resolution: Meta invested in subjective evals, human ratings, statistical debiasing, and subject matter expert analysis for model iteration.

“translation accuracy which measures the correctness of translations expressivity how well are we imitating users on Rhythm voice similarity and a sync”transcript, stated
“both of them correlated poorly with human perception this led us to heavily invest on subjective eval and human ratings”transcript, stated

Lab-model assumptions broke under production media scale.

Root cause: The original model targeted short clean voice samples, while production had billions of videos with varied length, noise, edits, skin tones, and faces.

Resolution: Meta complemented the main model with auxiliary models that were easier to tune for production variation.

“original model was designed to be Universal sentence translator and trained on short and clean voice samples”transcript, stated
“this led us to use several auxilary models which are easier to tune to complement main model and get the best quality out”transcript, stated

Passing uncompressed frames between models can overload memory and shared networks.

Root cause: Decoded uncompressed video frames move through multiple model steps in a production network rather than an isolated lab.

Resolution: Meta redesigned interfaces and workflows, including streaming interfaces, to avoid out-of-memory and network saturation.

“decoded and uncompressed frames are part pass between various models we had to carefully design the interfaces and workflows to avoid outof memory issues”transcript, stated
“not B bogging down the network by sending uncompressed frames over Network which necessitated to build streaming interfaces”transcript, stated

Evaluation

Meta evaluated the system with correlation studies, reference/reference-based metrics, subjective evals, human ratings, statistical bias/variance correction, expert analysis, eligibility tracking, alpha feedback, and product metrics such as impressions.

Metrics: translation accuracy · expressivity and rhythm preservation · voice similarity · audio/video sync · human rating variance and bias · media eligibility rate · impression lift

4 supporting quotes
“assessing the quality of audio translations is a complex task that involves multiple Dimensions such as translation accuracy”transcript, stated
“we run correlation studies with both references and reference based metrics to measure quality of translations”transcript, stated
“we have to use complex statistical methods to remove variance and bias in the ratings for consistent results between model iterations”transcript, stated
“we have seen a quite meaningful increase in Impressions that's quite common sense because now the media is available in more languages”transcript, stated

Outcomes

The system coordinated more than ten models, targeted billions of videos, supported six Seamless languages, ran in alpha for a limited creator set, and reported 90% translation/lip-sync eligibility for submitted media.

4 supporting quotes
“AI translations is just in the alpha stage meaning that only a very few creators have access to it”transcript, stated
“we have seen a quite meaningful increase in Impressions that's quite common sense because now the media is available in more languages”transcript, stated
“90% of the media that was sent to translate and lip sync we were able to do it”transcript, stated
“we want to build this solid platform that enables media mediai use cases New Media use cases”transcript, stated