Pipeline de creation de datasets STT Darija
# Pipeline de création de datasets STT Darija
Ce projet Windows transforme une vidéo YouTube disposant de sous-titres arabes en un dataset STT contrôlé, traçable et prêt pour une revue humaine. JSON3 est la source temporelle et textuelle de référence. VTT est téléchargé pour comparaison et diagnostic.
## Prérequis
- Windows 10 ou 11 ;
- Python 3.10 ou plus récent ;
- FFmpeg et ffprobe accessibles dans `PATH` ;
- accès Internet pour YouTube et yt-dlp.
Installation :
```powershell
cd C:\Users\Victus\Desktop\darija_dataset_pipeline
python -m venv .venv
.\.venv\Scripts\Activate.ps1
python -m pip install -r requirements.txt
python src\check_environment.py
```
## Lancement
Mode interactif :
```powershell
python src\run_pipeline.py
```
Mode direct :
```powershell
python src\run_pipeline.py --url "
youtube.com"
```
Options utiles :
- `--manifest-path-mode absolute|relative` : chemins WAV absolus ou relatifs ;
- `--keep-work` : conserve `work/current_run` pour le diagnostic ;
- `--expected-block-count N` : exige exactement N événements JSON3 sources ;
- `--no-color` : désactive les couleurs ANSI ;
- `--verbose` : affiche les détails de yt-dlp et FFmpeg ;
- `--help` : affiche toute l'aide.
Le terminal affiche neuf étapes, les progressions de téléchargement et de découpe WAV, puis un résumé compact. Les sorties détaillées des outils restent masquées sauf avec `--verbose`.
## Règle de segmentation 6 / 8 / 12
La segmentation vise environ 8 secondes :
1. elle choisit d'abord la frontière source la plus proche de 8 s dans la plage 6–10 s ;
2. si aucune frontière n'existe, elle accepte une frontière dans la plage 10–12 s ;
3. elle ne dépasse jamais 12 s ;
4. elle ne fabrique pas de silence et ne découpe pas arbitrairement le texte d'un événement source.
Les vrais intervalles sans transcription sont conservés comme discontinuités expliquées. Les événements techniques JSON3 `aAppend`, qui représentent les mises à jour roulantes des sous-ti …