Skip to content
Console

jitsi

Publish mixed tracks into a Jitsi meeting.

Product links: jitsi.org · JaaS

{
"name": "jitsi_out",
"type": "jitsi",
"inputs": ["mix_video", "mix_audio"],
"config": {
"domain": "8x8.vc",
"roomName": "MyRoomABC123",
"appId": "<jaas-app-id>",
"token": "<jwt>",
"displayName": "avflow-composite",
"encoding": { "videoCodec": "vp8", "audioCodec": "opus" }
}
}
FieldTypeRequiredDescription
domainstringYesJitsi deployment host (e.g. 8x8.vc, meet.jit.si).
roomNamestringYesConference room name.
tokenstringNoJWT for secured rooms (JaaS).
appIdstringNoJaaS application ID.
displayNamestringNoLocal participant display name in the conference.
connectionOptionsobjectNoOverride XMPP hosts and BOSH/WebSocket URLs. Same shape as the jitsi source.
conferenceOptionsobjectNoSession flags (p2p, channelLastN, hiddenDomain). Codec and bitrate belong in encoding.
encodingobjectNoPublish codec and bitrates. See shared encoding. Omitted codecs default to vp8 + opus.

conferenceOptions is the Jitsi session. encoding is AVFlow’s publish codec / bitrate, same as other WebRTC sinks. Codec and bitrate belong in encoding; they are written into the lib-jitsi-meet fields below so the SDK’s quality controller uses them (a later setParameters would be overwritten).

KeyTypeWhat it does
p2p.enabledbooleanDirect peer connection when the room has exactly two participants. Set false to stay on the Jitsi Videobridge.
channelLastNnumberHow many remote videos to receive (-1 = all).
hiddenDomainstringTreat occupants on this XMPP domain as hidden.

encoding.videoCodec is written as videoQuality.preferredCodec. encoding.videoBitrateBps is the camera high rung in videoQuality.<codec>.maxBitratesVideo (the table lib-jitsi-meet’s quality controller actually uses, not a top-level maxBitratesVideo). Other rungs (low / standard / fullHd / ultraHd / ssHigh) keep the SDK ladder shape, scaled relative to that codec’s default high. encoding.audioBitrateBps overwrites audioQuality.opusMaxAverageBitrate (SDP maxaveragebitrate). Do not also set those conferenceOptions keys; if both are present, encoding wins. audioCodec must be opus (or omitted). keyframeIntervalSec is ignored on WebRTC sinks.

{
"conferenceOptions": {
"p2p": { "enabled": false }
},
"encoding": { "videoCodec": "vp8", "audioCodec": "opus" }
}

RTC output tier. Sink pricing.