Il problema che risolve
Scuole e creatori di corsi hanno spesso centinaia di video senza trascrizioni, o solo con sottotitoli automatici che non si possono leggere come un documento. Gli uffici per l'accessibilità ricevono le richieste di adattamento una alla volta. Pubblicare trascrizioni leggibili per tutto elimina l'arretrato e va a vantaggio di ogni studente.
Cosa includere nella prima versione
- Trascrizioni per ogni video di un corso o di un canale
- Riconoscimento vocale AI per i video senza sottotitoli
- Paragrafi ed etichette degli speaker per una migliore leggibilità
- Pagine HTML di trascrizione facili da navigare con gli screen reader
- File di testo e di sottotitoli scaricabili
Come realizzarla, passo dopo passo
- 01
Fai l'inventario dei video
Risolvi ogni playlist o canale del corso per elencare tutti i video che hanno bisogno di una trascrizione.
- 02
Trascrivi in blocco
Invia gli ID a /batch con format.paragraphs. Attiva allow_asr con un webhook così i video senza sottotitoli vengono trascritti con il riconoscimento vocale AI.
- 03
Migliora la leggibilità
Per le lezioni con più speaker, usa le etichette degli speaker dell'ASR. Mantieni interruzioni di paragrafo e titoli così le trascrizioni si leggono come documenti.
- 04
Pubblica
Mostra ogni trascrizione come pagina HTML o sezione espandibile sotto il video, con un link per il download.
Codice di partenza
Questa idea si basa sullo schema "Ricetta 3: carica in blocco una playlist in una knowledge base". Sostituisci canali, prompt e storage con i tuoi.
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 DBPerché vale la pena realizzarla
Per gli istituti, il ritorno sta nel rispettare più rapidamente gli obblighi di accessibilità e nel rendere i contenuti dei corsi più fruibili e facili da trovare. Agenzie e piattaforme possono vendere la pubblicazione delle trascrizioni come servizio alle scuole.
Errori da evitare
- Pubblicare i sottotitoli automatici come un unico blocco di testo continuo: formattali con paragrafi e speaker.
- Rendere le trascrizioni disponibili solo come download: metti il testo nella pagina così è leggibile e indicizzabile.
- Dare per scontato che l'output dell'AI sia perfetto: fai controllare a campione termini tecnici e nomi, soprattutto per gli adattamenti obbligatori.
Domande su questa idea
Le trascrizioni migliorano l'accessibilità dei video?
Sì. Le trascrizioni danno agli utenti sordi e ipoudenti e a chi usa screen reader pieno accesso ai contenuti parlati, e le principali linee guida sull'accessibilità le raccomandano insieme ai sottotitoli.
Le trascrizioni aiutano la SEO?
Le trascrizioni pubblicate come testo nella pagina offrono ai motori di ricerca più contenuti pertinenti da indicizzare rispetto al solo video incorporato.
E se un video non ha sottotitoli?
Attiva il riconoscimento vocale AI e l'API trascrive l'audio in una qualsiasi delle 99 lingue supportate.