Communitygithub.com

yunjundai/edición-de-video

Edita videos y fotos existentes con herramientas locales gratuitas, crea subtítulos en chino tradicional, títulos cinematográficos, barras de nombre, animaciones de texto y transiciones, conservando proyectos modificables. Ideal para eventos escolares, entrevistas, videos conmemorativos y edición de video general.

¿Qué es edición-de-video?

Esta habilidad permite a un agente de IA editar videos de manera profesional utilizando únicamente herramientas locales gratuitas como FFmpeg, Remotion, faster-whisper y OpenCC, sin depender de APIs de pago, servicios en la nube o efectos comerciales. Está diseñada para ser usada en agentes como Claude Code, Cursor o Codex, y se adapta automáticamente al entorno local del usuario. La habilidad gestiona todo el flujo de trabajo: desde el inventario de medios, la transcripción de audio a subtítulos en chino tradicional, la creación de animaciones dinámicas (como zooms, transiciones y barras de nombre), hasta la exportación final en formatos como MP4 o secuencias PNG con canal alfa. También ofrece compatibilidad opcional con editores tradicionales como DaVinci Resolve o Shotcut para retoques finales. El enfoque principal es la eficiencia y la calidad, evitando suposiciones sobre el contenido y permitiendo siempre la revisión y modificación del proyecto.

Compatible con~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/yunjundai/video-editing-skills/tree/HEAD/cinematic-video-editing

Preguntar en tu IA favorita

Abre un nuevo chat con esta habilidad de agente ya precargada.

Documentación

Edición de video cinematográfica

Antes de que otro agente IA use, instale o empaquete esta habilidad, lea primero agent-compatibility.md y maneje el directorio de la habilidad y la configuración local según la plataforma de destino.

Convierta los materiales de audio y video del usuario en un video visible y modificable. Automáticamente utilice FFmpeg, Remotion, faster-whisper y OpenCC; para ajustes finos, seleccione DaVinci Resolve o Shotcut instalado según preferred_editor en local-environment.json. No depende de MCP, APIs de pago, renderizado en la nube ni efectos de pago. Utilice el editor, estilo y formato de entrega especificados por el usuario.

Entorno local

Antes del primer uso, copie local-environment.example.json a references/local-environment.json e ingrese las rutas reales de las herramientas; las rutas de ejemplo no indican que las herramientas estén instaladas.

Primero lea references/local-environment.json para confirmar las rutas absolutas de las herramientas. Las dependencias de Python se almacenan en un venv dedicado; use el python de ese venv, no el Python del sistema, para realizar el reconocimiento de voz. Use scripts/project.py doctor para verificar el entorno. Los comandos para crear, previsualizar y exportar el proyecto se encuentran en project-commands.md. scripts/ y assets/ son relativos a la carpeta de esta habilidad; use rutas absolutas y arrays de parámetros para manejar correctamente el chino y las rutas con espacios.

Comenzar a trabajar

Solo lea environment-notes.md cuando necesite mover o reconstruir el entorno de herramientas, y reconstruya según las versiones probadas.

  • Según los requisitos y el material, deduzca el enfoque; solo pregunte si falta información que afecte el resultado final. Confirme la duración, relación de aspecto, contenido importante y estilo; si no se especifica, puede comenzar con una vista previa en 16:9, 1080p, 30fps.
  • Si la ruta del material no está clara, primero explore el directorio de trabajo actual; no confunda carpetas vacías con material existente. Conserve los archivos originales; los archivos derivados guárdelos en una nueva carpeta de trabajo.
  • Use media.py inventory para crear un inventario con duración, relación de aspecto, información de audio y miniaturas. Genere proxies solo cuando sea necesario, o use media.py scenes para encontrar puntos de corte. Lea media-commands.md para comandos reales.
  • Vea las tomas representativas, escuche la voz humana, lea la transcripción palabra por palabra y luego seleccione el material; la detección de cortes solo indica cambios de imagen, y la extracción de fotogramas puede omitir acciones. No trate imágenes, nombres de personas o hechos del evento supuestos como contenido confirmado.

Edición y diseño de movimiento

  1. Cree una lista de segmentos y tiempos de inicio y fin del material. Para un video de inauguración escolar, puede usar: introducción, campus e historia, actividades y entrevistas, visión, agradecimientos finales; ajústelo según el material.
  2. Use scripts/project.py init <nuevo_directorio_del_proyecto> para copiar la plantilla de Remotion preparada. Copie el material seleccionado al public/media/ de ese proyecto para evitar modificar el video original.
  3. Edite public/project.json con las escenas, puntos de entrada, duración, transiciones, subtítulos y barras de nombre. Lea motion-template.md para la especificación de datos; primero use ffprobe en el material de video para confirmar el área de recorte. La plantilla admite introducción, capítulos, zoom en fotos, video, citas, agradecimientos finales, y transiciones fade/wipe/slide.
  4. Primero haga una vista previa de un segmento pequeño, luego produzca el video completo. Use project.py still para ver un tiempo específico, use project.py render --scale 0.5 para una vista previa rápida; solo use el tamaño original para la entrega final.

