cli-anything-videocaptioner
Herramienta de subtitulado de video impulsada por IA. Transcribe voz → optimiza subtítulos → traduce → incrusta en el video.
Instalación
pip install cli-anything-videocaptioner
Requisitos previos:
- Python 3.10-3.12 (
videocaptioner1.4.1 requiere>=3.10,<3.13) videocaptionerdebe estar instalado (pip install videocaptioner)- Se requiere FFmpeg para la síntesis de video
Uso
Comandos básicos
# Mostrar ayuda
cli-anything-videocaptioner --help
# Iniciar modo REPL interactivo
cli-anything-videocaptioner
# Transcribir un video (gratuito, sin configuración)
cli-anything-videocaptioner transcribe video.mp4 --asr bijian
# Traducir subtítulos (traductor Bing gratuito)
cli-anything-videocaptioner subtitle input.srt --translator bing --target-language en
# Proceso completo: transcribir → traducir → incrustar subtítulos
cli-anything-videocaptioner process video.mp4 --asr bijian --translator bing --target-language en --subtitle-mode hard
# Revisar consistencia entre subtítulos y guion antes de la incrustación final
cli-anything-videocaptioner synthesize video.mp4 -s subtitles.srt \
--subtitle-mode hard \
--review-script approved_script.txt
# Generar una vista previa de un fotograma con subtítulos para revisión
cli-anything-videocaptioner review subtitles.srt \
--script approved_script.txt \
--preview-video video.mp4 \
--preview-output review_5s.png
# Salida en JSON (para consumo por agentes)
cli-anything-videocaptioner --json transcribe video.mp4 --asr bijian
Modo REPL
Cuando se invoca sin un subcomando, la CLI inicia una sesión REPL interactiva:
cli-anything-videocaptioner
# Ingrese comandos de forma interactiva con autocompletado e historial
Grupos de comandos
transcribe — Voz a subtítulos
transcribe <input> [--asr bijian|jianying|whisper-api|whisper-cpp] [--language CODE] [--format srt|ass|txt|json] [-o PATH]
bijian(predeterminado): Gratuito, chino e inglés, sin configuraciónwhisper-api: Todos los idiomas, requiere--whisper-api-key
subtitle — Optimizar y traducir
subtitle <input.srt> [--translator llm|bing|google] [--target-language CODE] [--layout target-above|source-above|target-only|source-only] [--no-optimize] [--no-translate] [-o PATH]
- Tres pasos: Dividir → Optimizar → Traducir
- Los traductores Bing/Google son gratuitos
- Soporta 38 idiomas destino (códigos BCP 47)
synthesize — Incrustar subtítulos en el video
synthesize <video> -s <subtitle> [--subtitle-mode soft|hard] [--quality ultra|high|medium|low] [-o PATH] [--review-script PATH] [--max-script-diff-ratio FLOAT]
- Refleja la superficie de síntesis del backend estable
- El aspecto de los subtítulos está controlado por el recurso de subtítulos/versión del backend, no por indicadores adicionales del harness
--review-scriptverifica la desviación entre subtítulos y guion antes de la exportación final- Reduzca
--max-script-diff-ratiocuando la precisión de la copia importe más que la resiliencia
process — Proceso completo
process <input> [--asr ...] [--translator ...] [--target-language ...] [--subtitle-mode ...] [--layout ...] [--no-optimize] [--no-translate] [--no-synthesize] [-o PATH]
review — Verificación de consistencia y vista previa
review <input.srt|input.ass> [--script PATH] [--max-diff-ratio FLOAT] [--preview-video PATH] [--preview-at TC] [--preview-output PATH]
- Detecta desviación entre subtítulos y guion antes de una incrustación dura
- Puede renderizar un solo fotograma de revisión en lugar de producir un video final completo
styles — Listar preajustes de estilo
styles
- Informa si el backend instalado expone soporte de estilos predefinidos
config — Gestionar configuración
config show
config set <clave> <valor>
download — Descargar video en línea
download <URL> [-o DIR]
Salida JSON
Todos los comandos soportan --json para salida legible por máquina:
cli-anything-videocaptioner --json transcribe video.mp4 --asr bijian
# {"output_path": "/path/to/output.srt"}
Notas del backend
- El backend upstream actualmente requiere Python
>=3.10,<3.13; se prefiere Python3.12para ejecuciones en matriz. - Los indicadores avanzados de estilo en tiempo de síntesis dependen de la versión del backend. Use
stylespara verificar si el backend instalado los expone. - Los indicadores de compatibilidad como
layout,render_mode,style,style_overrideyfont_filedeben tratarse como no estables a menos questylesy el backend instalado confirmen que son compatibles.
Idiomas destino
Códigos BCP 47: zh-Hans zh-Hant en ja ko fr de es ru pt it ar th vi id y 23 más.