Description
Le nœud Décoder et enregistrer la vidéo décode les images vidéo et l'audio facultatif à partir de représentations latentes, les combine et enregistre la vidéo résultante directement dans un fichier. Il est conçu pour l'efficacité mémoire : les images décodées sont écrites sur le disque à la volée sans stocker toutes les images intermédiaires en RAM. Cela le rend adapté aux vidéos longues ou haute résolution qui dépasseraient autrement la mémoire disponible.
Le nœud attend une représentation latente des images vidéo (généralement produite par un modèle de diffusion vidéo) et une représentation latente facultative pour l'audio. Deux modèles VAE distincts doivent être fournis : un pour décoder le latent vidéo (video_vae) et un pour décoder le latent audio (audio_vae – requis seulement si un audio_latent est fourni). Le nœud prend également en charge le décodage en mosaïque (spatial et temporel) pour réduire davantage l'utilisation de la mémoire, configurable via les paramètres de mosaïque.
Utilisez ce nœud comme étape finale dans un pipeline de génération vidéo pour exporter le résultat vers un format de conteneur vidéo courant.
Entrées
| Entrée | Type | Requis | Défaut | Notes |
|---|---|---|---|---|
video_latent | LATENT | Oui | – | La représentation latente des images vidéo. Généralement obtenue à partir d'un modèle de diffusion vidéo compatible. |
audio_latent | LATENT | Non | – | La représentation latente des images audio. Si fournie, un audio_vae doit également être connecté. Laissez déconnecté pour une sortie vidéo silencieuse. |
fps | FLOAT | Oui | 25.0 | Fréquence d'images de la vidéo de sortie. Plage : 0 – 999 (pas de 0.01). |
filename_prefix | STRING | Oui | video/ComfyUI | Préfixe pour le fichier vidéo enregistré. Peut inclure des jetons de formatage tels que %date:yyyy-MM-dd% ou des références de valeurs de nœud comme %Empty Latent Image.width%. Le nœud ajoute automatiquement un suffixe unique pour éviter les écrasements. |
format | COMBO | Oui | auto | Format du conteneur de sortie. Les options dépendent des encodeurs système disponibles (par ex., mp4, avi, mkv, webm). auto sélectionne le format le plus largement pris en charge (généralement MP4). |
codec | COMBO | Oui | auto | Codec vidéo à utiliser. Les options dépendent des encodeurs installés sur le système (par ex., libx264, libx265, libvpx, libaom-av1). auto choisit un codec couramment disponible (généralement H.264). |
video_vae | VAE | Oui | – | Le modèle VAE utilisé pour décoder le video_latent en images pixels. Doit être compatible avec la représentation latente. |
audio_vae | VAE | Non | – | Le modèle VAE utilisé pour décoder le audio_latent en échantillons audio. Requis lorsque audio_latent est connecté. |
tiling | DYNAMICCOMBO | Oui | – | Mode de mosaïque pour le décodage vidéo. Les options dynamiques peuvent inclure disable (décodage image complète), spatial (mosaïque uniquement spatiale), temporal (mosaïque uniquement temporelle) ou both. Les choix exacts dépendent de l'implémentation du nœud et du VAE connecté. |
tile_size | INT | Oui | 512 | Largeur/hauteur de chaque tuile spatiale. Des valeurs plus petites réduisent l'utilisation maximale de la mémoire mais augmentent le temps de décodage. Plage : 64 – 4096 (pas de 32). Utilisé uniquement lorsque la mosaïque spatiale est active. |
overlap | INT | Oui | 64 | Chevauchement (en pixels) entre les tuiles spatiales adjacentes. Un chevauchement plus élevé réduit les coutures visibles aux limites des tuiles, au prix de plus de mémoire et de temps de traitement. Plage : 0 – 4096 (pas de 32). |
temporal_size | INT | Oui | 4096 | Nombre d'images à décoder à la fois lorsque la mosaïque temporelle est activée. Une valeur supérieure au nombre total d'images désactive effectivement la mosaïque temporelle. Pertinent uniquement pour les VAE vidéo qui prennent en charge la mosaïque temporelle. Plage : 8 – 4096 (pas de 4). |
temporal_overlap | INT | Oui | 16 | Nombre d'images de chevauchement entre les blocs temporels consécutifs. Un chevauchement plus élevé peut lisser les coutures temporelles, mais utilise plus de mémoire et augmente le temps de décodage. Plage : 4 – 4096 (pas de 4). |
Comportement de la mosaïque
- Lorsque la mosaïque est désactivée, l'image entière est décodée en une seule fois – cela utilise le plus de mémoire.
- La mosaïque spatiale (
tiling = "spatial"ou"both") divise chaque image en tuiles plus petites de tailletile_size×tile_size, les décode indépendamment et mélange les régions qui se chevauchent. - La mosaïque temporelle (
tiling = "temporal"ou"both") divise la séquence d'images en blocs detemporal_sizeimages, chaque bloc se chevauchant detemporal_overlapimages. Applicable uniquement pour les VAE qui prennent en charge la décomposition temporelle (par ex., certains VAE vidéo). - Le nœud gère automatiquement le mélange des régions qui se chevauchent et des bords des tuiles.
Sorties
Ce nœud n'a aucune connexion de sortie. La vidéo décodée est écrite directement sur le disque en utilisant le chemin construit à partir de filename_prefix. Le nœud ne renvoie aucune donnée au flux de travail.
Notes d'utilisation
- Gestion de la mémoire : Le nœud diffuse les images décodées vers le disque au fur et à mesure de leur production. Même avec la mosaïque désactivée, il n'accumule pas toutes les images en mémoire simultanément. La mosaïque réduit encore la mémoire de pointe au prix d'un décodage plus lent.
- Audio : Pour inclure l'audio, fournissez à la fois un
audio_latentet unaudio_vae. Le VAE audio doit correspondre à l'espace latent audio (par ex., provenant d'un modèle de diffusion audio). Si aucun latent audio n'est connecté, la vidéo de sortie sera silencieuse. - Prise en charge des formats et codecs : Les formats et codecs disponibles dépendent de l'installation FFmpeg (ou autre encodeur) sur votre système. Utilisez
autopour une expérience sans tracas ; si vous avez besoin d'un codec ou d'un conteneur spécifique, assurez-vous que l'encodeur requis est installé. - Jetons de préfixe de nom de fichier : Vous pouvez utiliser la syntaxe de formatage de ComfyUI pour inclure la date, l'heure ou les valeurs de nœud. Par exemple :
video/ComfyUI_%empty_latent_image.width%x%empty_latent_image.height%_%date:yyyy-MM-dd%
produira des noms de fichier commevideo/ComfyUI_512x512_2025-01-15_0001.mp4. - Réglage de la taille des tuiles : Pour la plupart des cas d'utilisation, une
tile_sizede 512 et unoverlapde 64 offrent un bon compromis entre mémoire et vitesse. Augmenteztile_sizesi la mémoire le permet ; diminuez-la si vous manquez de VRAM. - Mosaïque temporelle : Cela n'est efficace qu'avec les VAE qui prennent en charge nativement la mosaïque temporelle. Si votre VAE ne le fait pas, la définition des paramètres temporels n'aura aucun effet.
- Incréments de pas : Tous les paramètres de tuile entiers appliquent la taille de pas définie dans le nœud (32 pour le spatial, 4 pour le temporel). Les valeurs non alignées sur le pas sont automatiquement arrondies.
Commentaires
Connectez-vous avec GitHub pour rejoindre la discussion.