O problema que resolve
Escolas e criadores de cursos costumam ter centenas de vídeos sem transcrição, ou apenas com legendas automáticas que não podem ser lidas como um documento. Os núcleos de acessibilidade recebem pedidos de adaptação um de cada vez. Publicar transcrições legíveis para tudo elimina o acúmulo e beneficia todos os alunos.
O que incluir na primeira versão
- Transcrições para todos os vídeos de um curso ou canal
- Reconhecimento de fala por IA para vídeos sem legenda
- Parágrafos e identificação de falantes para facilitar a leitura
- Páginas de transcrição em HTML fáceis de navegar com leitores de tela
- Arquivos de texto e de legenda para download
Como criar, passo a passo
- 01
Faça o inventário dos vídeos
Resolva cada playlist de curso ou canal para listar todos os vídeos que precisam de transcrição.
- 02
Transcreva em lote
Envie os IDs para /batch com format.paragraphs. Ative allow_asr com um webhook para que os vídeos sem legenda sejam transcritos por reconhecimento de fala por IA.
- 03
Melhore a legibilidade
Em aulas com vários falantes, use os rótulos de falantes do ASR. Mantenha as quebras de parágrafo e os intertítulos para que as transcrições sejam lidas como documentos.
- 04
Publique
Renderize cada transcrição como uma página HTML ou uma seção expansível abaixo do vídeo, com um link para download.
Código inicial
Esta ideia segue o padrão "Receita 3: carregue uma playlist inteira em uma base de conhecimento". Use seus próprios canais, prompts e armazenamento.
import requests
API = "https://www.youtubetranscript.dev/api/v2"
HEADERS = {"Authorization": "Bearer yt_sk_live_YOUR_KEY"}
playlist = requests.post(f"{API}/playlists/resolve", headers=HEADERS,
json={"playlist_url": "https://www.youtube.com/playlist?list=PLAYLIST_ID",
"limit": 100}).json()
ids = [v["video_id"] for v in playlist["items"]]
batch = requests.post(f"{API}/batch", headers=HEADERS, json={
"video_ids": ids,
"format": {"timestamp": True, "paragraphs": True},
}).json()
# Large batches run async: poll GET /batch/{batch_id} until status is "completed"
for r in batch.get("results", []):
if r["status"] == "completed":
for p in r["data"]["transcript"].get("paragraphs") or []:
store(video_id=r["video_id"], start=p["start"], text=p["text"]) # your vector DBPor que vale a pena criar
Para as instituições, o retorno é cumprir as obrigações de acessibilidade mais rápido e tornar o conteúdo dos cursos mais útil e fácil de encontrar. Agências e plataformas podem vender a publicação de transcrições como serviço para escolas.
Erros a evitar
- Publicar legendas automáticas como um único bloco de texto corrido: formate com parágrafos e falantes.
- Deixar as transcrições só para download: coloque o texto na página para que seja legível e indexável.
- Presumir que o resultado da IA é perfeito: peça a alguém que revise por amostragem termos técnicos e nomes, especialmente em adaptações obrigatórias.
Dúvidas sobre esta ideia
Transcrições ajudam na acessibilidade de vídeos?
Sim. As transcrições dão a usuários surdos, com deficiência auditiva ou de leitores de tela acesso completo ao conteúdo falado, e são recomendadas junto com as legendas pelas diretrizes de acessibilidade mais comuns.
Transcrições ajudam no SEO?
Transcrições publicadas como texto na página dão aos mecanismos de busca mais conteúdo relevante para indexar do que apenas um vídeo incorporado.
E se um vídeo não tiver legenda?
Ative o reconhecimento de fala por IA e a API transcreve o áudio em qualquer um de 99 idiomas.