Every Media Node runs openvidu-media-health, a watchdog that asks the cloud to replace it with a new node (keeping the Media Node count) when its bootstrap failed or never finished, or when LiveKit fails its health check on :7880 for 5 minutes (down) or 10 minutes (errors or timeouts; not counted while the CPU is saturated). Nothing is replaced while no master answers a Redis PING, so a master outage cannot replace the whole media fleet. Drain scripts pause the watchdog, and skip waiting for sessions on a node being replaced. - AWS: the node marks itself Unhealthy in its Auto Scaling group (the lifecycle hook drains it and a new instance is launched). aws-cli is installed before the watchdog starts; set_as_unhealthy.sh is gone. - GCP: the node asks its managed instance group to recreate it. Media autohealing (TCP 7880) now waits 3600 s before judging a new node and needs 5 minutes of failures; HA gets the same autohealing plus the firewall rule for the health check ranges. - Azure: the node reimages itself (new OS disk, bootstrap runs again, same instance, scale-in protection kept) instead of deleting itself, which shrank the scale set. The .json twins are rebuilt from the .bicep. |
||
|---|---|---|
| .github | ||
| docs/images | ||
| openvidu-components-angular | ||
| openvidu-deployment | ||
| openvidu-livekit@2f779fc1fd | ||
| openvidu-test-browsers | ||
| openvidu-test-e2e | ||
| openvidu-test-integration | ||
| openvidu-testapp | ||
| .gitignore | ||
| .gitmodules | ||
| CONTRIBUTING.md | ||
| LICENSE | ||
| NOTICE | ||
| README.md | ||
README.md
openvidu
Visit openvidu.io
What is OpenVidu?
OpenVidu is a self-hosted real-time video and audio stack, built on top of LiveKit and mediasoup, and developed by a team with over a decade of experience building WebRTC systems. It ships as two products:
OpenVidu Meet
OpenVidu Meet is a ready-to-use, self-hosted video conferencing application: an open-source alternative to Zoom, Google Meet and Jitsi Meet.
Using it requires no code. You deploy it and it works — rooms, recordings, chat, screen sharing and moderation included. It is also highly customizable: brand it with your own name, logo and colours, and choose which features each participant gets.
With minimal effort it embeds into your own application, through an <iframe> or the
OpenVidu Meet web component, and is driven from your backend with a REST API and webhooks:
OpenVidu Platform
OpenVidu Platform is the programmable client and server SDKs for building custom WebRTC applications with low-level control over media, on top of LiveKit and mediasoup. It is API-compatible with LiveKit: any LiveKit client/server SDK works unchanged.
Both products
- Self-hosted only: deploy them on your own infrastructure (AWS, GCP, Azure, Oracle, DigitalOcean, on-premises). There is no hosted/SaaS tier: OpenVidu PRO is a paid, self-hosted edition, and the OpenVidu team offers support and consultancy.
- Advanced media features: recording, RTMP/streaming egress, AI agents (transcription, translation), virtual backgrounds, and more.
Getting started
- 📖 Documentation
- 🚀 Try it locally
- 💻 Tutorials
- 🎥 OpenVidu Meet — the ready-to-use video conferencing app (source)
Community Forum
Visit OpenVidu Community Forum
Contributors
This project exists thanks to all the people who contribute.
Backers
Thank you to all our backers! 🙏 [Become a backer]
Acknowledgments
OpenVidu has been supported under project "CPP2021-008720 NewGenVidu: An elastic, user-friendly and privacy-friendly videoconferencing platform", funded by MCIN/AEI/10.13039/501100011033 and by the European Union-NextGenerationEU/PRTR.
Sponsors
Support this project by becoming a sponsor. Your logo will show up here with a link to your website. [Become a sponsor]

