Skip to content

v0.3.0

Release Date: 2026-07-11

Overview

This release introduces the bitHuman avatar provider and a provider-agnostic factory pattern for avatar sessions, making it easy to switch between avatar providers or add new ones.

Highlights

  • bitHuman Avatar Provider - Real-time animated avatar support via bitHuman API
  • Provider Factory Pattern - Provider-agnostic session creation with auto-registration
  • Avatar Providers Guide - Comprehensive comparison of Tavus, HeyGen, D-ID, bitHuman, and Simli

New Features

bitHuman Integration

bitHuman creates digital avatars with lip-sync at 25 FPS, supports animated characters, and runs on CPU with <100ms latency.

import (
    "github.com/plexusone/omni-livekit/avatar"
    _ "github.com/plexusone/omni-livekit/avatar/bithuman" // Auto-register
)

session, err := avatar.CreateSession(avatar.Config{
    Provider: avatar.ProviderBitHuman,
    BitHuman: avatar.BitHumanConfig{
        APIKey:  os.Getenv("BITHUMAN_API_KEY"),
        AgentID: "your-agent-id",
    },
})

Provider Factory

The new factory pattern allows provider-agnostic session creation:

// Providers auto-register via init()
import (
    _ "github.com/plexusone/omni-livekit/avatar/tavus"
    _ "github.com/plexusone/omni-livekit/avatar/bithuman"
)

// Create session by provider name
session, err := avatar.CreateSession(cfg)

Agent Room Access

The Agent.Room() method now exposes the underlying LiveKit room for avatar session integration:

agent := livekitagent.NewAgent(...)
room := agent.Room() // For avatar session setup

Documentation

  • Avatar Providers Guide - Comparison of all supported providers with quality rankings, pricing, and use case recommendations
  • Updated avatar API reference with factory pattern documentation
  • Updated Tavus guide with registration details

Dependencies

  • Added github.com/plexusone/bithuman-go v0.1.0