Communitygithub.com

yunjundai/video-editing-skills

Edita videos y fotos existentes en computadoras sin tarjeta gráfica dedicada o con recursos limitados usando Remotion, FFmpeg, Shotcut y reconocimiento de voz por CPU. Genera subtítulos tradicionales, introducciones, barras de nombre y transiciones, manteniendo proyectos editables. Ideal para eventos escolares, entrevistas y videos conmemorativos; para proyectos nativos de DaVinci Resolve, usa la skill correspondiente.

¿Qué es video-editing-skills?

Esta skill de agente de IA, 'yunjundai/video-editing-skills', está diseñada para la edición de video sin dependencia de GPU dedicada, utilizando herramientas de código abierto y locales como Remotion, FFmpeg, Shotcut, y reconocimiento de voz por CPU (faster-whisper con OpenCC). Es ideal para entornos con recursos limitados, como computadoras sin CUDA o NVENC, y se enfoca en la creación de videos de hasta 1080p30 con subtítulos tradicionales, introducciones, barras de nombre y transiciones simples. La skill gestiona todo el flujo de trabajo: desde el inventario de medios y la creación de proxies hasta la composición con Remotion, la sincronización de subtítulos y la edición final en Shotcut. Los proyectos se mantienen editables a través de archivos de proyecto Remotion y MLT de Shotcut, y se entregan como MP4, SRT, y los archivos fuente. La skill incluye scripts y configuraciones para trabajar con rutas absolutas, y recomienda al menos 16 GB de RAM y SSD. No debe confundirse con skills para DaVinci Resolve; esta es autónoma para flujos de trabajo de software libre.

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

Preguntar en tu IA favorita

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

Documentación

Edición de Video sin GPU Dedicada

Cuando otros agentes de IA usen, instalen o empaqueten esta skill, lean primero agent-compatibility.md y procesen el directorio de la skill y la configuración local según la plataforma objetivo.

Usa Remotion local para animaciones y composición, FFmpeg para procesamiento de audio/video, y Shotcut para ajustes finos; los subtítulos usan faster-whisper CPU/int8 y OpenCC. Por defecto, no depende de GPU dedicada, CUDA, NVENC, DaVinci Resolve, renderizado en la nube ni efectos de pago. Respeta el estilo y formato de entrega especificados por el usuario.

Entorno y Recursos

Al primer uso, copia local-environment.example.json a references/local-environment.json y completa las rutas reales de las herramientas; las rutas de ejemplo no implican que las herramientas estén instaladas.

  • Lee primero references/local-environment.json y usa las rutas absolutas de las herramientas. Ejecuta scripts/project.py doctor; los subtítulos usan Python del venv dedicado. El doctor no requiere CUDA ni Resolve; solo verifica la existencia del programa Shotcut, no su validación GUI.
  • Esta skill incluye scripts, plantillas Remotion y archivos de bloqueo de dependencias, y puede usarse independientemente de otras skills de edición; la ubicación de las herramientas y modelos locales se especifica en el archivo de configuración. Al trasladarla a otra computadora, lee environment-notes.md, reconstruye las dependencias faltantes, modifica las rutas y prueba nuevamente. No asumas que la otra máquina ya tiene las herramientas instaladas.
  • Configuración predeterminada: 16:9, 1920×1080, 30fps; primero realiza una vista previa a media resolución. Remotion usa modo de un solo trabajo, backend gráfico de software SwiftShader y codificación de software H.264; no cambia automáticamente a CUDA. Con suficiente memoria, se puede usar --concurrency 2; con poca memoria, mantener en 1.
  • Los trabajos se realizan secuencialmente; no ejecutes simultáneamente renderizado completo, reconocimiento de subtítulos y conversión de proxies. Si la memoria es insuficiente, reduce primero la resolución de vista previa, usa proxies o divide en segmentos; los segmentos deben mantener las mismas especificaciones de video y tiempos de subtítulos correctos, y verificar las uniones.
  • Se recomienda 16 GB de RAM como mínimo y 32 GB para mayor comodidad, con SSD. Esto es una recomendación de trabajo, no una garantía de que todas las computadoras funcionen sin problemas; no infieras la velocidad de salida no medida a partir del número de núcleos o la duración del video.

Material y Edición

  1. Si los requisitos están incompletos, primero infiere la duración, relación de aspecto y narrativa basándote en los materiales disponibles; solo pregunta si la falta de información afecta el resultado final. Si no se conoce la ubicación de los materiales, primero inspecciona el directorio de trabajo. Conserva los archivos originales; los archivos derivados se colocan en una nueva carpeta de trabajo.
  2. Lee media-commands.md y usa scripts/media.py inventory para crear un inventario de duración, relación de aspecto, audio y miniaturas. Mira las imágenes representativas, escucha la voz, lee la transcripción y luego selecciona los segmentos; no trates las candidatas a corte o suposiciones como hechos confirmados.
  3. Si hay video 4K, alta tasa de bits o vista previa congelada, usa media.py proxy --width 960 para generar archivos de vista previa H.264/AAC. Registra la correspondencia entre el original y el proxy; la vista previa puede usar el proxy; antes de la salida final, restaura el original y vuelve a verificar los rangos de recorte y la sincronización. No entregues el proxy como si fuera de calidad original.
  4. Lee project-commands.md y usa scripts/project.py init para crear un nuevo proyecto Remotion. Copia el material seleccionado a public/media/ y edita public/project.json; las especificaciones de datos están en motion-template.md. La plantilla admite introducciones, capítulos, zoom en fotos, video, citas, créditos, subtítulos y barras de nombre.
  5. Verifica el punto de entrada y la duración del video con ffprobe primero. Prioriza fundidos, cortinillas simples, zoom lento en fotos y animaciones de texto cortas; evita por defecto efectos de desenfoque, partículas, 3D o capas múltiples de alta resolución. Si la calidad es insuficiente, ajusta el diseño, no rellenes con texto demasiado pequeño.
  6. Primero haz una vista previa de segmentos pequeños e imágenes estáticas para confirmar el estilo y la legibilidad, luego produce el video completo. Usa project.py render --scale 0.5 para vista previa, y tamaño completo para entrega final. Los comandos específicos se basan en las referencias de esta skill y la ayuda --help de los scripts; usa rutas absolutas y arrays de parámetros para manejar caracteres chinos y rutas con espacios.

Subtítulos Tradicionales y Audio

  • scripts/transcribe.py pasa explícitamente --device cpu --compute-type int8 --model ruta_al_modelo_local --local-files-only, usando el modelo small ya descargado. Si falla el reconocimiento, primero verifica el venv, el modelo y los paquetes compatibles; no solicites instalar CUDA por lentitud.
  • Reconoce la pista de diálogo después de la edición, o convierte cada segmento de subtítulos a la línea de tiempo final teniendo en cuenta recortes y transiciones superpuestas; no apliques directamente los tiempos del material original. Evita generar subtítulos a partir de música de fondo pura.
  • OpenCC solo ayuda a convertir caracteres tradicionales; los nombres de escuelas, personas, títulos, fechas, homófonos y taiwanés requieren corrección. Si el reconocimiento no es claro, conserva marcas pendientes de verificación; no inventes.
  • Las capciones en captions.json se pueden insertar en project.json. El resaltado palabra por palabra requiere verificar primero la sincronización de las palabras y la consistencia del texto de la oración/palabra; si solo hay tiempo de oración, muestra la oración completa.
  • Los subtítulos y las barras de nombre mantienen márgenes de seguridad y no se superponen entre sí; reduce la música de fondo para que la voz sea clara, y verifica si en las transiciones se superponen dos pistas de diálogo. Conserva el SRT y la fuente de diálogo sin mezclar para facilitar futuras correcciones.

Ajuste Fino en Shotcut y Entrega

  • project.py shotcut video_final.mp4 --output nueva_version.mlt crea un punto de partida para ajuste fino en Shotcut, que contiene segmentos de video ya renderizados, permitiendo ajustes adicionales de edición, música y volumen. Shotcut usa efectos CPU normales y salida de software; si es necesario, reduce la Escala de Vista Previa y habilita proxies. No pidas al usuario que active la codificación por hardware.
  • El texto, subtítulos y transiciones de Remotion están horneados en ese segmento, no son capas de texto nativas de Shotcut. Para cambiar texto o animaciones, debes volver al proyecto Remotion y renderizar nuevamente; no afirmes que el MLT permite editar estos efectos palabra por palabra. Si se requieren capas o texto nativo, créalo y verifícalo realmente.
  • Usa media.py check para decodificar completamente y verificar cuadros negros, silencio y errores; luego revisa manualmente la introducción, el punto medio de las transiciones, el subtítulo más largo, las barras de nombre y los créditos, y escucha diálogo/música y sincronización. Los cuadros negros y el silencio pueden ser intencionales y requieren interpretación.
  • Entrega MP4, miniatura, proyecto Remotion con materiales, project.json, SRT y el MLT de Shotcut realmente creado con el método de modificación. Genera nuevas versiones, no sobrescribas trabajos existentes sin aviso; no modifiques los archivos originales ni compartas node_modules.
  • Antes de entregar el MLT, cárgalo realmente con Shotcut o sus herramientas MLT; si solo pasa la verificación de formato XML, indica claramente que no se ha verificado la carga en el editor. No declares éxito para funciones no probadas.
  • Un MP4 H.264 normal no conserva transparencia. Si se requiere animación con transparencia, crea una composición transparente separada y prueba con secuencias PNG RGBA o codificación alfa compatible.

Al finalizar, indica las ubicaciones de los archivos, las configuraciones de salida probadas, el alcance de las modificaciones, los subtítulos pendientes de corrección y los elementos no verificados. Las licencias de las herramientas se rigen por sus respectivos términos; el crédito de la cuenta del agente de IA se cobra por separado.

Individual skills in this repo

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

Skills relacionados