The pipeline
A real-time avatar isn’t a single model — it’s an orchestrated chain of specialised systems working in parallel. Here’s the architecture we settled on.
Choosing a lip sync architecture
Lip sync is where realism lives or dies. We evaluated three broad families of architectures before committing to Gaussian Splatting. Its explicit scene representation makes it fast to render and straightforward to deform — exactly what we needed for a real-time, audio-driven animation system.
Huma-1: the foundation
Our first architecture, Huma-1, established the core two-step Gaussian pipeline.

Huma-2: rethinking every bottleneck
Huma-2 is the result of systematically attacking every source of latency in Huma-1 — models, data loading, pre-processing — without sacrificing accuracy. The changes touch every layer of the system.Smaller models, bigger impact
We redesigned our internal models to be significantly smaller than their Huma-1 counterparts. Fewer parameters means faster inference, and the accuracy trade-off turned out to be negligible — we stayed within acceptable quality bounds while gaining substantial speed.Minimised data loading and pre-processing
The original pipeline had pre-processing stages that loaded more data than necessary and ran heavier operations than required. In Huma-2 we audited every step, replacing or eliminating pre-processing models that were overdoing it for our specific use case. The result is a leaner boot sequence with no loss in output quality.Smoother audio encoding
A notable improvement in Huma-2 is robustness to variation in training data. The audio encoder now operates more smoothly across different recording conditions, making the model less sensitive to edge cases in the input data. This wasn’t just a quality win — it simplified our data collection requirements significantly.Key takeaways
After two generations of architecture, a few principles have proven durable.- Gaussian Splatting offers a uniquely practical trade-off for avatar rendering — fast enough for real-time use, flexible enough for audio-driven deformation, and trainable from short video clips.
- Splitting runtime into a preloading phase and an inference phase is a powerful design pattern. Front-loading work that doesn’t change between sessions is a reliable way to minimise perceived latency.
- Smaller models don’t automatically mean worse models. Careful architecture design and targeted reduction of pre-processing overhead can produce a faster, more robust system with comparable output quality.
Next steps
Huma-1 deep dive
The first-generation renderer that Huma-2 was built on.
Custom avatars
Train your own Huma-2 avatar from 2–3 minutes of source video.