API de localização de vídeos para todos os mercados

Transforme um vídeo original em uma versão localizada para cada mercado: o idioma regional correto, termos de marca consistentes, a voz dos locutores, legendas e sincronização labial opcional. Uma única API executa o fluxo de localização, e sua equipe revisa o roteiro antes de qualquer publicação.
Mais de 135 opções de idiomas e regiões
Glossários e revisão
REST + SDK em Python
one source, two Spanish markets
OAuth 2.0
# 1. one Spanish glossary - it applies to every Spanish regional variant
curl -X POST https://api.rask.ai/v2/glossaries \
  -H "Authorization: Bearer $TOKEN" -H "Content-Type: application/json" \
  -d '{"name": "Brand terms", "src_lang": "en", "dst_lang": "es",
       "entries": {"Rask Studio": "Rask Studio", "onboarding": "incorporación"}}'

# 2. a localized version per market, both with the same glossary
for lang in es-mx es-es; do
  curl -X POST https://api.rask.ai/v2/projects \
    -H "Authorization: Bearer $TOKEN" -H "Content-Type: application/json" \
    -d "{\"video_id\": \"$VIDEO_ID\", \"dst_lang\": \"$lang\", \"glossary_id\": \"$GLOSSARY_ID\"}"
done
GET /v2/projects/{project_id}/transcription
review
# Review: source and translated text, segment by segment
curl -s https://api.rask.ai/v2/projects/$ID/transcription \
  -H "Authorization: Bearer $TOKEN" \
  | jq '.segments[] | {speaker, src: .src.text, dst: .dst.text}'
Usado por equipes do mundo todo
Recursos

O que a API de localização de vídeos abrange

Localizar vai muito além de traduzir o áudio. A API reúne opções de idiomas regionais, controle de termos, vozes, legendas e revisão em um único fluxo por mercado. Adicione a sincronização labial opcional, cobrada separadamente.

Mais de 135 opções de idiomas e regiões

Localize para uma região específica: es-mx ou es-es, pt-br ou pt-pt, fr-ca ou fr-fr. Cada projeto utiliza um local de destino, e o idioma original é detectado de forma automática.

Controle de terminologia

Os glossários garantem que os nomes e termos da sua marca fiquem iguais em todas as versões localizadas. Um único glossário abrange todas as variações regionais de um idioma, e cada projeto registra a versão do glossário utilizada.

Sua tradução aprovada

Comece com a tradução automática ou envie um arquivo SRT com a tradução já aprovada pela sua equipe para que a Rask gere a dublagem.

Sincronização labial para vídeos com pessoas em cena

Alinhe o movimento dos lábios com a fala localizada nos trechos em que aparece alguém na câmera. É um recurso opcional, e a geração de cada vídeo completo é cobrada separadamente.

Áudio de fundo preservado

A música, o som ambiente e os efeitos do áudio original continuam na mixagem por baixo da fala localizada, garantindo a mesma qualidade de produção em todos os mercados.

Legendas e legendas ocultas

Cada versão localizada vem com legendas nos formatos SRT e VTT, no idioma de destino e com o tempo perfeitamente sincronizado com a fala.

Vozes dos locutores em diferentes mercados

Em entrevistas e diálogos, o recurso de clonagem instantânea de voz mantém a voz original de cada palestrante nos idiomas compatíveis. Já a clonagem de voz personalizada salva a voz de um apresentador frequente para garantir consistência. Predefinições de voz por IA cobrem o restante.

Revisão antes de publicar

Os revisores podem ler o texto original e o traduzido lado a lado, ajustar o que não se encaixa no mercado e redublar apenas os trechos alterados.

Cresça sem limites

Sem limites de taxa, sem cota de simultaneidade e sem restrições por chave. Gere centenas de versões localizadas em paralelo sempre que lançar algo em todos os mercados.
Veja como funciona

Um único vídeo original, localizado para quatro mercados

O mesmo clipe localizado para alemão, espanhol, francês e português: fala traduzida com as vozes clonadas dos locutores e áudio de fundo original preservado.
EN flag
En
FR flag
Fr
DE flag
De
PT flag
Pt
ES flag
Es
Fluxo de trabalho

Três etapas no fluxo de localização de vídeos

Defina as regras uma única vez e use-as para localizar todos os vídeos novos. A criação de um projeto inicia a localização; utilize o endpoint /generate após fazer as revisões e edições.
1

Defina suas regras de localização

