Hello! 
so… I’m new to this streaming world and I found OpenVidu very helpful!
Now I have one problem that I dont know how to fix. But starting from the begining.
My app looks like that:
frontend (angular) ← webRTC → openVidu 3.4.1 (liveKit)
and this is working like a charm!
what I’m working now on is openVidu → RTMP → Mux (or any other app like that)
I cant connect to/with Egress. And to be honest I don’t know what happening around this logic.
So let mi just put some questions.
ah, I’m using single-node community version.
(1) Should I work only with one container in docker (openvidu-service) or I should install openvidu-egress?
(2) how to configure egress.
Hi, welcome to the OpenVidu Community.
Find my answers below:
1. Containers
You don’t need any additional containers beyond the default OpenVidu deployment.
Egress and Ingress capabilities are already integrated into the current architecture, so there is no separate openvidu-egress image to deploy.
2. Ingress / RTMP Configuration
RTMP ingestion is handled through LiveKit’s Ingress API.
If you’re running OpenVidu CE, you can programmatically create an Ingress (for RTMP or WHIP) using the livekit-server-sdk in Node.js, Go, or other supported languages.
Here’s an example in JavaScript:
import { IngressClient, IngressInput } from 'livekit-server-sdk';
const livekitHost = 'https://my-livekit-host';
const ingressClient = new IngressClient(livekitHost, 'api-key', 'secret-key');
const ingress = {
name: 'my-ingress',
roomName: 'my-room',
participantIdentity: 'my-participant',
participantName: 'My Participant',
// Transcode the input stream. Can only be false for WHIP.
enableTranscoding: false,
};
// Create an RTMP endpoint for your stream source
await ingressClient.createIngress(IngressInput.RTMP_INPUT, ingress);
References: