Le problème résolu
Écoles et créateurs de cours ont souvent des centaines de vidéos sans transcription, ou seulement des sous-titres automatiques illisibles en tant que document. Les services d'accessibilité reçoivent les demandes d'aménagement une par une. Publier des transcriptions lisibles pour tout le catalogue résorbe le retard et profite à chaque apprenant.
Ce que doit inclure votre première version
- Des transcriptions pour chaque vidéo d'un cours ou d'une chaîne
- Reconnaissance vocale IA pour les vidéos sans sous-titres
- Paragraphes et identification des intervenants pour la lisibilité
- Des pages HTML de transcription faciles à parcourir avec un lecteur d'écran
- Fichiers texte et sous-titres téléchargeables
Comment le construire, étape par étape
- 01
Inventorier les vidéos
Résolvez chaque playlist de cours ou chaîne pour lister toutes les vidéos qui ont besoin d'une transcription.
- 02
Transcrire en masse
Envoyez les identifiants à /batch avec format.paragraphs. Activez allow_asr avec un webhook pour que les vidéos sans sous-titres soient transcrites par reconnaissance vocale IA.
- 03
Améliorer la lisibilité
Pour les cours à plusieurs intervenants, utilisez l'identification des intervenants de l'ASR. Conservez paragraphes et intertitres pour que les transcriptions se lisent comme des documents.
- 04
Publier
Affichez chaque transcription sous forme de page HTML ou de section dépliable sous la vidéo, avec un lien de téléchargement.
Code de démarrage
Cette idée repose sur le modèle « Recette 3 : charger une playlist en masse dans une base de connaissances ». Remplacez par vos propres chaînes, prompts et stockage.
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 DBPourquoi ça vaut la peine de le construire
Pour les établissements, le bénéfice est de remplir plus vite leurs obligations d'accessibilité et de rendre les contenus de cours plus utiles et plus faciles à trouver. Agences et plateformes peuvent vendre la publication de transcriptions comme service aux écoles.
Erreurs à éviter
- Publier les sous-titres automatiques en un seul bloc de texte continu : mettez en forme avec paragraphes et intervenants.
- Cacher les transcriptions derrière des téléchargements : mettez le texte sur la page pour qu'il soit lisible et indexable.
- Supposer que la sortie de l'IA est parfaite : faites vérifier ponctuellement les termes techniques et les noms, surtout pour les aménagements obligatoires.
Questions sur cette idée
Les transcriptions améliorent-elles l'accessibilité des vidéos ?
Oui. Les transcriptions donnent aux personnes sourdes, malentendantes ou utilisant un lecteur d'écran un accès complet au contenu oral, et les référentiels d'accessibilité courants les recommandent en complément des sous-titres.
Les transcriptions aident-elles le SEO ?
Publiées en texte sur la page, les transcriptions donnent aux moteurs de recherche bien plus de contenu pertinent à indexer qu'une simple vidéo intégrée.
Et si une vidéo n'a pas de sous-titres ?
Activez la reconnaissance vocale IA et l'API transcrit l'audio dans l'une des 99 langues prises en charge.