ComfyUI > Nodes > TrentNodes > Mouth Shape Compositor

ComfyUI Node: Mouth Shape Compositor

Class Name

MouthShapeCompositor

Category
Trent/LipSync
Author
TrentHunter82 (Account age: 0days)
Extension
TrentNodes
Latest Updated
2026-03-20
Github Stars
0.03K

How to Install TrentNodes

Install this extension via the ComfyUI Manager by searching for TrentNodes
  • 1. Click the Manager button in the main menu
  • 2. Select Custom Nodes Manager button
  • 3. Enter TrentNodes in the search bar
After installation, click the Restart button to restart ComfyUI. Then, manually refresh your browser to clear the cache and access the updated list of nodes.

Visit ComfyUI Online for ready-to-use ComfyUI environment

  • Free trial available
  • 16GB VRAM to 80GB VRAM GPU machines
  • 400+ preloaded models/nodes
  • Freedom to upload custom models/nodes
  • 200+ ready-to-run workflows
  • 100% private workspace with up to 200GB storage
  • Dedicated Support

Run ComfyUI Online

Mouth Shape Compositor Description

Integrates mouth shapes into video frames for lip-syncing, enhancing animated character realism.

Mouth Shape Compositor:

The MouthShapeCompositor is a specialized node designed to seamlessly integrate mouth shapes into video frames, primarily for lip-syncing applications. This node is particularly beneficial for AI artists and developers working on animated characters or avatars, as it allows for the dynamic placement and blending of mouth shapes across a sequence of frames. By utilizing a series of predefined mouth shapes, the compositor can map these onto video frames based on a specified sequence, ensuring that the mouth movements align with the intended audio or visual cues. The node supports various blending modes and offers options for scaling and feathering, providing flexibility in how the mouth shapes are rendered onto the frames. This capability is crucial for creating realistic and expressive animations, enhancing the overall visual storytelling experience.

Mouth Shape Compositor Input Parameters:

frames

This parameter represents the batch of video frames onto which the mouth shapes will be composited. It is crucial as it serves as the canvas for the mouth shapes, and its dimensions determine the placement and scaling of the mouth shapes. The frames are expected to be in the format (B, H, W, C), where B is the batch size, H is the height, W is the width, and C is the number of color channels.

mouth_shapes

This parameter consists of nine mouth shape images, indexed from 0 to 8, corresponding to different phonetic shapes (A-H, X). These images are used to represent various mouth positions and are essential for achieving accurate lip-syncing. The mouth shapes are applied to the frames based on the sequence provided, allowing for dynamic and expressive animations.

mouth_sequence

The mouth sequence is a list of indices that dictate which mouth shape should be applied to each frame. This sequence is critical for synchronizing the mouth movements with the audio or visual cues, ensuring that the animation appears natural and coherent. The sequence should match the number of frames to ensure proper alignment.

position_x

This integer parameter specifies the X-coordinate for the placement of the mouth shapes on the frames. It allows for precise positioning of the mouth shapes horizontally, with a default value of 0 and a range from -4096 to 4096. Adjusting this value can help align the mouth shapes with the character's face in the frames.

position_y

Similar to position_x, this integer parameter determines the Y-coordinate for the mouth shapes' placement. It controls the vertical positioning, with a default value of 0 and a range from -4096 to 4096. Proper adjustment ensures that the mouth shapes are correctly aligned vertically on the character's face.

mask

An optional parameter, the mask is a tensor that can be used to define specific regions for blending the mouth shapes onto the frames. It provides additional control over the compositing process, allowing for more refined and targeted blending effects.

blend_mode

This parameter defines the method used to blend the mouth shapes onto the frames. Options include "alpha", "replace", "multiply", and "screen", with "alpha" as the default. Each mode offers a different blending effect, influencing the final appearance of the mouth shapes on the frames.

scale

A float parameter that determines the scaling factor for the mouth shapes, with a default value of 1.0 and a range from 0.1 to 10.0. This allows for resizing the mouth shapes to better fit the character's face, providing flexibility in adapting to different frame sizes and character proportions.

feather

This integer parameter controls the amount of edge feathering applied to the mouth shapes, with a default value of 0 and a range from 0 to 100. Feathering softens the edges of the mouth shapes, helping them blend more naturally into the frames and reducing harsh transitions.

Mouth Shape Compositor Output Parameters:

result

The output parameter result is a tensor containing the composited video frames with the mouth shapes applied. This output is crucial as it represents the final animated sequence, with the mouth shapes integrated according to the specified sequence and parameters. The result can be used for further processing or directly rendered as part of an animation or video project.

Mouth Shape Compositor Usage Tips:

  • Ensure that the mouth_sequence matches the number of frames to maintain synchronization between the mouth shapes and the animation.
  • Experiment with different blend_mode settings to achieve the desired visual effect, especially when integrating mouth shapes into complex backgrounds.
  • Use the scale parameter to adjust the size of the mouth shapes, ensuring they fit well with the character's face and maintain proportionality.
  • Apply feather to soften the edges of the mouth shapes, which can help in achieving a more natural blend with the underlying frames.

Mouth Shape Compositor Common Errors and Solutions:

IndexError: list index out of range

  • Explanation: This error occurs when the mouth_sequence contains indices that exceed the available mouth shapes.
  • Solution: Ensure that all indices in the mouth_sequence are within the range of 0 to 8, corresponding to the available mouth shapes.

ValueError: Expected input batch size to match target batch size

  • Explanation: This error arises when the number of frames does not match the length of the mouth_sequence.
  • Solution: Verify that the mouth_sequence length matches the number of frames to ensure proper alignment and synchronization.

RuntimeError: CUDA error: device-side assert triggered

  • Explanation: This error can occur if there are invalid operations on the GPU, often due to incorrect tensor dimensions or data types.
  • Solution: Check that all input tensors, such as frames and mouth_shapes, have the correct dimensions and data types before processing.

Mouth Shape Compositor Related Nodes

Go back to the extension to check out more related nodes.
TrentNodes
RunComfy
Copyright 2025 RunComfy. All Rights Reserved.

RunComfy is the premier ComfyUI platform, offering ComfyUI online environment and services, along with ComfyUI workflows featuring stunning visuals. RunComfy also provides AI Models, enabling artists to harness the latest AI tools to create incredible art.

Mouth Shape Compositor