cli-anything-videocaptioner
Outil de sous-titrage vidéo propulsé par l'IA. Transcrire la parole → optimiser les sous-titres → traduire → incruster dans la vidéo.
Installation
pip install cli-anything-videocaptioner
Prérequis :
- Python 3.10-3.12 (
videocaptioner1.4.1 nécessite>=3.10,<3.13) videocaptionerdoit être installé (pip install videocaptioner)- FFmpeg requis pour la synthèse vidéo
Utilisation
Commandes de base
# Afficher l'aide
cli-anything-videocaptioner --help
# Démarrer le mode REPL interactif
cli-anything-videocaptioner
# Transcrire une vidéo (gratuit, sans configuration)
cli-anything-videocaptioner transcribe video.mp4 --asr bijian
# Traduire les sous-titres (traducteur Bing gratuit)
cli-anything-videocaptioner subtitle input.srt --translator bing --target-language fr
# Pipeline complet : transcrire → traduire → incruster les sous-titres
cli-anything-videocaptioner process video.mp4 --asr bijian --translator bing --target-language fr --subtitle-mode hard
# Vérifier la cohérence sous-titres/script avant incrustation finale
cli-anything-videocaptioner synthesize video.mp4 -s subtitles.srt \
--subtitle-mode hard \
--review-script approved_script.txt
# Générer un aperçu d'une image de sous-titre pour révision
cli-anything-videocaptioner review subtitles.srt \
--script approved_script.txt \
--preview-video video.mp4 \
--preview-output review_5s.png
# Sortie JSON (pour consommation par un agent)
cli-anything-videocaptioner --json transcribe video.mp4 --asr bijian
Mode REPL
Lorsqu'il est invoqué sans sous-commande, le CLI entre dans une session REPL interactive :
cli-anything-videocaptioner
# Saisir les commandes de manière interactive avec complétion par tabulation et historique
Groupes de commandes
transcribe — Parole en sous-titres
transcribe <input> [--asr bijian|jianying|whisper-api|whisper-cpp] [--language CODE] [--format srt|ass|txt|json] [-o CHEMIN]
bijian(par défaut) : Gratuit, chinois et anglais, sans configurationwhisper-api: Toutes les langues, nécessite--whisper-api-key
subtitle — Optimiser et traduire
subtitle <input.srt> [--translator llm|bing|google] [--target-language CODE] [--layout target-above|source-above|target-only|source-only] [--no-optimize] [--no-translate] [-o CHEMIN]
- Trois étapes : Diviser → Optimiser → Traduire
- Les traducteurs Bing/Google sont gratuits
- 38 langues cibles prises en charge (codes BCP 47)
synthesize — Incruster les sous-titres dans la vidéo
synthesize <video> -s <subtitle> [--subtitle-mode soft|hard] [--quality ultra|high|medium|low] [-o CHEMIN] [--review-script CHEMIN] [--max-script-diff-ratio FLOAT]
- Reflète la surface de synthèse du backend stable
- L'apparence des sous-titres est contrôlée par l'actif de sous-titres / la version du backend, pas par des indicateurs supplémentaires
--review-scriptvérifie la dérive sous-titres/script avant l'export final- Abaissez
--max-script-diff-ratiolorsque la précision de la copie est plus importante que la résilience
process — Pipeline complet
process <input> [--asr ...] [--translator ...] [--target-language ...] [--subtitle-mode ...] [--layout ...] [--no-optimize] [--no-translate] [--no-synthesize] [-o CHEMIN]
review — Vérification de cohérence et aperçu
review <input.srt|input.ass> [--script CHEMIN] [--max-diff-ratio FLOAT] [--preview-video CHEMIN] [--preview-at TC] [--preview-output CHEMIN]
- Détecte la dérive sous-titres/script avant une incrustation définitive
- Peut générer une seule image de révision au lieu de produire une vidéo finale complète
styles — Lister les préréglages de style
styles
- Indique si le backend installé expose la prise en charge des styles prédéfinis
config — Gérer les paramètres
config show
config set <clé> <valeur>
download — Télécharger une vidéo en ligne
download <URL> [-o RÉPERTOIRE]
Sortie JSON
Toutes les commandes prennent en charge --json pour une sortie lisible par machine :
cli-anything-videocaptioner --json transcribe video.mp4 --asr bijian
# {"output_path": "/chemin/vers/sortie.srt"}
Notes sur le backend
- Le backend amont nécessite actuellement Python
>=3.10,<3.13; préférez Python3.12pour les exécutions matricielles. - Les indicateurs de style avancés au moment de la synthèse dépendent de la version du backend. Utilisez
stylespour vérifier si le backend installé les expose. - Les indicateurs de compatibilité tels que
layout,render_mode,style,style_overrideetfont_filedoivent être considérés comme non stables, sauf sistyleset le backend installé confirment qu'ils sont pris en charge.
Langues cibles
Codes BCP 47 : zh-Hans zh-Hant fr en ja ko de es ru pt it ar th vi id et 23 autres.