Transcription par lot
Source: 09_batch_transcription
Lit un fichier audio local, l’envoie à l’API OpenAI Whisper en une seule fois, et écrit la transcription dans un fichier texte. Contrairement à l’exemple de transcription locale, aucun modèle n’a besoin d’être téléchargé — le fichier audio complet est envoyé et un seul bloc de transcription est reçu en retour.
Exécution
melodium run 09_batch_transcription/Compo.toml \
--input meeting.wav \
--openai_key sk-...[…] info: stt: reading audio file…
[…] info: stt: transcription completeFonctionnement
Le pipeline est linéaire : lire le fichier → transcrire → écrire.
See in Compositeur StudioPontage Block/Stream
transcribe retourne un Block<string> — une valeur unique émise une fois que la transcription complète est prête. Deux opérations aval la consomment, nécessitant deux adaptateurs différents :
transcribe.transcript --> checkDone.value,check -> logDone.trigger
transcribe.transcript --> sttStream.block,stream -> write.textcheck<string>()supprime la valeur string et émetBlock<void>, utilisé uniquement pour déclencher le logstream<string>()convertit leBlock<string>enStream<string>quewriteTextLocalpeut consommer
La --> fan-out alimente les deux branches simultanément depuis le seul bloc transcript.
Dépendances
[dependencies]
std = "0.10.1" # flux de base, journalisation, structures de données
fs = "0.10.1" # lecture/écriture de fichiers locaux
ml = "0.10.1" # inférence LLM, STT, TTS et modèles locaux