PipecatClientProvider
The root component for providing Pipecat client context to your application. It also includes built-in conversation state management, so any descendant component can use theusePipecatConversation hook to access messages without adding a separate provider.
PipecatClient
required
A singleton instance of
PipecatClientPipecatClientAudio
Creates a new<audio> element that mounts the bot’s audio track.
PipecatClientVideo
Creates a new<video> element that renders either the bot or local participant’s video track.
('local' | 'bot')
required
Defines which participant’s video track is rendered
('contain' | 'cover')
Defines whether the video should be fully contained or cover the box. Default:
‘contain’
boolean
Forces the video to be mirrored, if set
function
Triggered whenever the video’s rendered width or height changes
PipecatClientCamToggle
A headless component to read and set the local participant’s camera state.function
Triggered whenever the local participant’s camera state changes
boolean
If true, the component will not allow toggling the camera state. Default:
false
function
A render prop that provides state and handlers to the children
PipecatClientMicToggle
A headless component to read and set the local participant’s microphone state.function
Triggered whenever the local participant’s microphone state changes
boolean
If true, the component will not allow toggling the microphone state. Default:
false
function
A render prop that provides state and handlers to the children
VoiceVisualizer
Renders a visual representation of audio input levels on a<canvas> element.
string
required
The participant type to visualize audio for
string
The background color of the canvas. Default: ‘transparent’
string
The color of the audio level bars. Default: ‘black’
number
The number of bars to display. Default: 5
number
The gap between bars in pixels. Default: 12
number
The width of each bar in pixels. Default: 30
number
The maximum height at full volume of each bar in pixels. Default: 120