Tutors that connect.
Build a language partner, a patient teacher, or a guide for that first day.
LEARNING & TRAINING
Turn any photo into a interactive, talking avatar.
Ready to use connectors
01 / THE DEVELOPER EXPERIENCE
Keep your models, prompts, and tools.
Send audio. Get
synchronized video.
That’s the whole idea.
pip install openspline
from openspline import Openspline
client = Openspline()
async with client.avatar("portrait.jpg") as avatar:
print(avatar.viewer_url)
await avatar.stream(
agent.audio_stream(), sample_rate=24000
)
02 / PLUG INTO YOUR STACK
Keep your voice, tools, and prompts.
Add an avatar where
your audio already flows.
pip install openspline 'livekit-agents[openai]==1.8.3'
from openspline import Openspline
from openspline.integrations.livekit import AvatarSession
avatar = AvatarSession(
"portrait.jpg", client=Openspline(quality="low")
)
await avatar.start(agent_session, room=ctx.room)
await agent_session.start(room=ctx.room, agent=agent)
# Your LiveKit room carries the synchronized audio and video.
03 / Use Cases
For the moments when a voice
could use a face.
Build a language partner, a patient teacher, or a guide for that first day.
LEARNING & TRAININGGive your game NPCs, digital companions, and interactive stories a voice and a face.
GAMES & COMPANIONSPut a face to your support agent, product guide, or welcome-screen assistant.
SUPPORT & ONBOARDINGYOUR NEXT COMMIT STARTS HERE