À partir d'un storyboard,
Faites une animation.
Ollama + Qwen3 · ComfyUI + Qwen-Image-2.1 · H3 natif. Double route Windows RTX 4090 et Apple Silicon Mac. Le texte, les images et les vidéos sont tous locaux, y compris les paramètres du modèle, 8 flux de travail, les sous-titres automatiques, le mixage de doublage et l'édition automatique de 30 secondes.
STEP 01 / 15
Sélectionnez d'abord la machine : les trois éléments sont locaux et exécutés par ordre d'étapes.
Pour Courts métrages d'animation 3D: Ollama écrit le scénario et le découpage ; Qwen-Image-2.1 crée les références des personnages et les premières images ; MiniMax H3 les transforme en plans avec son. Le montage reste local. Commencez par six plans pour un court métrage d’environ 30 secondes.
| scène | Modèle et paramètres précis | Utilisation dans cet article |
|---|---|---|
| texte | Qwen3-30B-A3B-Instruct-2507:Total 30,5 milliards, activé environ 3,3 milliards | Ollama Tags qwen3:30b-a3b-instruct-2507-q4_K_M; Environ 19 Go de téléchargement. |
| des photos | Qwen-Image-2.1:Générateur 7B + encodeur 8B indépendant | INT8 ConvRot pour Windows ; BF16 pour Mac. Désactivez l'amplificateur de mot de repère supplémentaire, aucun modèle 9B supplémentaire n'est requis. |
| vidéo | MiniMax H3:Générateur dense 33B + encodeur 32B indépendant | Version quantifiée recadrée pour Windows ; environ 13B AdaLN peut être pré-calculé/recadré, et la partie d'inférence du générateur est d'environ 20B. 33B est le montant du paramètre original du générateur. |
Windows 11, RTX 4090 24 Go, 64 Go de mémoire système, NVMe gratuit d'environ 200 Go. La mémoire vidéo de 24 Go utilise du texte, des images et des vidéos à charger par étapes, et l'encodeur et le générateur sont gérés dynamiquement par ComfyUI.
Apple Silicon, macOS 15 ou version ultérieure. L'itinéraire de production complet du H3 est prévu sur la base de puces de classe Max, de 128 Go de mémoire unifiée et d'un SSD hautes performances, avec environ 350 Go d'espace libre ; utilisez d'abord le fichier de vérification pour vérifier le chargement, puis utilisez le fichier de qualité natif 768p.
- Confirmez la machine, l'espace disque et la plage d'utilisation, puis choisissez l'itinéraire Windows ou Mac.
STEP 02 / 15
Créez un répertoire de projet et enregistrez les personnages, les premières images et les plans séparément
Utilisez l’arborescence ci-dessous. Conservez un master de la référence approuvée du personnage et, pour chaque plan, son prompt, son seed, son workflow et sa sortie. Ne régénérez ensuite que les plans à corriger.
My3DShort/
00_story/ 剧本、分镜、角色设定
01_character/ 阿木定妆主图
02_first_frames/ shot01.png ... shot06.png
03_video/ shot01.mp4 ... shot06.mp4
04_edit/ 剪辑工程、字幕、最终成片
workflows/ 当前使用的JSONLe workflow est téléchargé directement depuis ce site
Enregistrez le JSON et faites-le glisser dans le canevas ComfyUI, ou utilisez « Ouvrir » dans le menu. Ces fichiers sont des workflows d'interface utilisateur,Pas une requête API JSON. Le nœud d'image doit télécharger à nouveau son propre fichier ; il ne peut pas conserver le nom du fichier exemple et cliquer directement sur Exécuter.
Fiche de production de 30 secondes : « Colis tardif »
Il y a six plans dans tout le film, et chaque plan dure 5 secondes. Faites d'abord comprendre au public « je ne peux pas rattraper mon retard », puis révélez « quelqu'un attendait » et enfin inversez-le avec un cadeau. Correction du soleil couchant qui brillait depuis le côté gauche de l'image, du banc sur le côté droit, ainsi que du ruban rouge et des vêtements du personnage enroulés autour. La ligne de visée et la position de l'hélice sont maintenues lorsque la caméra change.
| Numéro de miroir / heure | Première image et action principale | Miroir et son |
|---|---|---|
| 01 · 00-05 secondes | Plan moyen long : Amu est à gauche, tenant le paquet à deux mains, regardant la plate-forme vide à droite, les épaules tombant lentement. | Position tranquille ou coup de pouce ; bruit lointain du train. Wrap sécurise la poitrine. |
| 02 · 05 à 10 secondes | Plan rapproché du colis : la pose des mains est liée à la caméra ; un petit morceau de ruban rouge est doucement soulevé par le vent. | Lumière du même côté, la bande rouge pointe vers la droite de l’écran ; il y a un doux bruit de vent et de papier. |
| 03 · 10 à 15 secondes | Plan rapproché d'Amuzhong : gardant ses mains et le paquet en place, il lève seulement les yeux pour regarder vers le côté droit de l'écran. | Les yeux dirigés vers le banc ; coup de coude. Vous pouvez utiliser la courte phrase « M'attendez-vous toujours ? |
| 04 · 15 à 20 secondes | Plan médian inversé : la grand-mère aux cheveux gris est assise sur un banc, vêtue d'un cardigan beige, saluant doucement le côté gauche de l'écran. | Grand-mère regarda Amu. La courte phrase "C'est toi que j'attends". Les voix s'unissent plus tard. |
| 05 · 20 à 25 secondes | Plan médian de deux personnes : dans la première image, la pose de transfert a été prise. Amu tend le paquet et grand-mère tend la main pour l'attraper régulièrement. | Le paquet est toujours entre les deux ; d'un simple mouvement de la main, il y a un bruit de papier gratté. |
| 06 · 25 à 30 secondes | Plan moyen rapproché : grand-mère a sorti un petit foulard dans sa main, Amu regarde le foulard et sourit. | Éliminez le processus de déballage en empruntant des clips. Grand-mère a dit : « À la personne qui livre le colis. » Elle a laissé une émoticône à la dernière seconde. |
Créez aussi une référence fixe pour la grand-mère : cheveux gris courts, cardigan beige en maille, jupe longue vert foncé et matières 3D douces et arrondies. Pour les premières images à deux personnages, raccordez sa référence dans le workflow d’édition à image_3, et spécifié dans le mot d'invite <image3> Retenez seulement grand-mère. Le plan 6 crée directement la première image du « foulard retiré » pour terminer le processus de déballage.
Étendu aux fichiers de production plan par plan en utilisant Qwen3 local
Les instructions de production suivantes contraignent simultanément l'intrigue, les personnages, la relation de référence de première image et les champs audio et vidéo H3. Après la génération, enregistrez les six mots d'invite du miroir un par un et examinez l'axe de prise de vue et la position du paquet conformément au tableau ci-dessus.
Vous réalisez un court métrage d’animation 3D avec des outils locaux. Produisez une fiche de fabrication exécutable pour un film original de 30 secondes, Le Colis en retard.
Éléments fixes : Amu, cheveux châtains courts, yeux marron, imperméable orange avec capuche baissée, sac bandoulière bleu marine et bottes foncées ; colis en papier kraft et ruban rouge ; quai d’une petite ville au coucher du soleil, éclairage venant de la gauche et banc à droite.
Six plans de 5 secondes : Amu est abattu sur le quai→le vent soulève le ruban rouge du colis→il suit le ruban du regard vers le banc à droite→une grand-mère y attend→Amu lui remet le colis→elle en sort une petite écharpe pour Amu, révélant la surprise.
Fournissez d’abord les tableaux des personnages et décors, puis un tableau de six plans : numéro, durée de 5 secondes, valeur de plan, composition initiale, une seule action principale, position et léger mouvement de caméra, raccords d’accessoires et de regards, ambiance sonore, brève réplique facultative et critères de validation.
Pour chaque plan, fournissez un prompt de layout en anglais, un prompt Qwen d’édition de première image et un prompt vidéo H3. L’image de référence 1 est le layout 1344 × 768 du plan ; l’image 2 est la référence du personnage. Ajoutez la même référence de la grand-mère pour les plans à plusieurs personnages.
Utilisez I 2 VA avec une seule première image. La première ligne doit rester en anglais et correspondre exactement à : “For the target video, at 0.00 seconds into the target video, <Picture 1> (de [Plan 1]) est entièrement référencé."; après une ligne vide, utilisez uniquement les trois champs integrated_multimodal_description, overall_soundscape et non_diegetic_music. Chaque fichier indépendant commence à partir de [Plan 1], ancrant la première image puis écrit les actions, les mouvements de caméra et les résultats ; une seule action de sujet est organisée pour chaque prise de vue. Le champ musical est par défaut N/A.
Le dialogue utilise (S1) Amu et (S2) Grandma, la description du timbre est à l'extérieur de l'étiquette et les lignes sont à l'intérieur<d>[Chinese]台词。</d>, avec 12 caractères chinois au maximum par réplique. Omettez les dialogues dans la version avec sons ambiants uniquement.
Gardez les personnages, vêtements, éclairages, regards et positions de remise du colis cohérents. Produisez uniquement le contenu de fabrication.- Le répertoire du projet a été créé et les fichiers de workflow pour les plateformes correspondantes ont été enregistrés.
STEP 03 / 15
Windows : installez Ollama et décompressez la version NVIDIA de ComfyUI
Utiliser uniformément ci-dessous D:\AI. S'il n'y a pas de lecteur D, copiez l'intégralité de cet article D:\AI Remplacez-le par un répertoire avec suffisamment d'espace. Mettez d'abord à jour le pilote NVIDIA, puis exécutez-le un par un dans PowerShell ; lorsque le programme d'installation apparaît, suivez l'interface pour terminer l'installation.
New-Item -ItemType Directory -Path 'D:\AI' -Force | Out-Null
Set-Location 'D:\AI'
curl.exe -L --fail --retry 3 -o OllamaSetup.exe https://ollama.com/download/OllamaSetup.exe
.\OllamaSetup.exe
curl.exe -L --fail --retry 3 -o ComfyUI_windows_portable_nvidia.7z https://github.com/Comfy-Org/ComfyUI/releases/download/v0.43.0/ComfyUI_windows_portable_nvidia.7zDécompression complète
Décompressez-le avec 7-Zip et confirmez qu'il existe.
D:\AI\ComfyUI_windows_portable\ComfyUI\main.pyetpython_embeded\python.exe. Ne l'exécutez pas dans un package compressé.premier démarrage
Double-cliquez
run_nvidia_gpu.bat. Le terminal apparaîthttp://127.0.0.1:8188Enfin, ouvrez cette adresse locale dans le navigateur et laissez le terminal ouvert.Vérifier l'équipement d'exploitation
Le journal de démarrage doit identifier NVIDIA RTX 4090 / CUDA ; s'il n'y a que du processeur, résolvez d'abord le problème de l'architecture du pilote ou du package. Ne téléchargez pas les packages de compatibilité AMD, ARM ou anciens CUDA.
Le Portable standard contient déjà Python et un runtime correspondant ; il n'est pas nécessaire d'installer l'intégralité de la boîte à outils CUDA pour cet article. Utilisez d'abord la commande suivante pour désactiver la fonction cloud d'Ollama, puis quittez la barre d'état et rouvrez Ollama :
[Environment]::SetEnvironmentVariable('OLLAMA_NO_CLOUD','1','User')- Ollama est installé ; la page native ComfyUI peut être ouverte et le journal de démarrage identifie les GPU NVIDIA.
STEP 04 / 15
Ollama : extrayez des balises précises, générez des paramètres de personnages et des storyboards
Ne vous contentez pas de taper qwen3 ou latest: Ils ne sont pas égaux au modèle 30,5B de cet article. Ouvrez un nouveau PowerShell et exécutez :
ollama pull qwen3:30b-a3b-instruct-2507-q4_K_M
ollama run qwen3:30b-a3b-instruct-2507-q4_K_MTapez d'abord après avoir entré la conversation /set parameter num_ctx 8192, puis copiez les mots d'invite de production suivants. Cette balise Instruct est en mode non-réflexion.
Vous réalisez un court métrage d’animation 3D avec des outils locaux. Produisez une fiche de fabrication exécutable pour un film original de 30 secondes, Le Colis en retard.
Éléments fixes : Amu, cheveux châtains courts, yeux marron, imperméable orange avec capuche baissée, sac bandoulière bleu marine et bottes foncées ; colis en papier kraft et ruban rouge ; quai d’une petite ville au coucher du soleil, éclairage venant de la gauche et banc à droite.
Six plans de 5 secondes : Amu est abattu sur le quai→le vent soulève le ruban rouge du colis→il suit le ruban du regard vers le banc à droite→une grand-mère y attend→Amu lui remet le colis→elle en sort une petite écharpe pour Amu, révélant la surprise.
Fournissez d’abord les tableaux des personnages et décors, puis un tableau de six plans : numéro, durée de 5 secondes, valeur de plan, composition initiale, une seule action principale, position et léger mouvement de caméra, raccords d’accessoires et de regards, ambiance sonore, brève réplique facultative et critères de validation.
Pour chaque plan, fournissez un prompt de layout en anglais, un prompt Qwen d’édition de première image et un prompt vidéo H3. L’image de référence 1 est le layout 1344 × 768 du plan ; l’image 2 est la référence du personnage. Ajoutez la même référence de la grand-mère pour les plans à plusieurs personnages.
Utilisez I 2 VA avec une seule première image. La première ligne doit rester en anglais et correspondre exactement à : “For the target video, at 0.00 seconds into the target video, <Picture 1> (de [Plan 1]) est entièrement référencé."; après une ligne vide, utilisez uniquement les trois champs integrated_multimodal_description, overall_soundscape et non_diegetic_music. Chaque fichier indépendant commence à partir de [Plan 1], ancrant la première image puis écrit les actions, les mouvements de caméra et les résultats ; une seule action de sujet est organisée pour chaque prise de vue. Le champ musical est par défaut N/A.
Le dialogue utilise (S1) Amu et (S2) Grandma, la description du timbre est à l'extérieur de l'étiquette et les lignes sont à l'intérieur<d>[Chinese]台词。</d>, avec 12 caractères chinois au maximum par réplique. Omettez les dialogues dans la version avec sons ambiants uniquement.
Gardez les personnages, vêtements, éclairages, regards et positions de remise du colis cohérents. Produisez uniquement le contenu de fabrication.L'API locale peut être appelée directement
Gardez Ollama en cours d'exécution et les requêtes suivantes ne sont envoyées qu'à cette machine 127.0.0.1:11434。keep_alive=0 Laissez le modèle être déchargé après cette réponse pour laisser la place à la scène photo.
$storyRequest = @{
model = 'qwen3:30b-a3b-instruct-2507-q4_K_M'
messages = @(@{role='user'; content='为原创3D动画短剧写6个镜头。角色是橙色雨衣、短栗色头发、深蓝斜挎包的阿木;每镜只安排一个主要动作,列出首帧、运镜和环境声。'})
stream = $false
keep_alive = 0
options = @{num_ctx=8192; temperature=0.7}
} | ConvertTo-Json -Depth 8
$storyResult = Invoke-RestMethod -Uri 'http://127.0.0.1:11434/api/chat' -Method Post -ContentType 'application/json; charset=utf-8' -Body ([Text.Encoding]::UTF8.GetBytes($storyRequest))
$storyResult.message.contentEntrée de fin de dialogue interactif /bye. Avant de dessiner, vérifiez que le modèle de texte ne réside plus :
ollama stop qwen3:30b-a3b-instruct-2507-q4_K_M
ollama ps- Les storyboards et les paramètres des personnages sont enregistrés ; l'API native répond et Ollama publie le modèle avant que l'image ne soit générée.
STEP 05 / 15
Qwen-Image-2.1 : télécharger trois fichiers et créer la référence du personnage
Trois fichiers env. 16.10GiB. Exécutez l’intégralité du paragraphe ci-dessous dans PowerShell et enregistrez-le dans le répertoire de catégorie de modèle correct dans Portable. Une exécution répétée téléchargera à nouveau le fichier du même nom ; si le téléchargement échoue, l'erreur sera traitée en premier et l'extension du fichier ne sera pas modifiée.
$comfyRoot = 'D:\AI\ComfyUI_windows_portable\ComfyUI'
$modelRepo = 'Comfy-Org/Qwen-Image-2.1'
$modelFiles = @(
'diffusion_models/qwen_image_2.1_int8_convrot.safetensors'
'text_encoders/qwen3vl_8b_int8_convrot.safetensors'
'vae/qwen_image_2.1_vae_bf16.safetensors'
)
foreach ($modelFile in $modelFiles) {
$destination = Join-Path (Join-Path $comfyRoot 'models') $modelFile
New-Item -ItemType Directory -Path (Split-Path $destination) -Force | Out-Null
curl.exe -L --fail --retry 3 --output $destination "https://huggingface.co/$modelRepo/resolve/main/$modelFile"
if ($LASTEXITCODE -ne 0) { throw "下载失败,请先处理:$modelFile" }
}Après téléchargement, redémarrez ComfyUI et importez le workflow Windows de référence du personnage. Vérifiez que les listes du générateur, de l’encodeur et du VAE utilisent les fichiers téléchargés ; refine_prompt Fermer, l'amplificateur de mots d'invite PE n'est pas un modèle obligatoire.
| paramètres | Référence définitive du personnage |
|---|---|
| résolution/lot | 1024 × 1024 / 1 |
| steps / CFG | 40/1 (25 étapes pour un aperçu rapide de la composition) |
| sampler / scheduler | euler / simple |
| seed | Corrigez un numéro et enregistrez-le pour faciliter les comparaisons successives |
| sortie | Enregistrer l'image Enregistrer le PNG, copier-en un dans 01_character/ |
Les mots indicateurs positifs sont copiés ci-dessous. Lorsque CFG=1, les mots indicateurs négatifs ne produisent pas de guidage CFG ; la priorité est donnée à l'écriture claire de l'identité, de la composition et du matériau.
Original stylized cinematic 3D animation character, Amu, a young courier boy with short chestnut hair, warm brown eyes, rounded expressive face, orange raincoat with hood down, navy crossbody satchel, dark boots. Full-body three-quarter character portrait, both hands visible, neutral warm-grey studio background, clear silhouette, soft cinematic key light, subtle subsurface skin, tactile woven fabric, physically plausible materials, restrained filmic color. One character, clean studio composition.- Une image principale du personnage dont la forme du visage, les mains et les vêtements ont été inspectés a été générée et enregistrée.
STEP 06 / 15
Créer la composition, puis fixer chaque première image avec la référence du personnage
La première image fixe le personnage et la composition. Combinez un layout au même format avec une référence du personnage : composez d’abord le plan, puis appliquez la bonne identité.
Générer la disposition du miroir
Ouvrez le workflow texte-vers-image utilisé pour la référence du personnage et réglez Resolution Selector sur 16:9、0.98MP、multiple=32, confirmez la sortie 1344×768. Remplacez-le par le mot d'invite de mise en page ci-dessous et enregistrez-le sous
shot01-layout.png. La mise en page est responsable des scènes, des lieux, des gestes et des accessoires.Accéder au plan de référence
Importez "Première édition d'image".
image_1Téléchargez la mise en page 1344×768 nouvellement générée ;image_2Téléchargez l'acceptéamu-character.png. Cette dernière contraint spécifiquement les visages, les vêtements et les matériaux. Connectez les interfaces correspondantes des deux nœuds Load Image sur le canevas.Conserver le cadre de mise en page
garder
resolution=0、custom_size=false, 40 étapes, CFG=1, euler / simple,refine_prompt=false, utilisez le mot de conseil d'édition ci-dessous. 25 étapes pour l'aperçu de la composition. La taille de sortie suit les 1344×768 de image_1.Acceptation et archivage objectif par objectif
Enregistrer en séquence
shot01.pngàshot06.png. Comparez visage, cheveux, vêtements, bandoulière et bottes avec la référence. Zoomez sur les doigts, les contacts avec les accessoires et les ombres au sol, puis vérifiez regards, colis et lumière. Conservez les contraintes d’identité du personnage lors des modifications de composition du plan.
Stylized cinematic 3D animation opening frame, quiet small-town train platform at golden hour. A young courier boy with short chestnut hair, orange raincoat with hood down, navy crossbody satchel and dark boots stands on the left third, holding a small kraft-paper parcel with a red ribbon at chest height, looking toward the right. Medium-wide eye-level composition, warm sunlight from screen left, wooden bench in the background to the right, coherent tactile materials, clear hand and parcel silhouettes. Clean composition with open space on the right.Use <image1> as the exact composition, camera, canvas and station layout. Use <image2> as the identity and outfit reference for Amu. Replace only the boy in <image1> with this same Amu: exact face, short chestnut hair, orange raincoat with hood down, navy crossbody satchel and dark boots from <image2>. Keep the parcel with its red ribbon, hand positions, gaze direction, warm light from screen left and the bench on screen right. Match the stylized 3D materials from <image2>. Preserve the width and height of <image1>.La vidéo de vérification utilise également une copie de la première image de même largeur et hauteur. Pour une vérification à basse résolution, redimensionnez-le proportionnellement et centrez les bords sur 864 × 480 ; utilisez l'image principale 1344 × 768 directement pour le fichier de qualité. Enregistrez le PNG, le mot d'invite, la graine et le JSON après chaque prise de vue. Redémarrez ComfyUI avant de créer des vidéos pour libérer le modèle d'image.
- Les premières images des six plans ont la même image, la référence du personnage est exacte et l'identité, les mains, les accessoires et la continuité du plan ont tous été vérifiés.
STEP 07 / 15
H3 : télécharger le modèle local image-vers-vidéo et utiliser les nœuds locaux
Ensemble Windows en cinq pièces 39.14GiB. La VAE vidéo et la VAE audio sont obligatoires ; LoRA en 8 étapes est préparé ensemble pour faciliter l'inspection du modèle de modèle et la comparaison ultérieure, mais cet article est d'abord Éteignez Turbo。
$comfyRoot = 'D:\AI\ComfyUI_windows_portable\ComfyUI'
$modelRepo = 'Comfy-Org/MiniMax-H3'
$modelFiles = @(
'diffusion_models/minimax_h3_fl2va_pruned_int8_convrot.safetensors'
'text_encoders/qwen3vl_32b_minimax_h3_nvfp4_awq.safetensors'
'vae/minimax_h3_video_vae_int8_convrot.safetensors'
'vae/minimax_h3_audio_vae_fp32.safetensors'
'loras/minimax_h3_fl2v_turbo_8step_v1.0_comfyui_bf16.safetensors'
)
foreach ($modelFile in $modelFiles) {
$destination = Join-Path (Join-Path $comfyRoot 'models') $modelFile
New-Item -ItemType Directory -Path (Split-Path $destination) -Force | Out-Null
curl.exe -L --fail --retry 3 --output $destination "https://huggingface.co/$modelRepo/resolve/main/$modelFile"
if ($LASTEXITCODE -ne 0) { throw "下载失败,请先处理:$modelFile" }
}Redémarrez ComfyUI et importez le workflow de test vidéo Windows. Téléversez votre propre première image dans Load Image. Conservez la connexion du sous-graphe image-vers-vidéo à Save Video. Si une clé API cloud est demandée, le nœud sélectionné est incorrect.
- Les cinq modèles se trouvent dans le bon répertoire, le workflow peut les reconnaître et l'entrée est leur première image.
STEP 08 / 15
Effectuez d'abord une vérification, puis effectuez une mise à niveau vers le fichier de qualité natif 768p
Organisez une action principale en un seul coup et contrôlez-la d'abord pendant environ 5 secondes. Couche externe Resolution Selector La ligne de connexion couvrira la largeur et la hauteur de la sous-image ; la modification uniquement du numéro de sous-image ne prendra pas effet.
| paramètres | Fichier de vérification | Dossier de qualité formel |
|---|---|---|
| aspect extérieur | 16:9 (Widescreen) | 16:9 (Widescreen) |
| megapixels / multiple | 0.4 / 32 | 0.98 / 32 |
| Largeur et hauteur réelles | 864 × 480 | 1344 × 768 |
| duration / batch | 5 / 1 | 5 / 1 |
| Turbo / steps | false / 20 | false / 20 |
| Bootstrap et codage | Conserver BasicGuider par défaut, 24 ips | Conserver BasicGuider par défaut, 24 ips |
Conservez les réglages externes à 0.98MP / multiple=32 pour une sortie en 1344×768. Le réglage 1.0MP sélectionne un canevas aligné plus grand. Avec Turbo=false, le modèle de workflow exécute la branche Base en 20 étapes ; les valeurs fixes de la branche Turbo inutilisée n’interviennent pas dans cet échantillonnage.
For the target video, at 0.00 seconds into the target video, <Picture 1> (from [Shot 1]) is fully referenced.
integrated_multimodal_description: [Shot 1] Stylized cinematic 3D animation, the opening medium-wide composition matches <Picture 1>. Amu keeps the same face, short chestnut hair, orange raincoat, navy satchel and dark boots. He holds the red-ribbon parcel steadily at chest height and looks toward the empty platform on screen right; his shoulders slowly settle in disappointment. The camera pushes in with small amplitude at slow speed. Warm sunlight stays on screen left and the wooden bench remains on screen right. The shot follows one continuous restrained movement.
overall_soundscape: A distant train fades into a soft station hum. A light breeze brushes the coat fabric.
non_diegetic_music: N/ALes mots d'invite sont organisés selon "première image → action → son"
La première ligne ci-dessus est ancrée à la première image à 0 seconde.integrated_multimodal_description Écrire les mouvements des personnages, les positions de la caméra et les dialogues ;overall_soundscape Écrire des sons environnementaux et des sons d’action ;non_diegetic_music Lors de l'écriture de la bande originale, ce film sera rempli en premier. N/A. Chaque fois qu'un plan est généré, le numéro du plan commence à [Shot 1] Commencez.
Pour faire le dialogue dans le troisième plan, passez d'abord à la première image du plan, puis utilisez l'exemple ci-dessous. description vocale et (S1) Mettez-le à l'extérieur de l'étiquette et mettez-y les lignes chinoises <d>[Chinese]…</d>. Un court dialogue en un seul plan, et une expression finale.
For the target video, at 0.00 seconds into the target video, <Picture 1> (from [Shot 1]) is fully referenced.
integrated_multimodal_description: [Shot 1] Stylized cinematic 3D animation, the opening medium-wide composition matches <Picture 1>. Amu keeps the same face, short chestnut hair, orange raincoat, navy satchel and dark boots. He holds the red-ribbon parcel steadily at chest height and lifts his eyes toward the bench on screen right. Amu, a young boy with a clear warm mid-high voice and unhurried Mandarin delivery (S1), says: <d>[Chinese] 还在等我?</d> His expression shifts from disappointment to curiosity. The camera pushes in with small amplitude at slow speed. Warm sunlight stays on screen left and the wooden bench remains on screen right. The shot follows one continuous restrained movement.
overall_soundscape: A distant train fades into a soft station hum. A light breeze brushes the coat fabric.
non_diegetic_music: N/ALorsque le timbre doit être unifié d'un plan à l'autre, utilisez l'intégralité de la piste de doublage local de l'étape 15 ; le dialogue H3 dans le plan peut être utilisé pour la synchronisation labiale et les démonstrations de rythme. L'ID du personnage est responsable de la référence du locuteur dans les mots d'invite, et la piste de doublage continu est responsable du timbre final.
Vérifiez-le d'abord
Téléchargez la première image qui correspond à l'image, remplissez le mot d'invite ci-dessus, cliquez sur Exécuter et observez la progression du terminal. La première exécution termine le chargement de l'encodeur, du générateur et du VAE en séquence. Le terminal doit afficher en permanence la progression de l'étape et observer l'état d'exécution en combinaison avec la mémoire vidéo et la mémoire système.
Vérifiez la sortie
Enregistrer la vidéo sur
ComfyUI/output/video/. Vérifiez s'il y a des cadres noirs, une dérive des caractères, une déformation de la main, des sauts d'arrière-plan dans toute la section et si le son ambiant est normal.Améliorer à nouveau la qualité
Une fois le test validé, importez le workflow de qualité, sélectionnez à nouveau la première image et vérifiez les modèles dans les listes déroulantes. En cas d’OOM, revenez à 0.4MP et batch=1, puis arrêtez les autres tâches GPU. Ne commencez pas par une vidéo de 15 secondes.
- Le fichier de vérification complète la sortie audio et vidéo, et le fichier de qualité passe les vérifications des caractères, des mains, des mouvements et des antécédents image par image.
STEP 09 / 15
Mac : préparation à Apple Silicon, aux environnements Python autonomes et aux pages natives
Utilisation des itinéraires Mac Apple Silicon + macOS 15 ou version ultérieure, uniformément installé à ~/AI. Une production complète en 768p est prévue avec des puces de classe Max et 128 Go de mémoire unifiée. Le texte, les images et les vidéos sont exécutés séquentiellement et le modèle est publié à la fin de chaque étape ; le fichier de vérification vérifie d'abord le moteur et le chemin.
Exécutez d'abord l'installation de l'outil de développement dans le terminal, complétez la fenêtre contextuelle du système, puis continuez :
xcode-select --installIgnorez la première étape si Homebrew est installé. Confirmez l'installation initiale lorsque vous y êtes invité et complétez les paramètres PATH donnés par le programme d'installation ; Apple Silicon peut généralement charger l'environnement de terminal actuel en utilisant la deuxième ligne ci-dessous :
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
eval "$(/opt/homebrew/bin/brew shellenv)"
brew install python@3.12 ffmpeg ollama
mkdir -p ~/AI
cd ~/AI
git clone --branch v0.43.0 --depth 1 https://github.com/Comfy-Org/ComfyUI.git
cd ComfyUI
python3.12 -m venv .venv
source .venv/bin/activate
python -m pip install --upgrade pip
python -m pip install torch torchvision torchaudio
python -m pip install -r requirements.txt
python -c "import torch; print('MPS:', torch.backends.mps.is_available()); print(torch.ones(1, device='mps'))"MPS doit être vrai et le tenseur doit afficher device='mps:0'. En cas d'échec, traitez d'abord le système, l'architecture Python et les dépendances, et n'utilisez pas la commande d'installation CUDA. Puis commencez :
cd ~/AI/ComfyUI
source .venv/bin/activate
python main.py --cpu-vaeLe navigateur s'ouvre http://127.0.0.1:8188. Les images Mac de cet article utilisent le chemin compatible CPU VAE et le décodage sera plus lent ; le générateur peut toujours utiliser MPS. Le terminal reste ouvert.
- La vérification MPS de Mac réussit, la page native ComfyUI s'ouvre, ffmpeg / ffprobe disponible.
STEP 10 / 15
Mac Ollama : services locaux, mêmes balises et API précises
Si une application ou un service Ollama est déjà en cours d'exécution, configurez-le d'abord launchctl setenv OLLAMA_NO_CLOUD 1, puis quittez complètement et rouvrez l'application ; confirmez à l’aide des onglets locaux. Ne démarrez pas une deuxième instance de service à plusieurs reprises. Exécutez à partir d'un terminal la première fois que vous utilisez la CLI :
OLLAMA_NO_CLOUD=1 ollama serveGardez le terminal de service ouvert et ouvrez un nouveau terminal pour extraire et exécuter le modèle. Saisir une entrée de conversation /set parameter num_ctx 8192, puis copiez l'invite complète du storyboard à l'étape 4.
ollama pull qwen3:30b-a3b-instruct-2507-q4_K_M
ollama run qwen3:30b-a3b-instruct-2507-q4_K_MRequêtes API natives Mac
curl --fail http://127.0.0.1:11434/api/chat -H 'Content-Type: application/json' -d '{"model":"qwen3:30b-a3b-instruct-2507-q4_K_M","messages":[{"role":"user","content":"为原创3D动画短剧写6镜分镜。主角阿木穿橙色雨衣、背深蓝斜挎包,每镜仅一个主要动作,保持同一角色。"}],"stream":false,"keep_alive":0,"options":{"num_ctx":8192,"temperature":0.7}}'Renvoie JSON message.content contient le résultat généré. Enregistrez-le dans le dossier du projet et vérifiez que le modèle a été déchargé de la mémoire avant de générer des images ou de la vidéo :
ollama stop qwen3:30b-a3b-instruct-2507-q4_K_M
ollama ps- Les services de texte et les API sur Mac utilisent des adresses locales, des storyboards ont été enregistrés et des modèles ont été publiés.
STEP 11 / 15
Les images Mac utilisent BF16 et ne réutilisent pas le package de quantification Windows CUDA.
Le générateur d’images fait environ 14,23 Go, l’encodeur environ 17,53 Go et le VAE environ 0,68 Go. La taille totale est d'environ 32.44GB Télécharger ; mémoire supplémentaire requise pour fonctionner. Utilisez un environnement d'outils de téléchargement distinct et ne mélangez pas les outils de téléchargement dans ComfyUI.
python3.12 -m venv ~/AI/hf-tools
~/AI/hf-tools/bin/python -m pip install --upgrade huggingface_hub
~/AI/hf-tools/bin/hf download Comfy-Org/Qwen-Image-2.1 diffusion_models/qwen_image_2.1_bf16.safetensors text_encoders/qwen3vl_8b_bf16.safetensors vae/qwen_image_2.1_vae_bf16.safetensors --local-dir ~/AI/ComfyUI/modelsRedémarrez ComfyUI et importez les workflows Mac de référence du personnage et d’édition de première image. Sélectionnez les fichiers BF16 et le VAE dédié ; désactivez refine_prompt. N’utilisez pas les paquets Windows INT8 ConvRot ou H3 NVFP4 dans le parcours MPS.
Utilisez les mêmes prompts de référence du personnage qu’aux étapes 5 et 6, avec 40 étapes, CFG=1 et un seed fixe pour le personnage et les premières images. Réservez 25 étapes à l’aperçu rapide de composition. Après validation des images, arrêtez Ollama et utilisez Ctrl+C Fermez ComfyUI, configurez le moteur H3, puis redémarrez-le pour éviter les conflits entre le modèle d'image et le processus vidéo pour la mémoire unifiée.
- Mac a généré le personnage et la première image ; le modèle d'image a été publié avant de démarrer la vidéo.
STEP 12 / 15
Vidéo Mac : Compilez le moteur Metal natif, téléchargez uniquement FL2VA
Pour Mac Moteur C/Métal natif h3.c, puis recevez le même ComfyUI à l’étape suivante. Il s’agit de la voie avancée de la communauté. FL2VA poids d'origine env. 144.05GB / 134.16GiB, contrairement au package de quantification Windows.
cd ~/AI
git clone https://github.com/antirez/h3.c.git
cd h3.c
git checkout 8974cc055ea9c02fcd14cc27dfda3e1027c05153
make -j8
./h3 --help
ffmpeg -version
ffprobe -versionConservez le répertoire h3.c complet, qui doit être dans le même répertoire lors de l'exécution h3_shaders.metal. Continuez à télécharger hf-tools à partir de l’étape précédente :
~/AI/hf-tools/bin/hf download MiniMaxAI/MiniMax-H3 --revision 42ed227ee7df40d41602854ae760620d6eb651fe --include 'FL2VA/*' 'model_index.json' --local-dir ~/AI/h3.c/MiniMax-H3
cd ~/AI/h3.c
./h3 --info -d ./MiniMax-H3La structure correcte devrait MiniMax-H3/FL2VA/transformer、text_encoder、tokenizer、processor、video_vae、audio_vae。--info Le simple fait de vérifier le répertoire du modèle et l'appareil ne signifie pas que la vidéo a été générée.
- h3 est compilé, ffmpeg est disponible, les poids FL2VA sont complets et --info est reconnu.
STEP 13 / 15
Connecter H3 local à ComfyUI : l’image-vers-vidéo en trois nœuds
Installez la version fixe du pont Wild H3C, qui démarre le moteur h3 localement et n'appelle pas l'API cloud MiniMax.
cd ~/AI/ComfyUI/custom_nodes
git clone https://github.com/skaiy/wild-h3c-comfyui.git
cd wild-h3c-comfyui
git checkout e08057decfe3083a9270b05cac255c0101a7208e
cat > config.json <<'JSON'
{
"h3_binary": "~/AI/h3.c/h3",
"model_dir": "~/AI/h3.c/MiniMax-H3"
}
JSON
cd ~/AI/ComfyUI
source .venv/bin/activate
python main.py --cpu-vae --offlinemodel_dir Pointe vers le répertoire externe contenant FL2VA. Après avoir modifié config.json, redémarrez ComfyUI. Importez le "Fichier de vérification Mac·Vidéo" de ce site, la connexion est :
first_frame→Save Video
| paramètres | Vérification de l'appareil | Dossier de qualité formel |
|---|---|---|
| width × height | 512 × 512 | 1344 × 768 |
| seconds | 1.0 | 5.0 |
| steps / preset | 20 / precise | 50 / precise |
| seed | 42 / fixed | 42 / fixed |
| token_reduction | false | false |
| ssd_streaming | La valeur par défaut est false ; une capacité insuffisante peut être évaluée individuellement | Faux par défaut ; évalué en fonction des conditions de la machine |
Téléchargez la première image qui correspond à la proportion et le mot d'invite vidéo reste le même qu'à l'étape 8. Après une vérification réussie, changez le niveau de qualité : 1344 × 768, 5 secondes, 50 étapes.precise=50 couches, reuse=1, en exécutant chaque passe de débruitage intégralement. Conservez token_reduction=false et désactivez d’abord ssd_streaming. Enregistrez en MP4 / H.264 avec Save Video.
Lorsque le nœud ComfyUI signale une erreur, localisez-le d'abord séparément.
Utilisez la commande suivante dans le terminal pour effectuer une vérification du moteur local. Remplacez le premier chemin d'image par votre véritable chemin absolu PNG ; la commande ne peut pas être exécutée avec un chemin d'espace réservé tel quel.
cd ~/AI/h3.c
mkdir -p outputs
cat > shot01-prompt.txt <<'PROMPT'
For the target video, at 0.00 seconds into the target video, <Picture 1> (from [Shot 1]) is fully referenced.
integrated_multimodal_description: [Shot 1] Stylized cinematic 3D animation, the opening medium-wide composition matches <Picture 1>. Amu keeps the same face, short chestnut hair, orange raincoat, navy satchel and dark boots. He holds the red-ribbon parcel steadily at chest height and looks toward the empty platform on screen right; his shoulders slowly settle in disappointment. The camera pushes in with small amplitude at slow speed. Warm sunlight stays on screen left and the wooden bench remains on screen right. The shot follows one continuous restrained movement.
overall_soundscape: A distant train fades into a soft station hum. A light breeze brushes the coat fabric.
non_diegetic_music: N/A
PROMPT
./h3 --profile -d ./MiniMax-H3 --first-frame /absolute/path/shot01.png -p "$(cat shot01-prompt.txt)" --width 1344 --height 768 --seconds 5 --steps 50 --layers 50 --reuse 1 --seed 42 -o outputs/shot01.mp4Si le moteur du terminal peut générer et établir un pont mais échoue, vérifiez config.json, le premier chemin de trame, ffmpeg PATH et la version du nœud. Lorsque le pont ne trouve pas la commande, lancez ComfyUI à partir d'un terminal avec l'environnement Homebrew chargé.
- Le moteur local et le flux de travail ComfyUI ont chacun une sortie vidéo lisible, et l'image et le son sont vérifiés.
STEP 14 / 15
Les trois éléments doivent être déconnectés et générés une fois respectivement pour compléter l'acceptation locale.
Téléchargez d'abord tous les modèles, modèles et dépendances, puis effectuez les vérifications suivantes.L'API native peut répondre, et cela peut être fait localement sans prouver séparément les images et les vidéos.Aucune balise de modèle cloud ni nœud d'API premium n'est utilisé.
texte
Après vous être déconnecté du réseau, postez une nouvelle question sur 127.0.0.1:11434 avec le libellé exact et confirmez qu'une nouvelle réponse est générée. Conservez les paramètres OLLAMA_NO_CLOUD et n'utilisez pas la balise -cloud.
des photos
Redémarrez ComfyUI hors ligne, chargez le workflow de référence du personnage et générez une nouvelle image avec un nouveau seed. Enregistrez-la et vérifiez qu’il ne s’agit pas de l’ancien aperçu en cache.
vidéo
Arrêtez les tâches de texte et d'image, chargez le flux de travail H3 natif, utilisez la nouvelle graine pour générer un court plan, enregistrez-le et lisez-le, et confirmez qu'il existe une sortie réelle et aucune dépendance de demande à distance.
Commande de démarrage hors ligne une fois le téléchargement terminé
Windows s'exécute dans le répertoire racine Portable :
Set-Location 'D:\AI\ComfyUI_windows_portable'
.\python_embeded\python.exe -s ComfyUI\main.py --windows-standalone-build --offlineMac exécuté dans le terminal :
cd ~/AI/ComfyUI
source .venv/bin/activate
python main.py --cpu-vae --offline| phénomène | Contrôle prioritaire |
|---|---|
| Le modèle n'est pas dans la liste déroulante | S'il est placé dans la bonne catégorie de modèles ; si l'extension et le téléchargement complet sont corrects ; redémarrez ComfyUI. |
| Nœud manquant/Nœud inconnu | Confirmez ComfyUI v0.43.0 ; Windows utilise un flux de travail principal local, la vidéo Mac nécessite Wild H3C, redémarrez pour voir le journal d'importation. |
| 4090 CUDA OOM | Arrêtez Ollama et les autres tâches GPU, puis redémarrez ComfyUI en chargeant uniquement la vidéo. Revenez à un plan court en 0.4MP avec batch=1 et vérifiez les 64GB de mémoire système ainsi que l’espace du fichier d’échange. |
| Les anciens paramètres ne semblent pas avoir changé | La ligne de base de cet article est par défaut la gestion dynamique de la mémoire vidéo, et --lowvram n'est pas utilisé comme correctif général ; confirmer l'entrée de résolution externe et la branche d'exécution actuelle. |
| Pression de la mémoire Mac ou échange important | Libérez d’abord le modèle d’image et effectuez un zoom arrière ; Le streaming SSD modifie une partie de la rétention de poids et de la vitesse de chargement, et réorganise la capacité en fonction des pics de processus. |
| Mac ne trouve pas h3 ou ffmpeg | Vérifiez les résultats de la compilation, le répertoire externe config.json et Homebrew PATH ; utilisez d’abord la commande de diagnostic du terminal pour le localiser. |
| Visage, mains ou vêtements instables | Corrigez d'abord la relation entre la première image et la référence, simplifiez l'action en un seul coup, puis modifiez la graine pour comparaison ; ne vous contentez pas d'empiler des marches supplémentaires. |
- Le texte, les images et les vidéos ont été générés séparément après la déconnexion, et les nouveaux résultats et les journaux correspondants ont été enregistrés.
STEP 15 / 15
Six plans de 30 secondes : composition automatique, sous-titres, mixage et diffusion
Six plans qualifiés ont été sélectionnés selon la liste de production, puis unifiés en un film de 30 secondes avec 120 images par plan et 720 images pour l'ensemble du film. Spécifications de livraison finales : 1344 × 768, 24 ips, H.264, AAC stéréo 48 kHz.
Chaîne de montage locale automatisée : du métrage à la livraison
Utilisez des storyboards pour organiser le récit et utilisez l'automatisation pour effectuer des tâches répétitives : assemblage séquentiel de six plans, vérification de la durée du matériel, unification de la taille d'image et de la fréquence d'images, doublage et mixage, suppression automatique des sons de fond lors de la parole, fondu du début et de la fin de la musique, conversion des sous-titres de la voix chinoise, calibrage de l'intensité sonore du film entier et vérification des spécifications d'exportation. Tous les traitements audio et vidéo ainsi que la reconnaissance vocale fonctionnent de manière native.
Vérifiez la forme du visage, des mains et le contact avec les accessoires image par image ; les vêtements, les sangles de sac et les positions lumineuses des miroirs adjacents sont reliés à la ligne de mire. Une fois le fichier de vérification réussi, les images officielles sont régénérées à l’aide du fichier de qualité natif 768p.
Chaque plan complète un point d'information, et les actions avant et après ont une cause et un effet. Le court dialogue est clair et comporte des débuts et des fins complets ; la voix humaine est plus haute que le son ambiant, le volume à la coupure est doux et l'expression est laissée à la fin.
1. Préparation de FFmpeg avec six objectifs
Mac a été installé à l'étape 9. Windows rouvre le terminal après l'installation de PowerShell :
winget install --id Gyan.FFmpeg --exact --source wingetCopiez la sortie du fichier de qualité dans le même dossier et nommez-le shot01.mp4 à shot06.mp4. Chaque segment doit durer au moins 5 secondes, avec des images continues et des pistes audio complètes ; sélectionnez MP4 / H.264 dans Enregistrer la vidéo de ComfyUI et enregistrez. Téléchargez le script suivant dans ce dossier.
2. Voix unifiée : enregistrez un doublage localement
Le même acteur a enregistré toute la réplique dans une pièce calme. Utilisez Sound Recorder pour Windows et QuickTime Player → Fichier → Nouvel enregistrement audio pour Mac. Après l'enregistrement, alignez les six plans dans le temps dans le logiciel de montage local et exportez exactement 30 secondes de son stéréo. narration.wav, en conservant le silence lorsqu'il n'y a pas de lignes. Cette version du plan H3 est générée sur la base des mots d'invite du son ambiant, et le dialogue final est porté par l'ensemble du doublage ; le miroir de dialogue d'ouverture doit aligner la forme de la bouche étape par étape, et le miroir de narration maintient les lèvres fermées.
Lorsque vous devez convertir des enregistrements en WAV 48 kHz :
ffmpeg -i voice-recording.m4a -ar 48000 -ac 2 narration.wavSous-titres chinois automatiques : Whisper large-v3-turbo · 809M
Modèle de reconnaissance vocale multilingue utilisant les paramètres 809M, 30 secondes après l'alignement narration.wav Convertissez en SRT avec chronologie. Le modèle fait environ 1,62 Go et fonctionne hors ligne après le premier téléchargement. Windows et Mac utilisent un environnement Python 3.12 autonome, CPU INT8 ; distinct de l'environnement GPU de ComfyUI.
Windows : installez d'abord Python 3.12, puis rouvrez PowerShell, puis créez un environnement dédié et téléchargez le modèle de version corrigé :
winget install --id Python.Python.3.12 --exact --source winget
py -3.12 -m venv D:\AI\subtitle-tools
& 'D:\AI\subtitle-tools\Scripts\python.exe' -m pip install --upgrade pip
& 'D:\AI\subtitle-tools\Scripts\python.exe' -m pip install 'faster-whisper==1.2.1' 'ctranslate2==4.8.4'
& 'D:\AI\subtitle-tools\Scripts\python.exe' -c "from huggingface_hub import snapshot_download; snapshot_download(repo_id='dropbox-dash/faster-whisper-large-v3-turbo', revision='0a363e9161cbc7ed1431c9597a8ceaf0c4f78fcf', local_dir=r'D:\AI\models\whisper-turbo')"Mac : Utilisation de Python 3.12 installé précédemment :
python3.12 -m venv ~/AI/subtitle-tools
~/AI/subtitle-tools/bin/python -m pip install --upgrade pip
~/AI/subtitle-tools/bin/python -m pip install 'faster-whisper==1.2.1' 'ctranslate2==4.8.4'
~/AI/subtitle-tools/bin/python -c "from huggingface_hub import snapshot_download; from pathlib import Path; snapshot_download(repo_id='dropbox-dash/faster-whisper-large-v3-turbo', revision='0a363e9161cbc7ed1431c9597a8ceaf0c4f78fcf', local_dir=str(Path.home()/'AI/models/whisper-turbo'))"Placez le script de sous-titres dans le répertoire shot et exécutez-le à partir de ce répertoire. Fenêtres :
& 'D:\AI\subtitle-tools\Scripts\python.exe' .\h3-subtitles-v2.py .\narration.wav .\captions.srt --model 'D:\AI\models\whisper-turbo'Mac:
~/AI/subtitle-tools/bin/python ./h3-subtitles-v2.py ./narration.wav ./captions.srt --model ~/AI/models/whisper-turboLe script supprime les horodatages, les pauses et la ponctuation au niveau des mots, et génère UTF-8. captions.srt avec captions.asr.json. Il est temps de relire les noms, les fragments de phrases et les premier/dernier mots. Lorsque vous utilisez le dialogue natif H3, exportez-le d'abord à l'aide du script de production rough.mp4, identifiez le fichier, puis ajoutez les sous-titres obtenus à la version finale. La durée des sous-titres est basée sur la chronologie finale de 30 secondes. Lorsque Windows rencontre une erreur de chargement de la DLL CTranslate2, rouvrez le terminal après avoir installé le runtime Microsoft Visual C++ 2015-2022 x64.
3. Composition automatique du film, mixage, sous-titres et export
Préparez un morceau de votre propre musique ou de la musique locale sous licence music.wav, d'une durée d'au moins 30 secondes. Combinez musique, doublage aligné et relecture captions.srt et six MP4 dans le catalogue de séquences. Ouvrez PowerShell sous Windows et utilisez Python intégré à Portable :
D:\AI\ComfyUI_windows_portable\python_embeded\python.exe .\h3-finish-v2.py . --narration .\narration.wav --music .\music.wav --srt .\captions.srt --output final.mp4Mac fonctionnant dans le même répertoire lens :
python3.12 ./h3-finish-v2.py . --narration ./narration.wav --music ./music.wav --srt ./captions.srt --output final.mp4Conserver au besoin --narration、--music、--srt; Lorsqu'un élément est omis, il est supprimé avec le chemin suivant. Le script vérifie d'abord l'entrée, puis met à l'échelle/remplit image par image, convertit en 24 ips, prend les 120 premières images et unifie la piste audio à 48 kHz. Lors du doublage, le son ambiant et la musique sont automatiquement supprimés, et le début et la fin de la musique sont atténués de 0,5 seconde. Le film entier est traité deux fois pour le volume, avec un objectif d'environ -16 LUFS et un objectif de crête maximum de -2 dBTP. Sortie MP4 avec piste de sous-titres chinois commutable et génération final.report.json, enregistrez le nombre réel d'images, la durée, le nombre de pistes audio, les sous-titres et le volume mesuré. Le matériel d'origine est conservé et de nouveaux noms sont utilisés s'il existe des fichiers de sortie existants.
4. Chronologie locale et affinement des sous-titres : Shotcut
Windows et Mac utilisent la même interface d'édition native. Installation Windows :
winget install --id Meltytech.Shotcut --exact --source wingetInstallation sur Mac :
brew install --cask shotcutprojet de construction
Ouvrez Shotcut et enregistrez le nouveau projet dans
04_edit;Convertir le maîtrefinal.mp4Faites glisser vers la chronologie. Le mode vidéo est défini sur 1344 × 768 personnalisé, 24 ips, conformément à la version principale.Alignement et inspection
Contrôlez chaque plan avec la tête de lecture et déplacez les clips de voix pour aligner le début et la fin des répliques. Exportez la piste complète en WAV sous le nom narration.wav, puis transmettez-la au script de finalisation. Affinez les sous-titres sur le master : deux lignes au maximum, sans masquer les visages ni les accessoires importants.
Ajouter des sous-titres
ouvert Afficher / Afficher → Sous-titres / Sous-titres, créez une nouvelle piste de sous-titres, ajoutez des lignes et définissez l'heure de début et de fin ; s'il existe un SRT, importez-le via le panneau de sous-titres. Relisez les noms, les fautes de frappe, la fragmentation des phrases et les modèles de bouche, et exportez d'abord un fichier SRT distinct.
Graver et exporter
dans la chronologie Sortie / sortie ajouter Subtitle: Burn In Filtrez, sélectionnez la piste de sous-titres et la police. Aperçu pour confirmer que les sous-titres sont affichés avant d'exporter vers H.264 MP4, en conservant une piste audio de 1344 × 768, 24 ips et 48 kHz. Enregistrez votre projet Shotcut pour pouvoir continuer à le peaufiner.
Jouez à la version finale en plein écran : examinez les visages et les mains, chaque ligne de dialogue, les première et dernière images noires, les transitions et les suites de voix off. Archivez ensemble les séquences brutes, les fichiers PNG, les invites, les flux de travail, les enregistrements, les SRT et les sessions de montage.
- Le master de 30 secondes a été exporté, la piste audio à 720 images/24 ips/48 kHz a passé l'inspection et l'acceptation de l'écran, des dialogues, des sous-titres et de la continuité de l'objectif a été terminée.
Version de base : 2026-10-28 · ComfyUI v0.43.0 · Windows CUDA/Mac Metal. Trois mystères locaux, complètent un court métrage d'animation de 30 secondes basé sur une fiche de production de six plans.
Questions fréquentes
Plusieurs questions avant de commencer et après le tournage
Comment réaliser un court métrage d’animation en 3D avec une ambiance cinématographique ?
Procédez dans cet ordre : références des personnages, layouts, premières images, génération des plans, sélection des prises et voix homogènes. Fixez d’abord visage et matières, puis lumière, regards et accessoires. Le montage organise ensuite l’information et l’émotion. Suivez le plan de production à six plans de l’étape 2.
Comment les trois travaillent-ils ensemble au niveau local ?
Qwen3 fournit une API de texte locale à 127.0.0.1:11434 ; Qwen-Image-2.1 génère des caractères et des premières images dans ComfyUI ; H3 complète l'audio et la vidéo dans le même ComfyUI. Windows utilise le nœud principal CUDA et Mac utilise le pont moteur natif Metal. Après avoir téléchargé le modèle, suivez l'étape 14 pour l'acceptation de la déconnexion.
Comment allouer la mémoire vidéo du 4090 ?
Le texte, les images et les vidéos s'exécutent par étapes. Une fois le texte terminé, ollama stop libère le modèle ; une fois la première image terminée, redémarrez ComfyUI, puis chargez uniquement le flux de travail vidéo. Equipé de 64 Go de mémoire système et de NVMe, la gestion de la mémoire par défaut est utilisée pour compléter le chargement segmenté des encodeurs et des générateurs.
Quels paramètres sont utilisés pour les fichiers de qualité Mac ?
Prévoyez une puce Apple Silicon de classe Max et 128GB de mémoire unifiée. Le profil de qualité H3 utilise 1344×768, seconds=5, 50 étapes, precise et token_reduction=false. Le réglage precise correspond à 50 couches avec reuse=1. Commencez par le profil de test 512×512 pour vérifier le moteur, les chemins et les sorties audio et vidéo.
Que sont 33B, 20B et 32B de H3 ?
33B est le générateur dense original ; ~ 13B de la partie AdaLN peuvent être précalculés et découpés, et ~ 20B de la partie d'inférence du générateur. 32B est un encodeur indépendant. La capacité de téléchargement et d’exécution nécessite de prendre en compte le générateur, l’encodeur, le VAE et la mémoire de travail.
Pourquoi 5 secondes de séquence sont-elles réduites à 120 images ?
La grille temporelle du modèle est de 17k+5 images. Ici, seconds=5 produit 124 images, soit environ 5,17 secondes. Le montage conserve 120 images par plan. Les six plans totalisent ainsi 720 images, soit 30 secondes à 24fps.
Comment gardez-vous la cohérence des personnages et des voix d’un plan à l’autre ?
Éditez toutes les premières images à partir de la même référence, avec vêtements, matières et lumière fixes, puis vérifiez chaque plan. Une seule piste vocale locale du même interprète assure une voix cohérente, alignée à l’image. Le seed fixe sert à comparer les prises ; les références et les contrôles plan par plan assurent l’identité.