1 puntos por kmg28801 4 시간 전 | Aún no hay comentarios. | Compartir por WhatsApp

Como era la primera vez que editaba video, cada pieza me tomaba medio día, así que automaticé el proceso de edición con código.

La entrada es solo un archivo YAML con narration / visual / callout escrito por escena.
Con una sola línea, python3 src/pipeline.py scenario.yaml config.yaml, sale un mp4 terminado.

Pipeline (Python):

  • Guion → narración TTS (say / Supertone / ElevenLabs intercambiables, con caché de resultados)
  • Distribución automática del timing de subtítulos según la duración de la narración; narración = subtítulos idénticos
  • Renderiza subtítulos y callouts como PNG y los superpone con overlay (elegí este método porque este build de ffmpeg no tiene libass/drawtext; de hecho facilita más el control por píxel de contornos y posición para coreano)
  • Los videos de celular grabados en vertical ajustan automáticamente la relación de aspecto con padding de fondo desenfocado (con una línea en config se cambia entre 16:9 ↔ 9:16 para Shorts)
  • concat de narración + mezcla de BGM (corte automático del BGM al final del video + fade → evita la “cola negra”)
  • Al terminar el render, verifica automáticamente el drift de duración y el brillo del último frame

Está pensado exclusivamente para videos faceless con subtítulos, y de hecho estoy generando los videos de mi canal de YouTube con esta herramienta.

Limitaciones: los subtítulos no sincronizan por palabra, sino por escena (distribuidos proporcionalmente a la cantidad de caracteres).
Además, como se creó asumiendo que ffmpeg en este entorno no tiene libass, el método predeterminado es PNG overlay.

No busca reemplazar por completo a un editor, sino convertir “guion → primer corte de video” en algo prácticamente instantáneo y eliminar el costo de producción repetitiva.

Smoke test (verifica todo el pipeline sin claves, usando la voz de macOS say):
python3 -m pip install -r requirements.txt
python3 demo/make_placeholders.py
python3 src/pipeline.py demo/scenario.yaml demo/config.yaml

MIT. Los comentarios son bienvenidos.

Aún no hay comentarios.

Aún no hay comentarios.