Server & Software Requirements for xCams
General information
xCams is designed with 4 server components separately
API (API)
Web user (NextJS)
Admin panel (NextJS)
Media server (ant media)
xCams can be deployed to any Linux servers, cloud service such as AWS, Digital ocean, Linode, etc…
Minimum Server Requirements
1 single server which we will install everything include Media server
8GB of RAM
2 vCPU core
80 HDD
Ubuntu 18.04 OS
Or 2 separate servers for Web (API, web user, admin panel) and Media server
Web
4GB of RAM
2 vCPU core
80 HDD
Media server
4GB of RAM
2 vCPU core
80 HDD
Ubuntu 18.04 OS
Or 3-4 separate server for API, web user + admin, media server
Software requirements
xCams architecture needs these softwares
NodeJSÂ LTS >= v20.11.1
To install please download NodeJSÂ here
MongoDBÂ >=
v4.2
To install please download mongoDB
Redis server
>= v7.x
To install please download and setup redis
Nginx
v1.3
with http-auth-request module has been enabledPM2Â is a daemon process manager that will help you manage and keep your application online 24/7
Yarn or npm to manage nodeJS package
Ensure all softwares above are running before setup source code
Notes for Media server
xCams provides Admin panel to configure ant media settings, it means you can change to another config without customization
In default, xCams uses Ant media community version, you can upgrade to Enterprise version without changing code
Ant media supports cluster, scaling. If you need low latency for live streaming with webrtc - webrtc viewer or support a lot of traffics for viewers we should purchase for Ant Enterprise license.
Notes for File storage
xCams does not support for cloud storage aka S3 service (such as AWS S3 or Digital ocean spaces), you should use S3 service if you have much files or for scale feature
Or we can use separate for files only
Notes for Pricing
xCams setup includes price for: API, web user, Ant media community version or Enterprise with single cluster
xCams setup does not include price for
File server for S3 server
Media server scaling setup
For Media server scaling setup we need to know
Which server / services you will setup:
AWS Load balancer - for this option we need to know about AWS region which we will setup (closest to client’s country is the best)
Or use nginx - for this option we need info (IP, root access) for media db server, publisher server, viewer servers