← Latest papers
💻 computer science

InteractGesture: Progressive Chunk Guidance for Continuous Streaming Co-Speech Gesture Control

The paper introduces InteractGesture, a model-agnostic, inference-time method that employs Progressive Chunk Guidance to enable fine-grained, spatially controllable co-speech gesture generation in continuous streaming scenarios by propagating control gradients across chunk boundaries to resolve boundary inconsistencies.

Original authors: Ekkasit Pinyoanuntapong, Ajinkya Deogade, Paul Streli, Wenjing Zhang, Joanna Materzynska, Pu Wang, Vittorio Ferrari, Jie Shen

Published 2026-08-27
📖 4 min read☕ Coffee break read

Original authors: Ekkasit Pinyoanuntapong, Ajinkya Deogade, Paul Streli, Wenjing Zhang, Joanna Materzynska, Pu Wang, Vittorio Ferrari, Jie Shen

Original paper licensed under CC BY 4.0 (http://creativecommons.org/licenses/by/4.0/). This is an AI-generated explanation of the paper below. It is not written or endorsed by the authors. For technical accuracy, refer to the original paper. Read full disclaimer

Imagine a digital human speaking to you, its lips moving in perfect time with its words, its hands gesturing naturally to emphasize a point. For years, scientists have taught computers to create these movements by listening to audio, resulting in characters that can talk and move with surprising realism. However, a significant limitation has persisted: while the computer knows how to make a character wave or shrug, it cannot be told exactly where that hand should land in space. If an animator wanted the character's right wrist to touch a specific object on a table, or for an elbow to trace a precise path to avoid an obstacle, the existing technology could not oblige. The movements were generated as a whole, leaving the specific location of individual body parts to chance rather than command. This gap between natural speech-driven motion and precise spatial control has been a major hurdle for creating truly interactive virtual agents.

A new approach, introduced by researchers at Meta and the University of North Carolina at Charlotte, bridges this gap with a method called InteractGesture. This system allows a computer to generate a character's gestures based on speech while simultaneously obeying strict instructions about where specific joints, like wrists or elbows, must go. The researchers treated the computer's movement generator as a black box that could be gently steered. Instead of retraining the entire system or changing its internal brain, they adjusted the computer's predictions in real-time. As the system planned a movement, the researchers decoded those plans into a 3D skeleton, checked if the hands were in the right place, and if they were not, they pushed the plan back toward the desired location before finalizing it. This process happens so quickly that the computer learns to balance the natural rhythm of speech with the rigid demands of the user's spatial instructions.

The challenge becomes significantly harder when the speech is continuous, like a long conversation, rather than a short clip. Computers typically process long audio in small, overlapping segments, or chunks. In the past, once a segment was generated, it was locked in place. If a user wanted the character's hand to reach a target in the next segment, the computer could not go back and adjust the previous segment's movement to make the transition smooth. This often resulted in jerky, unnatural jumps where the hand would suddenly snap into position. The researchers identified that this rigid locking of past movements was the primary cause of these errors. To solve it, they developed a strategy called Progressive Chunk Guidance. Rather than freezing the past, this method keeps a small window of recent movements editable. As new audio arrives, the system continuously updates the context of the previous segment, allowing future instructions to gently nudge the past movements into a smoother alignment. It is a bit like editing a film while still shooting it, where the director can adjust the actor's previous step to ensure the next step lands perfectly, without having to wait for the entire movie to be finished.

The results of this approach were tested on a large dataset of recorded human speech and movement. The team compared their new method against older techniques, including a common approach that tries to force the joints into place after the movement is already generated, and another that tries to control each segment independently. The older methods often produced movements that looked stiff or unnatural, or they failed to reach the target positions accurately, missing the mark by nearly twenty centimeters in some cases. In contrast, the new method achieved an average error of just over six centimeters while maintaining the fluid, natural quality of the original speech-driven gestures. The system successfully guided the character's hands to specific points, traced complex paths for the arms, and even oriented the character to point in a specific direction, all while keeping the timing of the movements perfectly synced with the voice.

This work demonstrates that it is possible to have both the natural flow of speech-driven animation and the precise control of a human animator. By allowing the computer to refine its own plans as it generates them, and by keeping the recent past flexible enough to accommodate future instructions, the researchers have created a system that respects the user's spatial commands without sacrificing the lifelike quality of the motion. The findings suggest that digital humans can soon be directed with the same level of detail as a real actor, capable of interacting with virtual objects and navigating complex environments with a level of precision that was previously out of reach. The researchers have made their tools available for others to use, opening the door for more interactive and responsive virtual assistants and characters in the future.

Drowning in papers in your field?

Get daily digests of the most novel papers matching your research keywords — with technical summaries, in your language.

Try Digest →