Crie um glossário para cada par de idiomas, salve vozes personalizadas para apresentadores recorrentes e escolha o local regional de cada mercado onde você vai publicar.

POST /v2/glossaries
2

Crie uma versão por mercado

Envie o vídeo original uma vez e, depois, crie um projeto para cada mercado com o seu glossário ou com uma tradução aprovada importada em SRT.

POST /v2/projects
3

Revise e publique

Leia o texto traduzido lado a lado, edite o que os revisores apontarem, reduble os trechos alterados e baixe o vídeo localizado e as legendas.

GET /v2/projects/{id}/transcription
O tempo de processamento varia conforme o projeto. A redubagem após a revisão é cobrada com base na duração combinada dos trechos alterados, com um mínimo de um minuto por execução.
Desenvolvido para você

Vai traduzir em grande volume? Planeje o fluxo de trabalho com a nossa equipe

Volume recorrente, vários revisores, seu próprio CMS ou LMS: nossa equipe pode ajudar a desenhar o fluxo de trabalho de localização, configurar a terminologia e as etapas de revisão, além de adicionar controle de qualidade humano caso sua equipe não consiga revisar todos os vídeos.

Idiomas e vozes

Precisa de um idioma ou voz que não está no catálogo público? Fale com nossa equipe sobre suas necessidades e as opções disponíveis.

Entrega e integração

Webhooks, envio para sua própria fila, entrega direto no seu S3, endpoints personalizados. Diga-nos como seu sistema precisa receber os dados.

Volume e capacidade

Tamanhos de lote, idiomas de destino por ação e prioridade de processamento são termos de contrato, e não limites fixos do produto.

Segurança e hospedagem

Residência de dados, SSO e SAML, regras de retenção e suporte a análises de segurança são gerenciados como parte da integração empresarial.
Casos de uso

Quem usa uma API de localização de vídeos

Plataformas que incluem vídeos

Plataformas de LMS e educação de clientes, plataformas de criadores e vídeos, ferramentas de webinars e eventos virtuais, SaaS de hospedagem e fluxo de trabalho de vídeos, plataformas de adoção digital, live shopping. Ofereça versões localizadas com opções de idiomas regionais dentro do seu produto, para que seus usuários alcancem um público global e um novo mercado sem sair da sua plataforma.

Agências de localização e produção

Faça a localização para vários clientes usando um glossário por marca e uma etapa de revisão por projeto. Use traduções aprovadas por seus tradutores em arquivos SRT e entregue vídeos dublados, legendas e sincronização labial opcional em um único fluxo de trabalho de localização de vídeos.

Produção contínua de vídeos interna

Varejo internacional e e-commerce, franquias globais, editoras de mídia, universidades corporativas. Localize vídeos de marketing, anúncios em vídeo, conteúdos de e-learning e vídeos de produtos para cada região usando termos de marca consistentes, e crie uma versão atualizada sempre que o vídeo original mudar.
Histórias de clientes

Equipes reais, resultados mensuráveis

Como as empresas localizam vídeos com a Rask, em números.
seta
seta
Código

Exemplos de código da API de localização de vídeos

Um exemplo completo em cada idioma: crie um glossário, localize um vídeo original para dois mercados hispânicos e leia o texto traduzido para revisão.
# pip install git+ssh://[email protected]/braskai/rask-sdk.git@main
import asyncio
from rask_sdk import clients, enums, schemas

MARKETS = ["es-mx", "es-es"]

async def localize(client, video_id, locale, glossary_id):
    job = await client.create_project(data=schemas.ProjectCreate(
        video_id=video_id, dst_lang=locale, glossary_id=glossary_id))
    while job.status is not enums.ProjectStatus.MERGING_DONE:
        await asyncio.sleep(10)
        job = await client.get_project(project_id=job.id)
    return job

async def main():
    client = clients.RaskSDKClient(client_id=CLIENT_ID, client_secret=CLIENT_SECRET)

    glossary = await client.create_glossary(data=schemas.GlossaryCreate(
        name="Brand terms", src_lang="en", dst_lang="es",
        entries={"Rask Studio": "Rask Studio", "onboarding": "incorporación"}))

    jobs = await asyncio.gather(*(localize(client, VIDEO_ID, m, glossary.id) for m in MARKETS))

    for job in jobs:   # review before publishing
        script = await client.get_project_transcription(project_id=job.id)
        for seg in script.segments[:3]:
            print(job.dst_lang, seg.speaker, seg.src.text, "->", seg.dst.text)

asyncio.run(main())
github.com/braskai/rask-sdk
async, typed models
import time, requests

AUTH = "https://rask-prod.auth.us-east-2.amazoncognito.com/oauth2/token"
API  = "https://api.rask.ai"
token = requests.post(AUTH, auth=(CLIENT_ID, CLIENT_SECRET),
                      data={"grant_type": "client_credentials"}).json()["access_token"]
h = {"Authorization": f"Bearer {token}"}

glossary = requests.post(f"{API}/v2/glossaries", headers=h, json={
    "name": "Brand terms", "src_lang": "en", "dst_lang": "es",
    "entries": {"Rask Studio": "Rask Studio", "onboarding": "incorporación"}}).json()

ids = [requests.post(f"{API}/v2/projects", headers=h, json={
          "video_id": VIDEO_ID, "dst_lang": locale, "glossary_id": glossary["id"]}).json()["id"]
       for locale in ["es-mx", "es-es"]]

for pid in ids:
    while requests.get(f"{API}/v2/projects/{pid}", headers=h).json()["status"] != "merging_done":
        time.sleep(10)
    script = requests.get(f"{API}/v2/projects/{pid}/transcription", headers=h).json()
    for seg in script["segments"][:3]:
        print(seg["src"]["text"], "->", seg["dst"]["text"])
requests + polling
no SDK required
// no dependencies, Node 18+ global fetch
const API = 'https://api.rask.ai';
const sleep = (ms) => new Promise((r) => setTimeout(r, ms));
const auth = await fetch('https://rask-prod.auth.us-east-2.amazoncognito.com/oauth2/token', {
  method: 'POST',
  headers: { Authorization: 'Basic ' + btoa(`${CLIENT_ID}:${CLIENT_SECRET}`) },
  body: new URLSearchParams({ grant_type: 'client_credentials' }),
}).then((r) => r.json());
const h = { Authorization: `Bearer ${auth.access_token}`, 'Content-Type': 'application/json' };
const call = (method, path, body) => fetch(API + path, { method, headers: h, body: body && JSON.stringify(body) }).then((r) => r.json());

const glossary = await call('POST', '/v2/glossaries', {
  name: 'Brand terms', src_lang: 'en', dst_lang: 'es',
  entries: { 'Rask Studio': 'Rask Studio', onboarding: 'incorporación' },
});

for (const dst_lang of ['es-mx', 'es-es']) {
  let p = await call('POST', '/v2/projects', { video_id: VIDEO_ID, dst_lang, glossary_id: glossary.id });
  while (p.status !== 'merging_done') { await sleep(10000); p = await call('GET', `/v2/projects/${p.id}`); }
  const { segments } = await call('GET', `/v2/projects/${p.id}/transcription`);
  segments.slice(0, 3).forEach((s) => console.log(dst_lang, s.src.text, '->', s.dst.text));
}
fetch, Node 18+
plain HTTP
# 1. token (valid 1 hour - cache and reuse it)
TOKEN=$(curl -s -X POST https://rask-prod.auth.us-east-2.amazoncognito.com/oauth2/token \
  -u "$CLIENT_ID:$CLIENT_SECRET" -d "grant_type=client_credentials" | jq -r .access_token)

# 2. import the translation your reviewers approved (source and translated .srt)
TRANSCRIPT_ID=$(curl -s -X POST "https://api.rask.ai/v2/transcriptions/srt?src_lang=en&dst_lang=es-mx" \
  -H "Authorization: Bearer $TOKEN" \
  -F "src=@source_en.srt" -F "dst=@approved_es-mx.srt" | jq -r .id)

# 3. create the localized version from it - Rask voices the approved script
curl -s -X POST https://api.rask.ai/v2/projects \
  -H "Authorization: Bearer $TOKEN" -H "Content-Type: application/json" \
  -d "{\"video_id\": \"$VIDEO_ID\", \"dst_lang\": \"es-mx\", \"transcript_id\": \"$TRANSCRIPT_ID\"}"
POST /v2/transcriptions/srt
approved translation from SRT
<?php
use GuzzleHttp\Client;

$http = new Client(['base_uri' => 'https://api.rask.ai']);
$json = fn($r) => json_decode($r->getBody(), true);
$auth = $json((new Client)->post('https://rask-prod.auth.us-east-2.amazoncognito.com/oauth2/token',
    ['auth' => [$clientId, $clientSecret], 'form_params' => ['grant_type' => 'client_credentials']]));
