CommunityProgramación y desarrollogithub.com

luoluoluo22/jianying-editor

API de alto nivel (JyWrapper) para la automatización de edición de video con IA en 剪映 (JianYing). Ofrece interfaces Python listas para usar, con soporte para grabación de pantalla, importación de materiales, generación de subtítulos, síntesis de efectos web y exportación de proyectos.

¿Qué es jianying-editor?

Este skill proporciona una envoltura (wrapper) Python llamada JyWrapper que automatiza completamente el proceso de edición de video en la aplicación 剪映 (JianYing). Está diseñado para desarrolladores y usuarios de agentes de IA que necesitan crear, modificar y exportar proyectos de video de manera programática. Las funcionalidades clave incluyen grabación de pantalla con zoom, importación de materiales multimedia, generación automática de subtítulos con voz sintetizada, composición de efectos visuales web (como animaciones e interactividad) y exportación a formatos estándar. Es compatible con MacOS (Apple Silicon e Intel) y Windows, y está optimizado para la arquitectura v5.9+ que utiliza el archivo draft_info.json. Además, incluye capacidades de auto-reparación de proyectos para manejar errores comunes y garantizar la integridad del flujo de trabajo. Es ideal para tareas como crear videos de demostración, generar contenido subtitulado de manera masiva o integrar edición de video en pipelines de automatización más grandes.

Compatible con~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/luoluoluo22/jianying-editor-skill/tree/main/skills/jianying-editor

Installed? Explore more Programación y desarrollo skills: steipete/bluebubbles, steipete/eightctl, steipete/blucli · View all 6 →

Preguntar en tu IA favorita

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

Documentación

¿Qué hace jianying-editor?

剪映 (JianYing) API de alto nivel (JyWrapper) para la automatización de edición de video con IA. Proporciona interfaces Python listas para usar, que incluyen grabación de pantalla, importación de materiales, generación de subtítulos, síntesis de efectos web y exportación de proyectos. Compatible con MacOS (Apple Silicon/Intel) y Windows, y optimizado para la arquitectura v5.9+ (draft_info.json), con reparación automática de proyectos, voz y subtítulos inteligentes, y zoom de grabación de pantalla.

Características principales

  • Grabación de pantalla con zoom: Captura la pantalla con capacidades de zoom programático, ideal para demostraciones y tutoriales.
  • Importación de materiales: Admite la importación de imágenes, videos, audio y otros archivos multimedia.
  • Generación de subtítulos: Genera automáticamente subtítulos sincronizados con el audio utilizando síntesis de voz (TTS).
  • Efectos web: Compone animaciones, transiciones y elementos interactivos basados en tecnologías web.
  • Exportación de proyectos: Exporta el proyecto final a formatos de video estándar (MP4, etc.).
  • Reparación automática: Detecta y corrige automáticamente errores en el archivo de proyecto (draft_info.json).

Requisitos del sistema

  • Sistemas operativos: Windows 10/11 (64 bits) o MacOS 12+.
  • 剪映 versión: v5.9 o superior (con soporte para el archivo draft_info.json).
  • Python: 3.8 o superior.
  • Dependencias: Consulta el archivo requirements.txt para la lista completa de paquetes Python.

Instalación

  1. Clona el repositorio:

    git clone https://github.com/luoluoluo22/jianying-editor.git
    cd jianying-editor
    
  2. Instala las dependencias:

    pip install -r requirements.txt
    
  3. (Opcional) Configura variables de entorno para la grabación de pantalla y TTS:

    export SCREEN_RECORD_OUTPUT="./output/video.mp4"   # En Mac/Linux
    set SCREEN_RECORD_OUTPUT=".\output\video.mp4"    # En Windows
    

Uso básico

Inicializar el wrapper

from jy_wrapper import JianYingWrapper

# Especifica la ruta de instalación de 剪映 y el directorio de trabajo
wrapper = JianYingWrapper(
    jianying_path="/Applications/JianYing.app",  # En MacOS
    work_dir="./projects"
)

Grabar pantalla

wrapper.screen_record(
    duration=30,            # Duración en segundos
    area=(0, 0, 1920, 1080), # Área de grabación (x, y, ancho, alto)
    zoom=1.5,               # Factor de zoom (por ejemplo, 1.5x)
    output_path="./demo.mp4"
)

Importar material y generar subtítulos

# Añadir un video como material
material_id = wrapper.add_material(
    file_path="./demo.mp4",
    type="video"
)

# Generar subtítulos automáticamente a partir del audio
wrapper.generate_subtitles(
    material_id=material_id,
    language="zh",   # Código de idioma para TTS
    voice_profile="female-1"  # Perfil de voz
)

Aplicar efectos web

# Cargar un efecto web desde un archivo HTML/JS
wrapper.apply_web_effect(
    material_id=material_id,
    effect_file="./effects/transition.html",
    duration=2.0  # Duración del efecto en segundos
)

Exportar el proyecto

wrapper.export_project(
    output_path="./final_video.mp4",
    resolution="1920x1080",
    frame_rate=30,
    codec="h264"
)

Referencia de la API

Para una documentación detallada de todas las clases y métodos, consulta la documentación oficial.

Licencia

Este proyecto está licenciado bajo la Licencia MIT. Consulta el archivo LICENSE para más detalles.

Skills relacionados