Flujo de trabajo de ComfyUI Sonic para Generación de Videos con Humanos Digitales
Sonic es un modelo de humano digital de código abierto desarrollado por Tencent que puede generar videos impresionantes utilizando solo imágenes y entrada de audio.
Aquí están los enlaces originales relacionados con Sonic: Página del proyecto: https://jixiaozhong.github.io/Sonic/ Demo en línea: http://demo.sonic.jixiaozhong.online/ Código fuente: https://github.com/jixiaozhong/Sonic
Recientemente, miembros de la comunidad han completado la integración del plugin. Este tutorial se basa en el plugin ComfyUI_Sonic para reproducir los efectos de ejemplo oficiales de Sonic.
Actualmente todavía estoy experimentando algunos problemas al ejecutar este flujo de trabajo. Actualizaré este tutorial con las instrucciones correspondientes una vez que las pruebas estén completas.
1. Instalación del Plugin ComfyUI Sonic
Este flujo de trabajo depende de los siguientes plugins. Por favor, asegúrese de haber completado la instalación del plugin y sus dependencias, o instale los nodos faltantes usando ComfyUI-manager después de descargar el flujo de trabajo:
ComfyUI_Sonic: https://github.com/smthemex/ComfyUI_Sonic ComfyUI-VideoHelperSuite: https://github.com/Kosinkadink/ComfyUI-VideoHelperSuite
Si no está familiarizado con el proceso de instalación, consulte el Tutorial de Instalación de Plugins de ComfyUI
2. Descarga e Instalación de Modelos Sonic
El repositorio del plugin proporciona las descargas de modelos. Si los siguientes enlaces de modelos no son válidos o no son accesibles, por favor revise el repositorio del autor del plugin para actualizaciones.
Los modelos deben guardarse en las siguientes ubicaciones:
📁ComfyUI
├── 📁models
│ ├── 📁checkpoints
│ │ └── 📁video // carpeta de video para categorización de modelos (opcional)
│ │ └── svd_xt_1_1.safetensors // archivo de modelo svd_xt.safetensors o svd_xt_1_1.safetensors
│ └── 📁sonic // Crear nueva carpeta sonic, guardar todo el contenido aquí desde Google Drive
│ ├── 📁 whisper-tiny
│ │ ├── config.json
│ │ ├── model.safetensors
│ │ └── preprocessor_config.json
│ ├── 📁 RIFE
│ │ └── flownet.pkl
│ ├── audio2bucket.pth
│ ├── audio2token.pth
│ ├── unet.pth
│ └── yoloface_v5m.pt
2.1 Elija uno de estos modelos de Stable Video Diffusion:
svd_xt_1_1.safetensors https://huggingface.co/stabilityai/stable-video-diffusion-img2vid-xt-1-1/tree/main svd_xt_1_1.safetensors https://huggingface.co/stabilityai/stable-video-diffusion-img2vid-xt-1-1/tree/main
2.2 Descargar modelos relacionados con Sonic
Visite la siguiente dirección de Drive y descargue todos los recursos en la carpeta: Modelos Sonic: https://drive.google.com/drive/folders/1oe8VTPUy0-MHHW2a_NJ1F8xL-0VN5G7W
2.3 Descargar modelo whisper-tiny
whisper-tiny https://huggingface.co/openai/whisper-tiny/tree/main
Descargue solo estos tres archivos:
- config.json
- model.safetensors
- preprocessor_config.json
Recursos del Flujo de Trabajo ComfyUI Sonic
Por favor, descargue los siguientes archivos de audio, fotos y flujo de trabajo, o use sus propios materiales:
Imagen:
Audio, por favor descargue cualquier audio de muestra de: https://github.com/smthemex/ComfyUI_Sonic/tree/main/examples/wav
Explicación del Flujo de Trabajo ComfyUI Sonic
- En la posición
1
, cargue el modelo de difusión de video estable como svd_xt_1_1.safetensors - En la posición
2
, cargue el archivo de audio - En la posición
3
, cargue la imagen de muestra - En la posición
4
, cargue el archivo de modelo unet.pth - Use Queue o el atajo
Ctrl(Command)+Enter
para ejecutar el flujo de trabajo para la generación de imágenes
Solución de Problemas
- Problema con la versión de transformers Dado que este plugin requiere transformers==4.43.2, si su flujo de trabajo no funciona correctamente, modifique:
📁ComfyUI
├── 📁custom_nodes
│ └── 📁ComfyUI_Sonic // Directorio del plugin
│ └── requirements.txt // Archivo de dependencias
Por favor modifique en requirements.txt de:
#transformers ==4.43.2
Eliminar el signo * # *
transformers ==4.43.2
Luego reinicie ComfyUI o use pip para instalar la dependencia
- Problema de incompatibilidad de tipo frame_rate
Encontré una incompatibilidad de tipo numérico en el último nodo. Intenté usar un nodo primitivo como entrada
Además, como todavía estamos probando este flujo de trabajo, si tiene mejores soluciones, por favor deje un comentario. Actualizaré este tutorial con prontitud.