$h = ['Authorization' => 'Bearer ' . $auth['access_token']];

$glossary = $json($http->post('/v2/glossaries', ['headers' => $h, 'json' => [
    'name' => 'Brand terms', 'src_lang' => 'en', 'dst_lang' => 'es',
    'entries' => ['Rask Studio' => 'Rask Studio', 'onboarding' => 'incorporación'],
]]));

foreach (['es-mx', 'es-es'] as $locale) {
    $p = $json($http->post('/v2/projects', ['headers' => $h, 'json' => [
        'video_id' => $videoId, 'dst_lang' => $locale, 'glossary_id' => $glossary['id']]]));
    while ($p['status'] !== 'merging_done') {
        sleep(10);
        $p = $json($http->get("/v2/projects/{$p['id']}", ['headers' => $h]));
    }
    $script = $json($http->get("/v2/projects/{$p['id']}/transcription", ['headers' => $h]));
    echo $locale, ': ', $script['segments'][0]['dst']['text'], PHP_EOL;
}
Guzzle 7
plain HTTP
Python é o SDK oficial. As abas Node, PHP e cURL são exemplos simples de HTTP para os mesmos endpoints.
Progresso

Como cada versão localizada relata o progresso

Cada versão de mercado é um projeto com seu próprio status documentado, permitindo acompanhar um lançamento completo em vários mercados em uma única tela. Você só precisa agir em três grupos.

Sucesso, pare aqui

merging_done
A localização foi concluída. Acesse o projeto mais uma vez para obter os links de download disponíveis para ele.

Em andamento, continue verificando

created
uploading
transcription_started
separate_background_started
determine_speakers_started
translation_started
voiceover_started
merging_started
Além dos _done estados, uma sequência por versão de mercado.

Erro, pare e informe

failed
upload_failed
transcription_failed
translation_failed
voiceover_failed
merging_failed
no_audio
no_words
forbidden_link
no_audio, no_words e forbidden_link são claros o suficiente para você mostrar diretamente aos seus usuários.
Observed run, 3:47 source video, en → es-mx
GET /v2/projects/{project_id}
   0s  created
  11s  transcription_started
  87s  translation_started
  99s  voiceover_started
 154s  merging_started
 165s  merging_done

Ou pule as consultas por completo

Aponte para o nosso endereço de webhook e cada mudança de status chega como um POST, para que sua fila reaja a cada alteração no momento em que ela acontece. O envio via webhook faz parte da integração corporativa.
Ler a documentação
preserveAspectRatio="xMidYMid meet" aria-hidden="true" role="img">
Resultado

Vídeo, áudio e legendas localizados para cada mercado

Cada versão de mercado retorna o vídeo localizado e as legendas em SRT e VTT. Em planos elegíveis, você também pode baixar a voz localizada separadamente ou mixada com o áudio original, para sua própria edição ou distribuição.
Campo
Formato
O que é
translated_video
MP4
O vídeo localizado, pronto para ser publicado
voiceover
WAV
Apenas a fala localizada, para a sua própria mixagem
translated_audio
WAV
Fala traduzida misturada com o áudio de fundo original
translation_srt_path
.srt
Legendas no idioma de destino
translation_vtt_path
.vtt
Mesmas legendas que o WebVTT, para reprodutores web
original_video
MP4
Seu arquivo original salvo, para referência
Controle

Mantenha os termos da marca e os textos consistentes em todos os mercados

A qualidade da localização vem de um processo de revisão. Os revisores verificam cada trecho, corrigem o que não se encaixa no mercado e redubam apenas esses trechos. Os glossários aplicam essas decisões no próximo vídeo e mantêm a consistência da marca em todos os mercados.

Edição por trecho

Edição por trecho
Cada projeto exibe sua transcrição em segmentos com o texto original e o traduzido, permitindo que a correção de um revisor seja feita com uma simples solicitação.
Acesse a transcrição e seus trechos
Atualize o texto original e nós fazemos a tradução novamente
Edite o texto traduzido diretamente para usar as suas próprias palavras
Ajuste o tempo, adicione ou remova trechos
Altere a voz de qualquer locutor

Glossários para termos específicos

Glossários para termos específicos
Vincule um glossário a cada projeto para que nomes de marcas e termos de produtos sejam traduzidos da mesma forma em todas as versões ou mantidos no idioma original de propósito.

Um glossário funciona para um par de idiomas e vale para todas as variações regionais dele. Assim, um único glossário em espanhol atende pt-br e pt-pt igualmente. Os registros do projeto versao_glossario, garantindo que alterações futuras não modifiquem o trabalho finalizado sem que você perceba.
Entrada

Formatos de arquivo compatíveis

Envie qualquer um dos sete formatos de vídeo e quatro de áudio, ou envie uma URL. Conteúdos apenas de áudio, como podcasts, também podem ser traduzidos; a sincronização labial se aplica a gravações que mostram um rosto na tela.

Vídeo

7 formatos
.mp4
.mov
.mkv
.avi
.webm
.m4v
.3gp

Áudio

4 formatos
.mp3
.wav
.flac
.m4a

Informações antes de gastar

O endpoint de mídia retorna a duração, o tamanho do arquivo, o codec de vídeo, a taxa de quadros, a resolução, o codec de áudio, a taxa de amostragem e a disposição dos canais. Valide um arquivo e estime o custo de cada versão com antecedência, pois a localização é cobrada por minuto.
Segurança e conformidade

Pronto para aquisição em todos os mercados

A Brask Inc possui certificação SOC 2 Type II, opera em conformidade com a LGPD e publica o status de controle em tempo real em seu Trust Center. As opções de residência de dados fazem parte da integração para empresas.

Certificações

SOC 2 Type II
GDPR
Membro da CAI e C2PA

Criptografia

TLS 1.2 em trânsito
AES-256 em repouso
Chaves gerenciadas SSE-S3
Rotação de chaves a cada 12 meses no mínimo

O seu conteúdo

Ambiente de IA fechado
Nunca usado para treinar modelos gerais
Exportação completa, sem fidelidade forçada

Acesso

SSO e SAML
Controle de acesso baseado em funções
Credenciais de cliente OAuth 2.0

Corporativo

Opções de residência de dados
SLAs personalizados
Gerente de contas dedicado

Direitos de voz

Vozes sintéticas com direitos de uso
Clonagem de voz com consentimento
Controles de segurança de IA, humano no circuito
Comparação

API do Rask vs. um fluxo de trabalho de localização montado por você

A localização de vídeos reúne tradução, voz, legendas, terminologia e revisão em um único fluxo de produção. Veja o mesmo fluxo de trabalho montado de duas maneiras.
O que você precisa
Rask API
Montado por partes
Opções de idiomas regionais
Mais de 135 opções de idiomas e regiões
Suporte a locais que varia conforme o fornecedor
Termos da marca em todas as versões
Glossários versionados por par de idiomas
Scripts de localizar e substituir mantidos por você
Traduções aprovadas pelos seus revisores
Importado como SRT e, depois, dublado
Alinhamento manual com o vídeo
Vozes dos locutores em diferentes mercados
Clones de voz instantâneos e personalizados
Um fornecedor de voz separado por idioma
Música de fundo e efeitos
Mantido sob a fala traduzida
Uma etapa de separação de áudio que você cria
Legendas em .srt e .vtt
Incluído
Gerado a partir dos seus próprios dados de tempo
Sincronização labial para vídeos com pessoas em cena
Opcional, cobrado por geração de vídeo completo
Um fornecedor diferente
Correção de uma linha após a revisão
Redublar apenas os segmentos alterados
Renderizar novamente a versão inteira
Limites de taxa
Nenhum
O que o seu fornecedor mais rigoroso exigir
Design do fluxo de trabalho e controle de qualidade humano
Disponível com a nossa equipe
Contratados e gerenciados separadamente
Perguntas frequentes

API de localização de vídeos: perguntas frequentes

Não conseguiu encontrar o que procura? Entre em contato com o departamento de vendas.

O que é uma API de localização de vídeos?

Qual é a diferença entre localização de vídeos e tradução de vídeos?

Posso localizar um vídeo para várias regiões do mesmo idioma?

Como mantenho os nomes das marcas consistentes nas versões localizadas?

Posso usar traduções que já aprovamos?

A API lida com referências culturais?

A API traduz textos que aparecem na tela?

Quais idiomas e regiões são compatíveis?

Posso manter a voz do locutor em todos os mercados?

Como a sincronia labial se encaixa em um fluxo de trabalho de localização?

Quanto custa a localização de vídeos?

O Rask pode ajudar a planejar nosso fluxo de trabalho de localização?

Como obtenho acesso à API e uma chave de API?

Comece a dublar em uma tarde

Faça sua primeira solicitação hoje mesmo e fale conosco quando precisar de condições para alto volume ou de um idioma que ninguém mais oferece.