Humanlike avatar plugin for Pipecat — real-time talking-head video with expression control
Project description
pipecat-ai-humanlike
Humanlike avatar plugin for Pipecat — real-time talking-head video with expression control.
Streams TTS audio to a Humanlike GPU orchestrator and receives lip-synced video frames with facial expressions guided by a natural-language prompt.
Installation
pip install pipecat-ai-humanlike
For faster audio resampling:
pip install pipecat-ai-humanlike[fast]
Quick Start
from pipecat.services.humanlike import HumanlikeVideoService
humanlike = HumanlikeVideoService(
ws_url="ws://your-gpu-server:8000/ws/stream",
image="./face.png",
avatar_model="humanlike-homo",
prompt="warm, friendly, subtly smiling, occasional nods",
)
pipeline = Pipeline([
transport.input(),
stt,
context_aggregator.user(),
llm,
tts,
humanlike, # after TTS, before transport output
transport.output(),
context_aggregator.assistant(),
])
Parameters
| Parameter | Type | Default | Description |
|---|---|---|---|
ws_url |
str |
ws://127.0.0.1:8000/ws/stream |
WebSocket URL of the Humanlike GPU orchestrator |
image |
str | bytes |
./face.png |
Path to a face image, or raw PNG/JPEG bytes |
avatar_model |
str |
humanlike-homo |
Model identifier |
prompt |
str |
warm, friendly, subtly smiling |
Expression prompt guiding facial behaviour |
seed |
int |
42 |
Random seed for reproducible generation |
video_width |
int |
512 |
Output video width |
video_height |
int |
512 |
Output video height |
Live Expression Updates
Update the expression prompt during a live session:
await humanlike.update_prompt("excited, wide eyes, big smile")
How It Works
- On pipeline start, connects to the orchestrator via WebSocket and sends the face image + config
- Intercepts
TTSAudioRawFramefrom the TTS service, resamples to 16 kHz mono, and streams PCM chunks to the orchestrator - Receives JPEG video frames back, decodes them, and pushes
OutputImageRawFramedownstream - All frames (including audio) pass through so the user still hears the TTS output
- Shows the reference image as an idle frame until the first GPU-generated frame arrives
License
Apache-2.0
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file pipecat_ai_humanlike-0.1.4.tar.gz.
File metadata
- Download URL: pipecat_ai_humanlike-0.1.4.tar.gz
- Upload date:
- Size: 7.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.14.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
4dec21b402bb3657e83a4cf81bbef729da5fad6369eb08a57e74e010895e5993
|
|
| MD5 |
9976b7db83829dbd8381da4e8ab208f8
|
|
| BLAKE2b-256 |
ea017e7cdc2a32a991816fd3ff6584138e0267cb2e852cec9e0b14e360a23fb9
|
File details
Details for the file pipecat_ai_humanlike-0.1.4-py3-none-any.whl.
File metadata
- Download URL: pipecat_ai_humanlike-0.1.4-py3-none-any.whl
- Upload date:
- Size: 7.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.14.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
410e8e1044aaef33accc559153026c32b90fcb42a2d513070a33d68e9a670837
|
|
| MD5 |
3ce36417333c9171bdd388e2add2f4e2
|
|
| BLAKE2b-256 |
21a89fc2e864c4c0ee2256656763aba967b825fd6eb30d90e41b54f3982aa3a9
|