Mantenga una fuente, combinación de colores, márgenes de seguridad y ritmo de animación consistentes. Puede usar espaciado de letras, revelado de líneas, máscaras y aceleración/deceleración para mejorar la calidad. Coloque nombres, títulos, fechas, títulos de películas y combinaciones de colores en datos modificables. Divida o acorte textos largos, no use letras muy pequeñas.

Para efectos adicionales, puede agregar animaciones personalizadas en el código fuente de la plantilla. Cuando sea necesario, lea las habilidades oficiales instaladas remotion-best-practices, remotion-captions, remotion-render o la documentación oficial; la plantilla básica puede ejecutarse de forma independiente. Solo use efectos gratuitos y compatibles. Use Blender solo cuando haya una necesidad real de escenas 3D; no instale automáticamente herramientas grandes opcionales.

Subtítulos en chino tradicional y audio

  • Use scripts/transcribe.py con el modelo small local preparado para generar SRT y captions.json con tiempos por palabra; CPU/int8 es suficiente, no se requiere CUDA. La aceleración GPU requiere confirmar primero los paquetes dependientes.
  • OpenCC solo convierte caracteres y palabras; aún debe revisar nombres de escuelas, nombres de personas, títulos, fechas, homófonos y taiwanés. Marque las partes poco claras para su verificación, no invente.
  • Transcriba la pista de diálogo después de la edición, o convierta a la línea de tiempo final según el corte de cada material y la superposición de transiciones. No pegue directamente los tiempos de subtítulos del material original en el video editado.
  • El array captions en captions.json se puede mover a project.json; los tiempos de inicio y fin son segundos del video final. Para resaltado palabra por palabra, debe tener tiempos de palabra confiables; si solo hay tiempo de oración completa, muestre la oración completa.
  • Los subtítulos y las barras de nombre deben ser legibles y no superponerse. Las transiciones de audio original reproducirán segmentos superpuestos simultáneamente; para entrevistas, intente cortar en los límites de las oraciones; si es necesario, procese el audio de forma independiente. La música de fondo debe mantener clara la voz humana, con un volumen y fundidos adecuados al material.

Entrega y verificación

  • Use media.py check para verificar decodificación, pantallas negras y silencios; las pantallas negras y los silencios pueden ser intencionales, evalúe manualmente. Revise al azar el inicio, el medio de las transiciones, la parte más larga de los subtítulos, las barras de nombre y el final; y escuche la voz humana y la música de fondo.
  • Conserve el código fuente, project.json, el material utilizado y SRT; entregue MP4, miniatura y método de modificación. No sobrescriba el producto final sin aviso; genere una nueva versión o use explícitamente --overwrite.
  • project.py shotcut puede crear un punto de partida para refinamiento en Shotcut con el resultado renderizado. El texto no se convierte en capas de texto nativas de Shotcut; para cambiar texto o animaciones, debe volver al proyecto de Remotion y re-renderizar. No afirme que los efectos renderizados se pueden editar palabra por palabra de forma nativa.
  • Para animaciones con transparencia, cree una composición transparente dedicada, exporte y pruebe con secuencias PNG RGBA o codificación alfa compatible; el H.264 MP4 general no conserva la transparencia.
  • Cuando use Resolve para refinamiento o se requiera control directo, lea resolve-guide.md. El control de Resolve debe probarse en la computadora de destino; puede usar la consola Lua incorporada para crear proyectos, importar material, crear líneas de tiempo y exportar DRP/MP4. Para operaciones GUI, use la habilidad computer-use disponible. No asuma que la conexión de scripting externa de la versión gratuita está disponible. scripts/resolve_verify.lua es solo para verificación de control de hasta 9.8 segundos; para edición real, use la API oficial y operaciones de pantalla según sea necesario, verificando los resultados paso a paso. Cuando necesite efectos de texto editables de forma nativa, cree una plantilla de Fusion y pruébela realmente; no trate el producto terminado de Remotion como un nodo nativo.

Al finalizar, indique la ubicación del video terminado y del proyecto modificable, las funciones verificadas y el contenido pendiente de revisión. El estado de instalación se basa en doctor y la ejecución real; el motor de edición es local y gratuito, los créditos de la cuenta del agente IA se facturan por separado.

Individual skills in this repo

This repo contains 1 individual skill — each has its own dedicated page.

Skills relacionados