Projet : Découper les mots d’une vidéo avec Python
Dans ce projet, je me suis donné pour objectif de créer un script Python capable de prendre une vidéo et d’en extraire chaque mot prononcé sous forme de segments audio et vidéo. L’idée était de transformer un contenu continu en une série d’éléments exploitables individuellement.
Au départ, j’ai utilisé Vosk pour la transcription. Ce modèle est simple à mettre en place et fonctionne localement, mais il s’est rapidement montré limité pour mes besoins. Le découpage des mots manquait de précision, ce qui rendait les extractions difficiles à exploiter proprement.
J’ai donc décidé de passer à Whisper. Ce modèle permet d’obtenir des timestamps précis pour chaque mot, ce qui rend possible un découpage beaucoup plus fiable.
À partir de ces données, je récupère les mots et leurs intervalles, puis je filtre les résultats. Tous les segments ne sont pas utilisables, donc je limite la durée des mots pour éviter les erreurs de découpage.
![]()
Lorsqu’un mot apparaît plusieurs fois, je ne garde qu’une seule occurrence. J’ai choisi de conserver la plus longue, car elle est généralement mieux prononcée.

Pour éviter des coupures trop brusques, j’ajoute un léger décalage autour de chaque mot avant l’extraction.
![]()
Enfin, il a fallu gérer un dernier point : la synchronisation entre l’audio et la vidéo. De légers écarts peuvent apparaître, donc j’ajuste soit l’audio, soit la vitesse de la vidéo pour conserver une cohérence.
Le résultat est une collection de fichiers, chacun correspondant à un mot unique, avec son audio et sa portion vidéo associée.
Ce projet m’a surtout permis de comprendre que le modèle de transcription ne fait pas tout. La qualité finale dépend beaucoup du traitement appliqué ensuite, notamment le filtrage, les ajustements et la gestion des cas concrets.