NX Witness is a video management software (VMS) developed by NX Optix, designed to be intuitive, flexible, and scalable, offering a wide range of features for IP camera and security device management.
With a user-friendly interface and high performance, NX is ideal for a variety of installations, from small surveillance projects to large-scale corporate deployments. In this article, we provide a detailed technical analysis of the main features and capabilities of NX Witness.
System Overview
NX Witness features an exclusive Client-Server “hive” architecture, in which servers discover devices and jointly manage system users and data.
A System consists of one or more servers, their connected streaming devices (IP cameras, I/O modules, etc.), video streams (RTSP, HTTP, UDP), storage (HDDs, NAS, DAS, etc.), and client applications (Desktop, Mobile, or Web).
Multiple servers can be linked to form a single System. This is useful in situations such as:
- Multiple locations with cameras;
- A high number of cameras exceeding the processing capacity of a single computer;
- Seeking greater stability through redundant servers.
The recommended maximum number of servers per System is 100, and the recommended maximum number of resources (cameras, NVR channels, I/O modules, etc.) per System is 10,000. It is worth noting that if 100 servers are used in a System, the recommended maximum number of cameras per server drops to 100.

When there is only one server, the distinction between the server and the System is practically nonexistent, and they can be viewed as equivalent. However, as more servers are added, these differences become more significant.
All servers in a System are equal, and each stores locally the information about all cameras, users, and System configurations. However, the recorded video archive is not shared between servers — meaning video is recorded only on the server to which the camera is connected.
Thus, if a server needs to be replaced (for example, for maintenance or upgrade), the System configurations remain unchanged, but the video archive recorded on the old server is not transferred to the new server.
Users
Each System has a list of user accounts authorized to access it. To log in to the System, one must be one of these users. There is always a special Administrator account with “Owner” rights. Only the Owner of a System can grant administrator rights to other users. Both the Owner and other Administrators can add or remove users.
A Cloud user has access to all servers connected to NX Cloud. The Administrator can specify all parameters for a new user (name, password, email, etc.) and manage them subsequently.
Each user account can have different levels of access within the System. For example, a restricted access account may not view certain servers or resources, but can still connect to the System.
The term “User” can refer to both an access account and an individual person. The same person can have multiple accounts, either to access different Systems or to have differentiated privileges within the same System. User Roles allow quickly applying the same set of permissions to multiple users. The recommended maximum number of users per System is 1,000.
Server
In the context of NX Witness, the term Server can refer to both the server application (called Media Server) and the hardware on which it is installed. A maximum of 128 cameras per server is recommended.
The main server functions include:
- Receiving video streams from cameras;
- Managing camera configurations;
- Recording video to internal or external storage;
- Processing and analyzing video (e.g., motion detection);
- Managing the user database and access levels;
- Monitoring events and responding to them as configured;
- Integrating with hardware devices (NVRs, I/O modules, door locks, etc.).
Client
Client applications connect to servers to display live or recorded video, as well as to manage System, server, and camera configurations.
By connecting to a single server within the System, the client gains access to all System resources and configurations, including other servers and cameras.
A client can connect to multiple servers, but only one at a time.
There is no limit to the number of clients simultaneously connected to the same server.
NX Cloud
NX Cloud is an internet-hosted cloud service that expands the capabilities of NX Witness.
It enables remote access and simplified management, as well as other features that depend on cloud connectivity, creating a more complete experience for System administrators and operators.