Overview
ProtofaceVideoService renders Pipecat TTS output through a real-time Protoface
video avatar. It consumes TTS audio and emits synchronized avatar video
(OutputImageRawFrame) and audio (SpeechOutputAudioRawFrame) downstream.
Use it with any Pipecat transport that supports audio and video output.
Source Repository
Source code, examples, and issues for the Protoface integration
PyPI Package
The
pipecat-protoface package on PyPIProtoface Documentation
Official Protoface documentation and guides
Protoface Platform
Create avatars and manage API access
Installation
This is a community-maintained package distributed separately frompipecat-ai:
Prerequisites
Protoface Account Setup
Before using the Protoface video service, you need:- Protoface API key: Get access through the Protoface Platform
- Protoface avatar ID: Create or select an avatar in the Protoface Platform and copy its ID
Required Environment Variables
PROTOFACE_API_KEY: Your Protoface API keyPROTOFACE_AVATAR_ID: Your Protoface avatar ID
Configuration
Constructor parameters forProtofaceVideoService:
str
required
Protoface API key for authentication.
str
required
Protoface avatar ID for the hosted avatar session.
str
default:"https://api.protoface.com"
Protoface API URL. Most users can omit this.
int
default:"None"
Maximum session duration in seconds.
Mapping
default:"None"
Metadata to attach when creating the Protoface session.
ProtofaceVideoSettings
default:"None"
Advanced settings for buffering and client readiness. Most users can omit
this.
For the latest examples and configuration options, see the source
repository.
Usage
Basic Setup
Realtime Speech-to-Speech
For realtime speech-to-speech services, placeProtofaceVideoService after your
realtime LLM service and before the output transport: