Pular para o conteúdo
Transcript Dock
EntrarComeçar grátis

Menu do site

Transcript Dock
IntroduçãoComo funciona, guias e o que você pode transcrever.
Início rápidoEnvie um link, aguarde a tarefa e exporte a transcrição. Três requisições.
AutenticaçãoChaves de API, escopos, Idempotency-Key e X-Request-Id.
TarefasCriar, aguardar, listar, cancelar e tentar novamente tarefas.
TranscriçõesO objeto de transcrição e as exportações em txt, srt, vtt e json.
LotesAté 50 vídeos em uma única requisição.
Envios de arquivosTranscreva seus próprios arquivos de áudio e vídeo.
WebhookReceba uma chamada quando uma tarefa ou um lote terminar e verifique a assinatura.
ErrosTodos os códigos de erro, o que significam e o que fazer.
Limites de requisiçõesEnvios, tarefas em andamento e leituras por plano; a resposta 429.
Preços e créditos1 crédito por transcrição de legendas, 2 por minuto de transcrição por IA. Planos e créditos extras.
FontesYouTube, TikTok, seus arquivos e links diretos: URLs aceitas e modos.
MCPEncontre e transcreva vídeos no Claude, no Cursor, no Windsurf ou no seu próprio agente.
Especificação OpenAPIA especificação OpenAPI 3.1 para geração de código e clientes tipados.
Claude CodeUm comando adiciona o Transcript Dock ao Claude Code.
App do ClaudeAdicione o Transcript Dock como conector personalizado no claude.ai, no Claude Desktop ou no celular.
CursorAdicione o Transcript Dock como servidor MCP no Cursor.
WindsurfAdicione o Transcript Dock ao Windsurf para que o Cascade encontre e transcreva vídeos.
OpenClawConecte o Transcript Dock aos agentes autônomos do OpenClaw.
19 resultados
Guias

Transcrições de vídeo para pipelines de RAG e LLM

Transforme vídeos do YouTube e do TikTok em blocos que um LLM pode buscar e citar: busque os segmentos com tempo, divida por tempo e mantenha links com marcação de tempo.

Atualizado em


Resposta curta: busque a transcrição em JSON, não em texto simples. O array segments traz um horário de início e de fim para cada linha de legenda, então você pode dividir por tempo e guardar o início como metadado. Assim, cada resposta do seu modelo pode linkar para o momento exato do vídeo.

Por que segmentos com tempo superam o texto simples#

  • Citações: um bloco que sabe que começa aos 754 segundos vira um link para esse momento.
  • Limites naturais: as linhas de legenda terminam nas pausas, então os blocos raramente cortam uma frase ao meio.
  • Procedência: source_origin informa se o texto veio do criador, das legendas automáticas da plataforma ou da transcrição por IA, e language informa o idioma.

Buscar e dividir em blocos#

Este código busca uma transcrição e agrupa os segmentos em janelas de cerca de um minuto. O formato do JSON da transcrição está documentado na referência da API.

rag_ingest.py
import requests
 
API = "https://www.transcriptdock.com"
H = {"Authorization": "Bearer td_live_YOUR_KEY"}
 
def transcript(url: str) -> dict:
job = requests.post(f"{API}/v1/jobs", headers={**H, "Idempotency-Key": f"rag-{url}"[:128]},
json={"source": {"url": url}, "mode": "captions_only"}).json()
while job["status"] not in ("succeeded", "failed", "cancelled"):
job = requests.get(f"{API}/v1/jobs/{job['id']}", params={"wait": 25}, headers=H).json()
if job["status"] != "succeeded":
raise RuntimeError(job["error"]["code"])
return requests.get(f"{API}/v1/transcripts/{job['result_id']}", headers=H).json()
 
def chunks(t: dict, seconds: float = 60.0):
"""Group caption segments into windows of about `seconds`, never splitting a segment."""
url = t["source"]["canonical_url"]
buf, start = [], None
for seg in t["segments"]:
if start is None:
start = seg["start"]
buf.append(seg["text"])
if seg["end"] - start >= seconds:
yield {"text": " ".join(buf), "start": start, "url": f"{url}&t={int(start)}s" if "youtube" in url else url}
buf, start = [], None
if buf:
yield {"text": " ".join(buf), "start": start, "url": url}
 
t = transcript("https://www.youtube.com/watch?v=dQw4w9WgXcQ")
for c in chunks(t):
print(c["start"], c["url"], c["text"][:80]) # embed c["text"], store start and url as metadata

Muitos vídeos#

  • Encontre os vídeos com a descoberta de vídeos: busca no YouTube, um canal, uma playlist ou um perfil do TikTok.
  • Envie-os como um lote e deixe um webhook avisar o seu ingestor quando cada tarefa terminar, em vez de ficar consultando o status.
  • Ler de novo e reexportar uma transcrição é grátis, e enviar um link que você já transcreveu devolve o resultado armazenado; assim, rodar uma ingestão novamente não custa duas vezes.

Agentes que buscam sob demanda#

Nem todo pipeline precisa de um índice. Um agente conectado ao servidor MCP do Transcript Dock pode chamar get_video_transcript quando um usuário mencionar um vídeo e ler o texto diretamente no contexto dele. Para frameworks, veja LangChain e n8n.