Live NSFW webcam companions

Bring your companion to life

Not a chatbot with a picture on it. A live webcam call: you talk, she hears you, answers in a voice you cloned, and her face moves as she speaks — thirty frames a second, uncensored, on hardware you control.

18+ only · Self-hosted models · Nothing leaves your infrastructure

Rissa, a generated AI companion
Live session
RissaGenerated character · cloned voice
I had the worst day. Talk to me?
Then come here. I'm not going anywhere tonight.
  1. ListeningWhisper
  2. ThinkingUncensored LLM
  3. SpeakingCloned voice
  4. AnimatingLivePortrait

Everything she needs, on one platform

  • Live webcam chat
  • Voice cloning
  • Text to speech
  • Speech to text
  • Character creation
  • Image generation
  • Lip-sync video
  • Text to video
  • Persistent memory
  • Appearance lock
  • Embeddable sessions
  • Uncensored models
The main event

You talk. She answers — on camera.

Everything else on this page exists to serve this one moment: a person and their companion, live on webcam. This is a single turn of that call.

A depiction of one turn of the production pipeline — the same stages, in the same order, the live session runs.

No filter, no apology

Uncensored models on hardware you control. No provider policy deciding what your users are allowed to say or hear.

She stays herself

Face, voice and personality are bound to one character and held consistent across every session, image and frame.

Nothing leaves your infrastructure

Speech, reasoning, synthesis and image generation all run in containers you operate. No third-party AI provider ever receives your users’ audio, images or conversations.

30 fpsLive facial animationPer-frame keypoints
~10 sOf reference to clone a voiceZero-shot
16Capabilities on one accountEvery engine self-hosted
0Third-party AI callsNothing leaves your stack
The webcam companion

Everyone else ships a chatbot. This one looks back at you.

A real-time, one-to-one webcam call with an uncensored companion. You speak into your mic; she listens, thinks, answers in her own voice, and her face moves on camera while she does it — every frame generated from the audio she is saying at that moment.

  1. She hears you

    Your microphone is transcribed by a Whisper model running on your own hardware. The audio of an intimate conversation never reaches a third-party speech service, because there is no third party in the path.

    Whisper

  2. She thinks — without a filter

    The transcript goes to a self-hosted language model with no content policy layered over it. She does not break character to decline, because there is nothing in the stack that can make her.

    Self-hosted LLM

  3. She answers in her voice

    The reply is synthesised through the voice bound to that character — cloned from a single reference clip, or a preset. Word timings come back with the audio, so the mouth and the sound run off one clock.

    GPT-SoVITS · Piper

  4. Her face moves as she speaks

    The audio drives facial keypoints frame by frame and the result is pushed to the browser over WebRTC. Expression, blink and head pose are computed per frame — not a looping video, not a canned animation.

    LivePortrait · 30 fps

In a session

What she can actually do

  • 30 frames a second

    The animation loop targets 30 fps for a live session. Every frame is generated from the audio she is speaking at that instant.

    Per-frame keypoints
  • You can interrupt her

    A turn is a state machine, not a queue. Start talking over her and the current reply is cut off — the way a conversation actually works.

    Interruptible turns
  • She remembers last time

    Conversation memory persists per character. What she was told last week is in the prompt this week, so the relationship has continuity.

    Persistent memory
  • Her face never drifts

    Appearance is locked to the character record. She is the same person in session forty as in session one, and in every image you generate of her.

    Appearance lock
  • Speak or type

    The same pipeline takes a spoken sentence or a typed one. Text skips transcription and goes straight to the model.

    Voice or text input
  • Put her in your own product

    Sessions publish into a WebRTC room. Create one server-side, hand the browser a short-lived token, and she appears on your site instead of ours.

    LiveKit · embeddable
Why this does not exist elsewhere

It is not that they cannot. It is that they will not.

Every major hosted AI provider forbids adult content in its own terms of service. That is the moat — and it is the reason this runs on models nobody can revoke.

 Building on a hosted providerBuilding here
Adult contentForbidden by the terms of every major hosted AI providerThe category the platform is built for
Refusals mid-conversationA filtered model breaks character to declineUncensored weights — there is no refusal layer
Your users’ audio and imagesUploaded to a vendor who may retain or review itNever leaves the containers you operate
Policy riskOne terms update can end your productNo provider policy sits above yours
A face that responds liveText, or a pre-rendered clipKeypoints generated per frame at 30 fps
Cost as you growMetered per token, scaling with engagementA hardware question, not a per-call bill
Hear it — live, not a recording

Her voice, in about a second

This is the same synthesis engine a session uses. Type anything; the waveform is decoded from the file you are about to hear.

Your audio appears here
231
Everything behind her

The whole companion, not one model

01Voice

A voice of her own, from ten seconds of reference

Zero-shot cloning builds a persistent voice from a short sample. Preset neural voices cover everything else, streaming with word-level timestamps so lips and subtitles run off the same clock.

  • GPT-SoVITS cloning
  • Piper presets
  • Word timestamps
02Character

Build her face, then keep it consistent

Generate a character from a prompt or a reference, then hold that identity across every later image and frame. Appearance, personality and voice travel together as one character.

  • Image generation
  • Identity consistency
  • LoRA training
03Mind

An unfiltered model that remembers

Self-hosted language models with no content filter and no provider terms to comply with. Memory persists between sessions, so she remembers what she was told last time.

  • Self-hosted LLM
  • No content filter
  • Persistent memory
04Motion

Beyond the face

Audio-driven lip-sync video for longer scenes, pose-driven full-body animation, and text or image to video for anything pre-rendered.

  • MuseTalk lip-sync
  • Text-to-video
  • Full-body — partial
The whole platform

Sixteen capabilities, one account

Each runs on a model we host. Where something is not finished yet, it says so.

  • Live 1-on-1 video chatWhisper · Ollama · LivePortrait
  • Embeddable sessionsLiveKit WebRTC
  • Voice cloningGPT-SoVITS
  • Text to speechPiper
  • Speech to textWhisper
  • Word-level timestampsPiperApproximate
  • Character creationComfyUI · Krea2
  • Image generationComfyUI · Krea2
  • Appearance lockSeed-consistent identity
  • Text & image to videoWAN 2.2
  • Lip-sync videoMuseTalk
  • Full-body animationMusePosePartial
  • API keys & session tokensScoped, quota-limited
  • Usage analyticsPer key, per endpoint
  • Organisations & teamsRoles and shared quota
  • Service health13 services, live probes
For platforms

Put a companion in your product

Embed a live session with a few lines. REST and WebRTC, server-side keys with scopes and quotas, and short-lived session tokens for the browser so a key never reaches a client.

Read the API docs
Start a live session
const session = await arapulse.sessions.create({
  characterId: "rissa",
  voice: "cloned:rissa-v2",
  realtime: true          // WebRTC video + audio
});

// Embedded sessions default to 12 fps; pass target_fps to raise it.
// The portal's own live session runs at 30.
session.on("frame", render);
session.say("Hey, you're back.");

She’s waiting

Free tier, no card. 18+ only.