Como gerar legenda SRT a partir do áudio
Envie um arquivo de áudio ou a trilha do seu vídeo e receba a legenda em formato SRT, com os tempos de entrada e saída já sincronizados. O arquivo funciona direto no YouTube, no Premiere, no CapCut e em praticamente qualquer player — sem digitar timecode na mão.
Rode online
Rode nos nossos servidores com a sua conta. As ferramentas grátis rodam no seu navegador; esta aqui é descontada do seu saldo do KIT pelo preço acima.
Por que legendar tudo o que você publica
Boa parte dos vídeos em feed é assistida sem som — quem não tem legenda perde o espectador nos três primeiros segundos. Legenda também é acessibilidade para pessoas surdas ou com baixa audição e ajuda as plataformas a entender o conteúdo. O gargalo sempre foi o trabalho braçal de transcrever e sincronizar; é exatamente essa parte que a API elimina, entregando o arquivo .srt pronto para subir.
Do áudio ao .srt em uma chamada
Crie a tarefa enviando o áudio (pode ser a trilha extraída do vídeo): MP3, M4A, WAV ou OGG, até 200 MB e 180 minutos. O reconhecimento de fala gera os blocos de legenda com numeração, tempo de entrada, tempo de saída e texto — a estrutura padrão do SRT. Baixe o arquivo e suba no YouTube ou importe no seu editor; se quiser ajustar uma linha ou outra, qualquer editor de texto abre .srt.
Custo por vídeo, não por assinatura
O preço é US$ 0,002 por chamada mais US$ 0,0055 por minuto. Legendar um vídeo de 12 minutos custa uns US$ 0,07; um curso inteiro de 3 horas, cerca de US$ 1. Comparado ao custo de legendar na mão — horas de trabalho — ou de assinar ferramenta cara para usar duas vezes por mês, pagar por uso em dólares americanos costuma ser a conta que fecha.
SRT, o formato que todo mundo aceita
O SRT é texto puro: numeração, intervalos de tempo e frases. Por ser simples, virou padrão universal — YouTube, Vimeo, LinkedIn, players de site, Premiere, DaVinci, CapCut. Se a sua plataforma pedir WebVTT (comum em player de site), o KIT também gera; para redes sociais e editores, o SRT resolve na imensa maioria dos casos. E como é texto, você pode revisar nomes próprios e termos técnicos antes de publicar.
Casos de uso
Aulas de curso online com legenda
Uma professora de Curitiba grava aulas para a plataforma própria. Cada aula de 40 minutos vira um .srt por cerca de US$ 0,22, e o curso ganha acessibilidade sem contratar legendador.
Vídeos institucionais e treinamentos internos
A Distribuidora Horizonte Verde legendou os vídeos de integração de novos funcionários: quem assiste do galpão, com barulho de empilhadeira, acompanha tudo pela legenda.
Canal no YouTube com upload semanal
O criador gera o SRT via API dentro do próprio fluxo de edição, revisa os termos do nicho e sobe a legenda junto com o vídeo — sem depender de digitação de última hora.
Perguntas frequentes
O arquivo funciona no CapCut e no Premiere?
Sim. O .srt é aberto por praticamente todo editor e plataforma de vídeo: importe e as legendas caem na linha do tempo já sincronizadas.
As legendas vêm com tempo certo ou preciso ajustar?
Vêm sincronizadas com a fala. Vale uma revisão de texto (nomes próprios, siglas), mas os tempos raramente precisam de retoque.
Como ficam as quebras de linha?
Os blocos seguem um padrão de leitura confortável para players. Como o SRT é texto puro, você pode reajustar quebras específicas em qualquer editor de texto.
Quanto custa legendar 1 hora de vídeo?
Cerca de US$ 0,33: US$ 0,002 da chamada mais 60 minutos a US$ 0,0055. O valor é em dólares americanos e você paga só quando usa.
Preciso de conta para começar?
Não: sem cadastro. O pagamento é direto via PayPal; se preferir, chame no WhatsApp ou mande e-mail e uma pessoa te atende.
Gera legenda em outro idioma?
Esta tarefa gera a legenda no idioma falado no áudio. Para legenda traduzida, combine com a tarefa de tradução de áudio do próprio KIT.
E se o vídeo tiver música alta de fundo?
Trechos com fala clara saem bem; música muito alta por cima da voz reduz a precisão. Se puder, use a trilha de voz separada do seu projeto.
Para desenvolvedores — acesso via API
Tudo nesta página está disponível via API. Esta seção é para equipes que querem integrar a ferramenta aos próprios sistemas; quem não precisa disso pode simplesmente usar a ferramenta acima.
Endpoint
Autenticação por token Bearer. Um único POST coloca a tarefa na fila; o resultado chega por webhook ou link assinado.
Chame do seu código
curl -X POST https://api.kit.forhosting.com/audio/subtitles-srt \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"audio":"https://ejemplo.com/audio.mp3"}'const res = await fetch("https://api.kit.forhosting.com/audio/subtitles-srt", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"audio": "https://ejemplo.com/audio.mp3"
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/audio/subtitles-srt",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"audio": "https://ejemplo.com/audio.mp3"
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/audio/subtitles-srt", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"audio":"https://ejemplo.com/audio.mp3"}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"audio":"https://ejemplo.com/audio.mp3"}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/audio/subtitles-srt", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Exemplo de requisição
{
"audio": "https://ejemplo.com/audio.mp3"
}Exemplo de resposta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "audio.subtitles_srt",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}A API é assíncrona: cada chamada devolve um task_id na hora. Se preferir polling, consulte o status a até 1 requisição por segundo.
Preço
Preço publicado, sem tokens nem créditos escondidos. Tarefa que falha não é cobrada.
Limites
max_mb | 200 |
max_minutes | 180 |
Erros
| HTTP | Código | O que significa |
|---|---|---|
401 | unauthorized | Token ausente ou inválido. Confira o header Authorization. |
402 | insufficient_balance | Saldo insuficiente para esta tarefa. Faça uma recarga e tente de novo. |
404 | unknown_type | Esse tipo de tarefa não existe. Confira o campo type no catálogo. |
429 | rate_limited | Muitas requisições em pouco tempo. Espere um instante e tente de novo. |
422 | task_failed | A tarefa falhou do nosso lado. Você não paga nada por ela. |