Network Optix

MetaVMS Version History

5.1.3.38363 Video Management System
PUBLISHED 11 Mar 2024

Release Notes:

  • The release of Nx Meta VMS corresponding to the Powered-by-Nx VMS Release.
  • For Metadata SDK usage instructions, see readme.md included within Metadata SDK zip.
  • ATTENTION: These Release Notes show changes relative to Nx Meta VMS 5.1.2.37996 R2.
  • NEW FEATURES:
    • N/A
  • IMPROVEMENTS:
    • Fixed a typo in the manifest of Stub Analytics Plugin, Events sub-plugin, which made the manifest an invalid json.
    • Added a new field `unmergedServers` in tbe response of functions `/rest/v1/system/merge` and `/rest/v2/system/merge`.
    • Added a new parameter `maxAnalyticsDetailsMs` in the function `/ec2/analyticsLookupObjectTracks`; added documentation for its result.
  • SDK CHANGES BREAKING PLUGIN COMPILATION:
    • N/A
  • SDK CHANGES BREAKING PLUGIN BINARY COMPATIBILITY:
    • N/A
  • REST API BREAKING CHANGES:
    • Removed `creationTimeMs` field from the creation/modification requests `/rest/v1/devices/{deviceId}/bookmarks`. See API Changelog for the details.
  • KNOWN ISSUES:
    • General:
      • Building sample plugins included with the Metadata SDK package with GCC 7.5 might fail on ARM devices. Newer GCC versions work fine.
    • Analytics:
      • When searching for an attribute that changes over time, the corresponding bounding box is shown only for the time periods when the attribute value corresponds to the search string. E.g., if we are searching for a “Car” type object that was moving with a certain value of the “Speed” text attribute (“60 kmph”, for example), the bounding box for the discovered “Car” object will be shown only for the moments when the value of the “Speed” text attribute was equal to “60 kmph”. No bounding box will be shown for the moments when the same “Car” object had a different “Speed” value.
      • It is impossible to modify DeviceAgent settings when the corresponding device is in Offline state (e.g. there’s currently no stream from the camera).
    • Sample plugins:
      • Enabling the "Declare additional event types" checkbox for “Stub: Events” Device Agent causes the “Plugin failed to produce updated manifest” error.

In-Client Upgrade:

Build Number: 38363
Password: lszxqn

Download Links:

5.1.2.37996 Video Management System
PUBLISHED 20 Dec 2023

Release Notes:

  • The release of Nx Meta VMS corresponding to the Powered-by-Nx VMS Release.
  • For Metadata SDK usage instructions, see readme.md included within Metadata SDK zip.
  • ATTENTION: These Release Notes show changes relative to Nx Meta VMS 5.1.2.37821 R1.
  • NEW FEATURES:
    • N/A
  • IMPROVEMENTS:
    • N/A
  • SDK CHANGES BREAKING PLUGIN COMPILATION:
    • N/A
  • SDK CHANGES BREAKING PLUGIN BINARY COMPATIBILITY:
    • N/A
  • REST API BREAKING CHANGES:
    • N/A
  • KNOWN ISSUES:
    • General:
      • Building sample plugins included with the Metadata SDK package with GCC 7.5 might fail on ARM devices. Newer GCC versions work fine.
    • Analytics:
      • When searching for an attribute that changes over time, the corresponding bounding box is shown only for the time periods when the attribute value corresponds to the search string. E.g., if we are searching for an object of the type “Car” that was moving with a certain value of the “Speed” text attribute (“60 kmph”, for example), the bounding box for the discovered “Car” object will be shown only for the moments when the value of the “Speed” text attribute was equal to “60 kmph”. No bounding box will be shown for the moments when the same “Car” object had the values of the “Speed” attribute different from "60 kmph".
      • It is impossible to modify DeviceAgent settings when the corresponding device is in Offline state (e.g. there’s currently no stream from the camera).

In-Client Upgrade:

Build Number: 37996
Password: xiq53b

Download Links:

5.1.1.37512 Video Management System
PUBLISHED 18 Sep 2023

Release Notes:

  • The release of Nx Meta VMS corresponding to the Powered-by-Nx VMS Release.
  • For Metadata SDK usage instructions, see readme.md included within Metadata SDK zip.
  • ATTENTION: These Release Notes show changes relative to Nx Meta VMS 5.1.0.37133 R6.
  • NEW FEATURES:
    • N/A
  • IMPROVEMENTS:
    • N/A
  • SDK CHANGES BREAKING PLUGIN COMPILATION:
    • N/A
  • SDK CHANGES BREAKING PLUGIN BINARY COMPATIBILITY:
    • N/A
  • REST API BREAKING CHANGES:
    • N/A
  • KNOWN ISSUES:
    • Server HTTP API documentation:
      • The improvement of API function caption consistency and the related API documentation improvements which were done right before the 5.1 Release did not find their way into this 5.1.1 Release. This will be fixed in the next release.
    • General:
      • Building sample plugins included with the Metadata SDK package with GCC 7.5 might fail on ARM devices. Newer GCC versions work fine.
    • Analytics:
      • When searching for an attribute that changes over time, the corresponding bounding box is shown only for the time periods when the attribute value corresponds to the search string. E.g., if we are searching for an object of the type “Car” that was moving with a certain value of the “Speed” text attribute (“60 kmph”, for example), the bounding box for the discovered “Car” object will be shown only for the moments when the value of the “Speed” text attribute was equal to “60 kmph”. No bounding box will be shown for the moments when the same “Car” object had the values of the “Speed” attribute different from "60 kmph".
      • It is impossible to modify DeviceAgent settings when the corresponding device is in Offline state (e.g. there’s currently no stream from the camera).

In-Client Upgrade:

Build Number: 37512
Password: hm1bi3

Download Links:

5.1.0.37133 Video Management System
PUBLISHED 28 Jun 2023

In-Client Upgrade:

Build Number: 37133
Password: da82z6

Download Links:

5.0.0.36871 Video Management System
PUBLISHED 05 May 2023

Release Notes:

  • The release of Nx Meta VMS corresponding to Powered-by-Nx Digital Watchdog Spectrum VMS Release.
  • For Metadata SDK usage instructions, see readme.md included within Metadata SDK zip.
  • These Release Notes describe changes made since Meta VMS 5.0.0.35744 R12. Note that this R13 release incorporates all the changes made in 5.0.0.36627 P1, and adds some more.
  • NEW FEATURES:
    • SDKs, nx_kit:
      • Introduced new function `parseNameValueFile()` in `nx/kit/utils.h` (the same code was used in `ini_config.cpp`).
    • Server HTTP API:
      • Added a new function `/rest/v1/devices/{id}/changeId`.
      • Added a new function `/rest/v1/system/cleanupTaxonomy`.
  • IMPROVEMENTS:
    • SDKs, nx_kit:
      • Introduced a mutex in `NX_PRINT` and `NX_OUTPUT` to avoid race conditions while building the prefix with the file name. This may slow down the performance of these macros.
        • NOTE: This change has first appeared in 5.1.0.36161 R3.
    • Metadata SDK:
      • In `manifests.md`, clarified the purpose of the `supportedTypes` manifest section.
      • Stub Analytics Plugin:
        • Fixed a memory leak in Best Shots sub-plugin of Stub Analytics Plugin. Note that this change was not present in 5.0.0 P1.
        • In `deprecated_object_detection` sub-plugin, renamed its .ini file to match the sub-plugin name from `stub_analytics_plugin_object_detection` to `stub_analytics_plugin_deprecated_object_detection.ini`.
        • Introduced the same-name .ini files for the sub-plugins that missed them: `best_shots`, `object_detection`, `object_streamer`, `taxonomy_features`; the new .ini files contain the option `enableOutput` which controls the verbosity of logging (enables `NX_OUTPUT`).
        • In `object_detection` sub-plugin, introduced the new settings "Timestamp shift" and "Send object attributes".
        • In `object_actions` sub-plugin, fixed a memory leak when generating Objects.
    • Server HTTP API:
      • In the preamble, added documentation for the `_pretty` URL parameter.
      • In the functions dealing with the Server object, added a new value `SF_OwnerApiForAdmins` of the field `flags`.
      • In the functions dealing with the Event object, added a new value `showIntercomInformer` of the field `actionType`: , and a new field `progress`.
      • In the RTSP Streaming pseudo-function `/{deviceId}`, added a new parameter `acodec`.
      • In the function `DELETE /rest/v1/login/sessions/{token}`, removed the parameter `setCookie`.
      • In the functions `/rest/v1/devices/*/bookmarks` and `/rest/v1/devices/{deviceId}/bookmarks`, removed the parameter `id`.
    • Fixed errata in Server HTTP API documentation:
      • In description of the function `/api/nvrNetworkBlock`, the parameter `portStates` is now properly described as a JSON array rather than a JSON object.
      • In the RTSP Streaming pseudo-function `/{deviceId}`, described the structure of the response.
      • In the description of HLS Streaming pseudo-function `/hls/{deviceId}.m3u`, fixed the typo in the `low` parameter name - the proper name is `lo`.
  • SDK CHANGES BREAKING PLUGIN COMPILATION:
    • N/A
  • SDK CHANGES BREAKING PLUGIN BINARY COMPATIBILITY:
    • N/A
  • REST API BREAKING CHANGES:
    • N/A
  • KNOWN ISSUES:
    • Analytics:
      • When searching for an attribute that changes over time, the corresponding bounding box is shown only for the time periods when the attribute value corresponds to the search string. E.g., if we are searching for an object of the type “Car” that was moving with a certain value of the “Speed” text attribute (“60 kmph”, for example), the bounding box for the discovered “Car” object will be shown only for the moments when the value of the “Speed” text attribute was equal to “60 kmph”. No bounding box will be shown for the moments when the same “Car” object had the values of the “Speed” attribute different from "60 kmph".
      • It is impossible to modify DeviceAgent settings when the corresponding device is in Offline state (e.g. there’s currently no stream from the camera).
    • Metadata SDK
      • Compiler error appears when building Stub Analytics Plugin sample included into Metadata SDK package with GCC 7.5 on ARM64 device.

In-Client Upgrade:

Build Number: 36871
Password: 5xso2t

Download Links:

5.0.0.36634 Video Management System
PUBLISHED 04 Apr 2023

Release Notes:

  • The release of Nx Meta VMS corresponding to Powered-by-Nx VMS Release v5.0.0.36628/36629/36630/36634.
  • For Metadata SDK usage instructions, see readme.md included within Metadata SDK zip.
  • These Release Notes describe changes made since Meta VMS 5.0.0.35744 R12.
  • NEW FEATURES:
    • SDKs, nx_kit:
      • Introduced new function `parseNameValueFile()` in `nx/kit/utils.h` (the same code was used in `ini_config.cpp`).
    • Server HTTP API:
      • Added a new function `/rest/v1/devices/{id}/changeId`.
      • Added a new function `/rest/v1/system/cleanupTaxonomy`.
  • IMPROVEMENTS:
    • SDKs, nx_kit:
      • Introduced a mutex in `NX_PRINT` and `NX_OUTPUT` to avoid race conditions while building the prefix with the file name. This may slow down the performance of these macros.
        • NOTE: This change has first appeared in 5.1.0.36161 R3.
    • Metadata SDK:
      • In `manifests.md`, clarified the purpose of the `supportedTypes` manifest section.
      • Stub Analytics Plugin:
        • In `deprecated_object_detection` sub-plugin, renamed its .ini file to match the sub-plugin name from `stub_analytics_plugin_object_detection` to `stub_analytics_plugin_deprecated_object_detection.ini`.
        • Introduced the same-name .ini files for the sub-plugins that missed them: `best_shots`, `object_detection`, `object_streamer`, `taxonomy_features`; the new .ini files contain the option `enableOutput` which controls the verbosity of logging (enables `NX_OUTPUT`).
        • In `object_detection` sub-plugin, introduced the new settings "Timestamp shift" and "Send object attributes".
        • In `object_actions` sub-plugin, fixed a memory leak when generating Objects.
    • Server HTTP API:
      • In the preamble, added documentation for the `_pretty` URL parameter.
      • In the functions dealing with the Server object, added a new value `SF_OwnerApiForAdmins` of the field `flags`.
      • In the functions dealing with the Event object, added a new value `showIntercomInformer` of the field `actionType`: , and a new field `progress`.
      • In the RTSP Streaming pseudo-function `/{deviceId}`, added a new parameter `acodec`.
      • In the function `DELETE /rest/v1/login/sessions/{token}`, removed the parameter `setCookie`.
      • In the functions `/rest/v1/devices/*/bookmarks` and `/rest/v1/devices/{deviceId}/bookmarks`, removed the parameter `id`.
    • Fixed errata in Server HTTP API documentation:
      • In description of the function `/api/nvrNetworkBlock`, the parameter `portStates` is now properly described as a JSON array rather than a JSON object.
      • In the RTSP Streaming pseudo-function `/{deviceId}`, described the structure of the response.
      • In the description of HLS Streaming pseudo-function `/hls/{deviceId}.m3u`, fixed the typo in the `low` parameter name - the proper name is `lo`.
  • SDK CHANGES BREAKING PLUGIN COMPILATION:
    • N/A
  • SDK CHANGES BREAKING PLUGIN BINARY COMPATIBILITY:
    • N/A
  • REST API BREAKING CHANGES:
    • N/A
  • KNOWN ISSUES:
    • Analytics:
      • When searching for an attribute that changes over time, the corresponding bounding box is shown only for the time periods when the attribute value corresponds to the search string. E.g., if we are searching for an object of the type “Car” that was moving with a certain value of the “Speed” text attribute (“60 kmph”, for example), the bounding box for the discovered “Car” object will be shown only for the moments when the value of the “Speed” text attribute was equal to “60 kmph”. No bounding box will be shown for the moments when the same “Car” object had the values of the “Speed” attribute different from "60 kmph".
      • It is impossible to modify DeviceAgent settings when the corresponding device is in Offline state (e.g. there’s currently no stream from the camera).
    • Metadata SDK
      • Compiler error appears when building Stub Analytics Plugin sample included into Metadata SDK package with GCC 7.5 on ARM64 device.
      • Enabling “Stub: Best Shots” Device Agent might cause memory leak.

In-Client Upgrade:

Build Number: 36634
Password: thn04r

Download Links:

5.0.0.35744 Video Management System
PUBLISHED 17 Oct 2022

Release Notes:

  • The release of Nx Meta VMS corresponding to Powered-by-Nx VMS Release v5.0.0.35745/35746/35748.
  • For Metadata SDK usage instructions, see readme.md included within Metadata SDK zip.
  • These Release Notes describe changes made since Meta VMS 5.0.0.35269 R11.
  • NEW FEATURES:
    • N/A
  • IMPROVEMENTS:
    • SDKs: Updated `dynamic_libraries.md` with a more detailed description of issues with dynamic and static linking of libstdc++, and related recommendations.
    • Video Source SDK: Fixed potential memory corruption when copying `struct CameraInfo`.
    • Fixed errata in Server HTTP API documentation: fields denoting time periods (usually called like `startTimeMs`, and having a suffix like `S, `Ms`, or `Us`) were incorrectly listed as having the type `string`, while they are actually `integer`.
    • Server HTTP API: The fields `minArchiveDays` and `maxArchiveDays` have been deprecated in favor of the new fields `minArchivePeriodS` and `maxArchivePeriodS` respectively, in the functions `ec2/saveCameraUserAttributes`, `ec2/getCameraUserAttributes`, `ec2/getCamerasEx`. See API Changelog for the details.
  • SDK CHANGES BREAKING PLUGIN COMPILATION:
    • N/A
  • SDK CHANGES BREAKING PLUGIN BINARY COMPATIBILITY:
    • N/A
  • REST API BREAKING CHANGES:
    • N/A
  • KNOWN ISSUES:
    • Analytics:
      • When searching for an attribute that changes over time, the corresponding bounding box is shown only for the time periods when the attribute value corresponds to the search string. E.g., if we are searching for an object of the type “Car” that was moving with a certain value of the “Speed” text attribute (“60 kmph”, for example), the bounding box for the discovered “Car” object will be shown only for the moments when the value of the “Speed” text attribute was equal to “60 kmph”. No bounding box will be shown for the moments when the same “Car” object had the values of the “Speed” attribute different from "60 kmph".
      • It is impossible to modify DeviceAgent settings when the corresponding device is in Offline state (e.g. there’s currently no stream from the camera).
    • Metadata SDK
      • Compiler error appears when building Stub Analytics Plugin sample included into Metadata SDK package with GCC 7.5 on ARM64 device.

In-Client Upgrade:

Build Number: 35744
Password: t7kyzl

Download Links:

5.0.0.35269 Video Management System
PUBLISHED 26 Jul 2022

Release Notes:

  • The release of Nx Meta VMS corresponding to Powered-by-Nx VMS Release v5.0.0.35270/35271/35272.
  • For Metadata SDK usage instructions, see readme.md included within Metadata SDK zip.
  • These Release Notes describe changes made since Meta VMS 5.0.0.35134 R10.
  • NEW FEATURES:
    • N/A
  • IMPROVEMENTS:
    • N/A
  • SDK CHANGES BREAKING PLUGIN COMPILATION:
    • N/A
  • SDK CHANGES BREAKING PLUGIN BINARY COMPATIBILITY:
    • N/A
  • REST API BREAKING CHANGES:
    • N/A
  • KNOWN ISSUES:
    • Analytics:
      • When searching for an attribute that changes over time, the corresponding bounding box is shown only for the time periods when the attribute value corresponds to the search string. E.g., if we are searching for an object of the type “Car” that was moving with a certain value of the “Speed” text attribute (“60 kmph”, for example), the bounding box for the discovered “Car” object will be shown only for the moments when the value of the “Speed” text attribute was equal to “60 kmph”. No bounding box will be shown for the moments when the same “Car” object had the values of the “Speed” attribute different from "60 kmph".
      • It is impossible to modify DeviceAgent settings when the corresponding device is in Offline state (e.g. there’s currently no stream from the camera).

In-Client Upgrade:

Build Number: 35269
Password: pvj899

Download Links:

5.0.0.35134 Video Management System
PUBLISHED 08 Jul 2022

Release Notes:

  • The release of Nx Meta VMS corresponding to Powered-by-Nx VMS Release v5.0.0.35136/35138/35139.
  • For Metadata SDK usage instructions, see readme.md included within Metadata SDK zip.
  • These Release Notes describe changes made since Meta VMS 5.0.0.35062 R9.
  • NEW FEATURES:
    • N/A
  • IMPROVEMENTS:
    • N/A
  • SDK CHANGES BREAKING PLUGIN COMPILATION:
    • N/A
  • SDK CHANGES BREAKING PLUGIN BINARY COMPATIBILITY:
    • N/A
  • REST API BREAKING CHANGES:
    • N/A
  • KNOWN ISSUES:
    • Analytics:
      • When searching for an attribute that changes over time, the corresponding bounding box is shown only for the time periods when the attribute value corresponds to the search string. E.g., if we are searching for an object of the type “Car” that was moving with a certain value of the “Speed” text attribute (“60 kmph”, for example), the bounding box for the discovered “Car” object will be shown only for the moments when the value of the “Speed” text attribute was equal to “60 kmph”. No bounding box will be shown for the moments when the same “Car” object had the values of the “Speed” attribute different from "60 kmph".
      • It is impossible to modify DeviceAgent settings when the corresponding device is in Offline state (e.g. there’s currently no stream from the camera).

In-Client Upgrade:

Build Number: 35134
Password: 9xxc4b

Download Links:

5.0.0.35062 Video Management System
PUBLISHED 20 Jun 2022

Release Notes:

  • The release of Nx Meta VMS corresponding to Powered-by-Nx VMS Release v5.0.0.35063/35064/35065.
  • For Metadata SDK usage instructions, see readme.md included within Metadata SDK zip.
  • These Release Notes describe changes made since Meta VMS 5.0.0.34968 R8.
  • NEW FEATURES: N/A
  • IMPROVEMENTS: N/A
  • SDK CHANGES BREAKING PLUGIN COMPILATION: N/A
  • SDK CHANGES BREAKING PLUGIN BINARY COMPATIBILITY: N/A
  • REST API BREAKING CHANGES:
    • Some of the deprecated API functions were considered insecure and were disabled, but can be enabled by changing `insecureDeprecatedApiEnabled` in the System Settings or in Advanced System Settings of the Web Admin (https://localhost:7001/#/settings/advanced) - see API Changelog for details. Here is the list:
      • - `/api/detachFromCloud`
      • - `/api/detachFromSystem`
      • - `/api/mergeSystems`
      • - `/api/restart`
      • - `/api/restoreState`
      • - `/api/saveCloudSystemCredentials`
      • - `/api/setupCloudSystem`
      • - `/api/setupLocalSystem`
      • - `/ec2/dumpDatabase`
      • - `/ec2/mergeStatus`
      • - `/ec2/restoreDatabase`
      • ATTENTION: This breaking change has been introduced in Meta 5.0.0 R4, but was not mentioned in Release Notes until this release.
    • API functions *~~/api/wearableCamera/{action}~~** were renamed into **/api/virtualCamera/{action}*. All request and response arguments remain unchanged.
      • ATTENTION: This breaking change has been introduced in Meta 4.3.0 R1 (note that 4.3 has been renamed to 5.0, so this is the first Meta release in the 5.0 line), but was not mentioned in Release Notes until this release.
  • KNOWN ISSUES:
    • Analytics:
      • When searching for an attribute that changes over time, the corresponding bounding box is shown only for the time periods when the attribute value corresponds to the search string. E.g., if we are searching for an object of the type “Car” that was moving with a certain value of the “Speed” text attribute (“60 kmph”, for example), the bounding box for the discovered “Car” object will be shown only for the moments when the value of the “Speed” text attribute was equal to “60 kmph”. No bounding box will be shown for the moments when the same “Car” object had the values of the “Speed” attribute different from "60 kmph".
      • It is impossible to modify DeviceAgent settings when the corresponding device is in Offline state (e.g. there’s currently no stream from the camera).

In-Client Upgrade:

Build Number: 35062
Password: 9xfbt6

Download Links:

4.2.0.32836 Video Management System
PUBLISHED 22 Apr 2021

Release Notes:

  • The release of Nx Meta VMS corresponding to Powered-by-Nx VMS Release v4.2.0.32840/32841.
  • For Metadata SDK usage instructions, see readme.md included within Metadata SDK zip.
  • These Release Notes describe changes made since Meta VMS 4.2.0.32657 R3.
  • KNOWN ISSUES:
    • Analytics:
      • Linux Server fails to record analytics metadata to NTFS drives.
      • When searching for an attribute that changes over time, the corresponding bounding box is shown only for the time periods when the attribute value corresponds to the search string.
      • Multi-word text search for analytics object type does not work, e.g. if you are searching for an object of type “Human face”, searching using a string “human” or “face” will produce some results, but searching using a “human face” string won’t. That does not apply to a text search for attributes, multi-word search works for them.
      • It is not possible to modify DeviceAgent settings when the corresponding device is in Offline state (e.g. there’s currently no stream from the camera).
      • Analytics storage has to be specified by the user (automatic storage selection does not work).

In-Client Upgrade:

Build Number: 32836
Password: xaf0rd

Download Links:

4.1.0.32024 Video Management System
PUBLISHED 05 Nov 2020

Release Notes:

  • CRITICAL COMPATIBILITY NOTICE:
    • All users must update to the v20.1 Mobile release in order to be able to connect to a v4.1 System via the Mobile Client. Mobile Clients v19.6 or earlier will not be able to access Systems running v4.1 or later.
  • BREAKING CHANGES:
    • MacOS 10.11, 10.12, 10.13 support was dropped: Desktop Client will not work on those OS.
  • IMPORTANT:
    • The release of Nx Meta VMS is compatible with the Release of Powered-by-Nx VMS v4.1.0.31398/31400/31401
    • Added fix for MS Visual Studio 2019: fixed missing `#include <stdint.h>` which prevented compilation
    • For Metadata SDK usage instructions, see readme.md included within Metadata SDK zip.
  • KNOWN ISSUES:
    • General issues:
      • If an older version of Nx Meta Client was installed on the computer, 'Nx MetaVMS Launcher' may fail to start the new Client version, as well as Desktop shortcut that points to this launcher. This issue is fixed as soon as 'Nx MetaVMS' binary is launched manually from the installation folder.
      • Analytics:
        • Analytics Plugins are not working with panoramic cameras.
        • Linux Server fails to record analytics metadata to NTFS drives.
        • When searching for an attribute that changes over time, the corresponding bounding box is shown only for the time periods when the attribute value corresponds to the search string.
        • No analytics objects bounding boxes are shown in Client when performing a text search for object type. That does not apply to search via type selector.
        • Multi-word text search for analytics object type does not work, e.g. if you are searching for an object of type “Human face”, searching using a string “human” or “face” will produce some results, but searching using a “human face” string won’t. That does not apply to a text search for attributes, multi-word search works for them.
        • Default settings for Analytics Plugin Engine/DeviceAgent are not automatically applied when enabling the Engine/DeviceAgent for the first time. It may lead to Plugin malfunction. In order to fix this issue, the user can manually apply the settings via the corresponding settings page/API request or restart the Server.
        • Sometimes metadata from Analytics Plugins is generated with a big delay when recording on the camera is disabled. This may lead to absence of object bounding boxes on the live video. Enabling recording fixes the issue.
        • It is not possible to modify DeviceAgent settings when the corresponding device is in Offline state (e.g. there’s currently no stream from the camera).
    • Region-Of-Interest-(ROI)-specific issues:
      • Empty ROIs are not hidden from the Plugin settings in GUI.

In-Client Upgrade:

Build Number: 32024
Password: 9vhzli

Download Links:

4.1.0.31466 Video Management System
PUBLISHED 29 Jul 2020

Release Notes:

  • CRITICAL COMPATIBILITY NOTICE:
    • All users must update to the v20.1 Mobile release in order to be able to connect to a v4.1 System via the Mobile Client. Mobile Clients v19.6 or earlier will not be able to access Systems running v4.1 or later.
  • BREAKING CHANGES:
    • MacOS 10.11, 10.12, 10.13 support was dropped: Desktop Client will not work on those OS.
  • IMPORTANT:
  • The release of Nx Meta VMS corresponding to the Release of Powered-by-Nx VMS v4.1.0.31398/31400/31401.
  • For Metadata SDK usage instructions, see readme.md included within Metadata SDK zip.
  • IMPROVEMENTS:
    • Metadata SDK:
      • Fixed Doxygen documentation for virtual methods of interfaces: where there is a public inline wrapper for a protected virtual method, the Doxygen documentation now is attached to this public inline wrapper instead of the protected virtual method, and the protected virtual method now has its own Doxygen comment which simply gives the reference to the public method.
      • Added detailed documentation for Manifests of Analytics entities: see the Markdown files or Doxygen-generated HTML documentation: section "Related Pages", articles "Analytics Plugin Manifests" generated from `src/nx/sdk/analytics/manifests.md`, and "Interactive Settings Engine" generated from `src/nx/sdk/settings_model.md` (the latter specifies Settings Models which appear in various Manifests).
  • SDK CHANGES BREAKING PLUGIN COMPILATION:
    • Analytics: Now Settings Model can depend on the values of Settings. It allows, for example, to have some Settings controls to appear or disappear based on the values in other controls. Technical details:
      • In `nx::sdk::analytics::IEngine` and `nx::sdk::analytics::IDeviceAgent`, `setSettings()` now returns `ISettingsResponse` (which contains an `IStringMap` for error messages, an optional Settings Model, and an optional set of values) instead of just `IStringMap`.
        • Now, if `setSettings()` changes any setting values while applying them, the new values must be returned from this method instead of being returned from `pluginSideSettings()`.
      • The new version of `nx::sdk::ISettingsResponse` contains an added getter `model()`. This enables `setSettings()` to return a changed Settings Model.
      • See the details in the Doxygen documentation for the above mentioned methods.
  • SDK CHANGES BREAKING PLUGIN BINARY COMPATIBILITY:
    • Analytics: Interface ids for several interfaces in `nx::sdk::analytics::` have been fixed; plugins need to be re-compiled, no changes in the code are needed. Here are the old and the new values:
      • `nx::sdk::analytics::ICompressedVideoPacket0` -> `nx::sdk::analytics::ICompressedVideoPacket1`
      • `nx::sdk::analytics::IUncompressedVideoFrame0` -> `nx::sdk::analytics::IUncompressedVideoFrame1`
      • `nx::sdk::ISettingsResponse0` -> `nx::sdk::ISettingsResponse1`
      • NOTE: The incorrect values first appeared when new versions of these interfaces were introduced during the development of VMS 4.1. Thus, the plugins compiled for VMS versions up to and including 4.1 Release Candidate (MetaVMS 4.1.0 R8) work well with their VMS versions, but need to be recompiled using this SDK (4.1.0 R9) to work with VMS 4.1.0 Release.
  • REST API BREAKING CHANGES:
    • Changed the structure of the request and reply in function `GET /ec2/analyticsEngineSettings`. See the details in WebAdmin, `API Breaking Changes` (`api_changelog.html`).
  • KNOWN ISSUES:
    • General issues:
      • If an older version of Nx Meta Client was installed on the computer, 'Nx MetaVMS Launcher' may fail to start the new Client version, as well as Desktop shortcut that points to this launcher. This issue is fixed as soon as 'Nx MetaVMS' binary is launched manually from the installation folder.
      • Analytics:
        • Analytics Plugins are not working with panoramic cameras.
        • Linux Server fails to record analytics metadata to NTFS drives.
        • When searching for an attribute that changes over time, the corresponding bounding box is shown only for the time periods when the attribute value corresponds to the search string.
        • No analytics objects bounding boxes are shown in Client when performing a text search for object type. That does not apply to search via type selector.
        • Multi-word text search for analytics object type does not work, e.g. if you are searching for an object of type “Human face”, searching using a string “human” or “face” will produce some results, but searching using a “human face” string won’t. That does not apply to a text search for attributes, multi-word search works for them.
        • Default settings for Analytics Plugin Engine/DeviceAgent are not automatically applied when enabling the Engine/DeviceAgent for the first time. It may lead to Plugin malfunction. In order to fix this issue, the user can manually apply the settings via the corresponding settings page/API request or restart the Server.
        • Sometimes metadata from Analytics Plugins is generated with a big delay when recording on the camera is disabled. This may lead to absence of object bounding boxes on the live video. Enabling recording fixes the issue.
        • It is not possible to modify DeviceAgent settings when the corresponding device is in Offline state (e.g. there’s currently no stream from the camera).
    • Region-Of-Interest-(ROI)-specific issues:
      • Empty ROIs are not hidden from the Plugin settings in GUI

In-Client Upgrade:

Build Number: 31466
Password: xcyc0q

Download Links:

4.0.0.29991 Video Management System
PUBLISHED 03 Nov 2019

Release Notes:

  • The release of Nx Meta VMS corresponding to the Release of Nx VMS v4.0.0.29987/29988/29989/29990/29991.
  • For usage instructions, see readme.md included within Metadata SDK zip.
  • IMPROVEMENTS:
    • Zip file with Video Source SDK (aka Camera Integration SDK) which comes with the VMS distribution renamed from `...camera_sdk...` to `...video_source_sdk...`.
      • NOTE: The same file offered for downloading from Server's web interface is still named `sdk.zip` for historical reasons.
  • KNOWN ISSUES:
    • Analytics Events are not shown in the Desktop Client when connected to a multi-server System and some of the Servers do not have the Analytics Plugin.
    • New System dialog window in Desktop Client for ARM-64 may load for 5-10 seconds.
    • When running two Analytics Plugins on the same camera, the bounding boxes are shown incorrectly (only one plugin per camera is currently supported).
    • Linux Server fails to record analytics metadata to NTFS drives.
    • Plugin-side settings may have some GUI issues.
    • Object bounding boxes are not shown in camera's item if the camera is not re-opened on a layout after enabling the metadata plugin for the first time.

In-Client Upgrade:

Build Number: 29991
Password: l2unec

Download Links:

4.0.0.29798 Video Management System
PUBLISHED 25 Sep 2019

Release Notes:

  • The release of Nx Meta VMS corresponding to the Release of Nx Witness v4.0.0.29785/29786/29787/29788.
  • For usage instructions, see readme.md included within Metadata SDK zip.
  • IMPROVEMENTS (Comparing to Nx Meta VMS R15):
    • Fixed the following issues:
      • Some very small empty yellow chunks (less than a second) may appear on the timeline while watching the archive. They disappear after performing an analytics search request.
      • In some cases, no Object tiles are shown in the Right Panel after enabling an Analytics Plugin for a non-recording camera. Reopening the camera on the layout fixes the problem.
      • “Phantom” yellow chunks may appear on the timeline after performing some specific Object search requests.
      • Analytics SDK: Fixed a bug in the helper class TimestampedObjectMetadata::getAttribute(): the attribute being returned needed addRef().
  • SDK BREAKING CHANGES:
    • Analytics, Object Action: Manifest capability `needTrack` renamed to `needFullTrack`.
  • KNOWN ISSUES:
    • Analytics Events are not shown in the Desktop Client when connected to a multi-server System and some of the Servers do not have the Analytics Plugin.
    • New System dialog window in Desktop Client for ARM-64 may load for 5-10 seconds.
    • When running two Analytics Plugins on the same camera, the bounding boxes are shown incorrectly (only one plugin per camera is currently supported).
    • Linux Server fails to record analytics metadata to NTFS drives.
    • Plugin-side settings may have some GUI issues.

In-Client Upgrade:

Build Number: 29798
Password: 9147kb

Download Links:

3.2.0.20510 Video Management System
PUBLISHED 06 Jul 2018

Release Notes:

  • Initial Release of Meta
  • - DO NOT USE FOR META DEVELOPMENT. USE THE LATEST 4.0 PATCH (IN PATCHES TAB: https://meta.nxvms.com/downloads/patches)

In-Client Upgrade:

Build Number: 20510
Password: tdfr0u

Download Links:

Patches are created to resolve specific issues.
If you are unsure of which patch to download and have not been directed to
this page by our support team please download the latest version of MetaVMS.

5.0.0.34326 Video Management System
PUBLISHED 02 Feb 2022

Release Notes:

  • The release of Nx Meta VMS corresponding to Powered-by-Nx VMS beta v5.0.0.34342.
  • For Metadata SDK usage instructions, see readme.md included within Metadata SDK zip.
  • These Release Notes describe changes made since Meta VMS 5.0.0.34201 R5.
  • NEW FEATURES:
    • Server HTTP API:
      • Added a new function `/ec2/transactionBus/http`.
      • Added a new parameter `periodType` to `/rest/v1/devices/{id}/footage`.
  • IMPROVEMENTS:
    • Server HTTP API documentation:
      • Fixed the representation of "flag" URL parameters - those which either appear in the URL (and may have `=true` which is ignored), or are missing. They were incorrectly shown as booleans with two possible values: `true` and `false`, while specifying `=false` was treated as the presence of the flag.
      • Fixed the representation of `POST` function parameters - now they are properly shown as going into the body.
      • Added missing "Deprecated." prefixes to the documentation of deprecated entities.
      • Added missing `eventType` values to the documentation for `/ec2/getEventRules`.
      • Added missing values to the `sortOrder` and `format` parameters to the documentation for `/ec2/getEvents`.
      • Added missing `EventState` parameter to the documentation for `/ec2/saveEventRule`.
      • In the documentation for `/api/manualCamera/...`, fixed the set of values in the parameter `reply.status.state`.
      • In the documentation for `/rest/v1/devices/*/searches`, fixed the set of values in the response parameter `status.state`.
  • SDK CHANGES BREAKING PLUGIN COMPILATION: N/A
  • SDK CHANGES BREAKING PLUGIN BINARY COMPATIBILITY: N/A
  • REST API BREAKING CHANGES: N/A
  • KNOWN ISSUES:
    • Mobile Client:
      • Android and iOS mobile Clients are unable to connect to Mediaserver or crash upon connection attempt/watching video from the camera.
    • Cloud:
      • This build is not compatible with the current Cloud instance. All the Cloud-related functionality is not supported.
      • WebAdmin:
      • There are two “API Documentation” hyperlinks in the WebAdmin main page: the one in the page footer and another one is shown in a drop-down that appears when clicking on the name of the System in the page header. The latter link is corrupted.
      • Some text placeholders in the new version of API documentation are empty. You can refer to the original swagger-ui web page to avoid any confusion: https://<address>:<port>/swagger-ui/index.html.
    • Analytics:
      • When searching for an attribute that changes over time, the corresponding bounding box is shown only for the time periods when the attribute value corresponds to the search string. E.g., if we are searching for an object of the type “Car” that was moving with a certain value of the “Speed” text attribute (“60 kmph”, for example), the bounding box for the discovered “Car” object will be shown only for the moments when the value of the “Speed” text attribute was equal to “60 kmph”. No bounding box will be shown for the moments when the same “Car” object had the values of the “Speed” attribute different from "60 kmph".
      • It is not possible to modify DeviceAgent settings when the corresponding device is in Offline state (e.g. there’s currently no stream from the camera).
      • Objects bounding boxes might start to “blink” in Desktop Client in case more than one camera with enabled analytics DeviceAgent(s) is shown on scene.
    • Server HTTP API documentation:
      • In the documentation for the function `/rest/v1/servers/{id}/storages/*/purge`, the response parameter `state` shows an incorrect set of values. The actual values are: `idle`, `inProgress`, `pending`.
      • In the documentation for the functions `/ec2/pluginInfo` and `/api/pluginInfo`, the response parameters `status` and `errorCode` show incorrect sets of values. The actual values are: `status`: `loaded`, `notLoadedBecauseOfError`, `notLoadedBecauseOfBlackList`, `notLoadedBecauseOptional`; `errorCode`: `noError, `cannotLoadLibrary`, `invalidLibrary`, `libraryFailure`, `badManifest`, `unsupportedVersion`, `internalError`.
    • Software update:
      • When updating to this build via Desktop Client (for example, making R5 -> R6 update) the build number has to be specified in the update dialog window, not the version.

In-Client Upgrade:

Build Number: 34326
Password: xwi5h0

Download Links:

5.0.0.34201 Video Management System
PUBLISHED 28 Dec 2021

Release Notes:

  • The maintenance release of Nx Meta VMS.
  • For Metadata SDK usage instructions, see readme.md included within Metadata SDK zip.
  • These Release Notes describe changes made since Meta VMS 5.0.0.33871 R4.
  • IMPROVEMENTS:
    • Metadata SDK:
      • Stub Analytics Plugin, Motion sub-plugin: Fixed incorrect behavior when motion cell size is not 1x1.
      • Taxonomy, Base Library: Attribute `Province` renamed to `State/Province`.
      • Stub Analytics Plugin, Object Detection and Taxonomy Features sub-plugins: Added settings to individually control generation of various Object types.
      • Fixed building the SDK with old CMake (starting from 3.3.2).
    • Server HTTP API:
      • In functions related to Device parameters, a new value has been introduced for the field `statusFlags`: `CSF_InvalidScheduleFlag`.
      • In the function `/api/ptz`, added new values for the `command` field: `RelativeMovePtzCommand`, `RelativeFocusPtzCommand`.
    • Server HTTP API documentation:
      • In the documentation, the HTTP method of /ec2/manualCamera/stop and /ec2/manualCamera/search was changed from POST to GET (the behavior of the functions was not changed). Rationale: both POST and GET work since 5.0, but because in 4.2 POST did not work, and since 5.0 all these functions are deprecated completely in favor of the new Rest API, it has been decided to keep GET in the old API documentation for consistency with 4.2.
      • Added documentation for the `name` parameter of `GET /api/showLog`.
      • Added documentation for the function `GET /ec2/getEvents`.
  • SDK CHANGES BREAKING PLUGIN COMPILATION: N/A
  • SDK CHANGES BREAKING PLUGIN BINARY COMPATIBILITY: N/A
  • REST API BREAKING CHANGES:
    • Renamed the values of `recordingType` parameter used in a number of API functions. Also, the accompanying parameter `metadataTypes` is now mandatory, and its value `metadataAndLow` is renamed to `metadataAndLowQuality`. See the details in the API Changelog in the Server web-admin.
      • NOTE: These values were already renamed since 4.2, so instead of making a new entry in the API Changelog, the existing entry has been edited to reflect the new names.
    • Function `/api/getEvents`:
      • The `actionParams` inner structure has a number of fields removed and some fields added. See the API documentation for the details.
      • The `eventParams` inner structure has new values in its `eventType` field, and the set of values for the field `reasonCode` has both additions and deletions.
      • A new parameter has been added: `compareString`.
  • KNOWN ISSUES:
    • Mobile Client:
      • Android and iOS mobile Clients are unable to connect to Mediaserver or crash upon connection attempt/watching video from the camera.
    • Cloud:
      • This build is not compatible with the current Cloud instance. All the Cloud-related functionality is not supported.
    • Analytics:
      • When searching for an attribute that changes over time, the corresponding bounding box is shown only for the time periods when the attribute value corresponds to the search string. E.g., if we are searching for an object of the type “Car” that was moving with a certain value of the “Speed” text attribute (“60 kmph”, for example), the bounding box for the discovered “Car” object will be shown only for the moments when the value of the “Speed” text attribute was equal to “60 kmph”. No bounding box will be shown for the moments when the same “Car” object had the values of the “Speed” attribute different from "60 kmph".
      • It is not possible to modify DeviceAgent settings when the corresponding device is in Offline state (e.g. there’s currently no stream from the camera).

In-Client Upgrade:

Build Number: 34201
Password: hr8amx

Download Links:

5.0.0.33871 Video Management System
PUBLISHED 03 Nov 2021

Release Notes:

  • The maintenance release of Nx Meta VMS.
  • For Metadata SDK usage instructions, see readme.md included within Metadata SDK zip.
  • These Release Notes describe changes made since Meta VMS 5.0.0.33560 R3.
  • NEW FEATURES:
    • Metadata SDK:
      • Taxonomy: Added new flags to the Object Type: `liveOnly` and `nonIndexable`. See details in `taxonomy.md`. This addresses issues with long-live objects: temperature trackers, counters, etc.
    • SDKs, `nx_kit` library:
      • Added functions to `nx/kit/utils.h`: `stringStartsWith()`, `stringEndsWith()`, and `trimString()`.
      • `test.h`: Added the possibility for the test executable to have extra arguments following `--`.
  • IMPROVEMENTS:
    • Metadata SDK:
      • Fixed errata: in the main `readme.md`, explained that the dynamic library of Stub Analytics Plugin now contains a number of stub plugins for various purposes - the old stub plugin has been split into many, but the readme did not reflect that.
      • Added a universal unit test which tests the specified dynamic library to be an Analytics Plugin. In the sample building scripts, this test is applied to Sample Analytics Plugin and Stub Analytics Plugin, but can be easily applied by the user to almost any other plugin - just call the test executable with the required parameters; see its command-line help for details.
      • Added a clarification to `IEngine::obtainDeviceAgent()` that the null result is not treated as an error.
    • Storage SDK: Added a clarification for the possible values of `StorageFactory::storageType()`.
    • Video Source SDK (aka Camera SDK): Added a comment to `MediaDataPacket::codecType()` explaining that plugged-in cameras cannot supply uncompressed video.
    • Server HTTP API:
      • Added a new `errorId` value: `sessionExpired`.
      • Added a new value to the possible Event Types in related functions: `serverCertificateError`.
      • Added a new function `/api/overlappedIds` to support NVRs with overlapping video archives.
      • Added the HTTP method `PUT` to `/rest/v1/servers/{serverId}/backupPositions` (had only `GET`).
      • Added a new function `GET /rest/v1/licenseSummaries`.
      • Fixed errata in the API documentation:
        • Added missing description of enum items.
        • Added missing Information about the expected values of certain string and integer fields.
        • Removed non-existing values with symbolic names from the list of values of the deprecated `error` field in the result of typical functions: only the numeric values can be returned in that field, the symbolic values are returned in the `errorId` field.
  • SDK CHANGES BREAKING PLUGIN COMPILATION: N/A
  • SDK CHANGES BREAKING PLUGIN BINARY COMPATIBILITY:
    • Taxonomy (`taxonomy.md`): Renamed the Object Type flag `hidden` to `hiddenDerivedType`.
  • REST API BREAKING CHANGES:
    • A new authentication method has been introduced instead of the now-deprecated HTTP
  • Basic, Digest, and URL-based authentication methods. The deprecated methods can be used only for
  • the users for which they have been explicitly enabled in the settings. Also, some new API
  • functions can only be called with a fresh Session Token Authentication in order to ensure
  • user password confirmation.
      • The User Role Permission value `ownerWithoutFreshSession` has been replaced with the three new values: `requireFreshSession`, `adminWithFreshSession`, `ownerWithFreshSession`.
  • See details in API Changelog (can be accessed only via the URL specified in the KNOWN ISSUES section of this document).
  • KNOWN ISSUES:
    • Errata in Server HTTP API Documentation:
      • The documentation for the fields `errorCode` and `status` in the response of functions returning Plugin Info shows the completely wrong value set, though the actual value set did not change since the previous release.
    • API Changelog is available in Server web-admin only via the direct URL (use the proper host and port): https://localhost:7001/static/api_changelog.html
    • Mobile Client:
      • Android and iOS mobile Clients are unable to connect to Mediaserver or crash upon connection attempt/watching video from the camera.
    • Cloud:
      • This build is not compatible with the current Cloud instance. All the Cloud-related functionality is not supported.
    • Analytics:
      • When searching for an attribute that changes over time, the corresponding bounding box is shown only for the time periods when the attribute value corresponds to the search string. E.g., if we are searching for an object of the type “Car” that was moving with a certain value of the “Speed” text attribute (“60 kmph”, for example), the bounding box for the discovered “Car” object will be shown only for the moments when the value of the “Speed” text attribute was equal to “60 kmph”. No bounding box will be shown for the moments when the same “Car” object had the values of the “Speed” attribute different from "60 kmph".
      • It is not possible to modify DeviceAgent settings when the corresponding device is in Offline state (e.g. there’s currently no stream from the camera).

In-Client Upgrade:

Build Number: 33871
Password: leyuft

Download Links:

5.0.0.33560 Video Management System
PUBLISHED 16 Sep 2021

Release Notes:

  • The maintenance release of Nx Meta VMS.
  • For Metadata SDK usage instructions, see readme.md included within Metadata SDK zip.
  • These Release Notes describe changes made since Meta VMS 4.3.0.32924 R2 - after that release, the upcoming VMS 4.3 has been renamed to 5.0.
  • NEW FEATURES:
    • Analytics Objects search interfaces have been improved in Desktop Client: new Advanced Search window allows filtering objects using attributes and object types from Taxonomy.
    • New CRUD-based HTTP API:
      • The following functions have been added:
        • `POST /rest/v1/servers/{id}/detach`
        • `POST /rest/v1/servers/{id}/reset`
        • `POST /rest/v1/servers/{id}/restart`
        • `/rest/v1/system/cloudSignature`
      • The new enum field `errorId` has been added to the object containing the error code and the error message - it is a symbolic representation of the numeric error code.
    • All SDK sample building scripts: now the default build configuration is `Release`; for Debug, use the new `--debug` command-line option. The option `--release` has been removed.
    • Metadata SDK, Stub Analytics Plugin:
      • A number of new sub-plugins have been introduced for demonstrating specific features previously demonstrated all together in the `object_detection` sub-plugin:
        • `object_streamer` - generates Objects based on a JSON program supplied in the Engine settings.
        • `best_shots` - accommodates all variants of Object Best Shot generation.
        • `object_actions` - demonstrates handling User-triggered Actions for Analytics Objects.
        • `object_detection` - demonstrates life-like scenarios of generating Analytics Objects based on the Base Library of Object Types.
      • The old `object_detection` sub-plugin has been renamed to `deprecated_object_detection` and will be removed in the future versions.
  • IMPROVEMENTS:
    • Server HTTP API:
      • The API documentation has been split into three sections - main (new CRUD-based) API, legacy (4.2-like) non-deprecated (yet) API, and legacy (4.2-like) deprecated API. See the details in the new preamble of the API Documentation page.
      • `/rest/v1/servers/{id}/info`: added new fields to the response: `synchronizedTimeMs`, `cloudOwnerId`, `userProvidedCertificatePem`.
      • Fixed errata in API Documentation:
        • `/rest/v1/devices/{id}/footage` returns an array of objects rather than an object.
        • Many functions in the legacy API have been incorrectly documented to return a data object, but actually return an object with the error code, error message, and the data object in the `reply` field.
      • The new User permission has been added: `ownerWithoutFreshSession`.
      • The fields `type` and `isOwner` are removed from the User object.
      • The new field `controlPtz` has been added to the Layout Item object.
      • The new fields `creationStartTimeMs` and `creationEndTimeMs` have been added to the Bookmark object.
      • In `/rest/v1/devices/*/searches`, added a new `mode` value `addFoundDevices`.
    • Metadata SDK:
      • Base Library of Object Types has the following breaking changes:
        • Attribute `Race` has been renamed to `Complexion` and its value set has been adjusted to match the Onvif standard.
        • Attribute `Things` of `Person` and `Face` Object Types have been replaced with the individual attributes like `Mask`, `Glasses`, etc.
      • In `motion` sub-plugin of Stub Analytics Plugin, the number of Objects generated to visualize the motion grid has been significantly reduced to avoid performance issues - the new Engine settings allow to choose the granularity (resolution) of the grid visualization; the default is generating Objects of size 8x8 grid cells.
  • SDK CHANGES BREAKING PLUGIN COMPILATION:
    • nx_kit, IniConfig: Removed support for `double` params, which caused atomic-related multi-threading issues. Use `float` instead. Also fixed some multi-threading issues for string values - now old string values are kept in a list and thus are available from any thread forever.
    • Metadata SDK: For multi-IPlugin libraries (those exporting `createNxPluginByIndex()` instead of `createNxPlugin()`), dump files (captured Manifests, settings, etc.) and plugin logs in stderr now
  • use the particular PluginId instead of the libName which is the same for all sub-plugins.
      • To implement it, the helper class `Plugin` now has a new virtual function `instanceId()` which should report `pluginId` as found in the `IPlugin` manifest. Constructors of helper classes like `Engine` and `ConsumingDeviceAgent` now require to pass the parent object in order to be able to query it for its `instanceId`.
        • As an example how to migrate the existing code, see the diff for any Stub sub-plugins, e.g. `video_frames` (as one of the simplest and having no other changes since the previous MetaVMS).
    • Camera (aka Video Source) SDK:
      • In `camera/camera_plugin.h`, the constants `MEDIA_DATA_BUFFER_ALIGNMENT` and `MEDIA_PACKET_BUFFER_PADDING_SIZE` have their values changed from 32 to 64.
      • New values of `enum SampleFormat` have been added to support signed 64-bit samples: `AV_SAMPLE_FMT_S64` and `AV_SAMPLE_FMT_S64P`.
  • SDK CHANGES BREAKING PLUGIN BINARY COMPATIBILITY: N/A
  • REST API BREAKING CHANGES:
    • In function `/ec2/bookmarks`, the undocumented filter parameter `sparsing` has been renamed to
  • `minVisibleLengthMs` and made documented.
    • The following newly introduced API functions for Backup have been replaced with the single `/rest/v1/servers/{serverId}/backupPositions`:
      • `/rest/v1/servers/{serverId}/backupPositions/{deviceId}`
      • `/rest/v1/servers/{serverId}/actualBackupPosition/{deviceId}`
      • ATTENTION: API Changelog (can be accessed only via the URL specified in the KNOWN ISSUES section of this document) still refers to the old functions - it is planned to be fixed in the next MetaVMS release.
    • Removed `/rest/v1/system/reset`.
    • Certain features have been deprecated, see details in API Changelog (can be accessed only via the URL specified in the KNOWN ISSUES section of this document):
      • A number of legacy API functions have been deprecated in favor of the corresponding new CRUD API functions.
      • In `GET /api/moduleInformation`, the flag `SF_NewSystem` in `serverFlags` has been deprecated.
  • KNOWN ISSUES:
    • API documentation is available in Server web-admin only via the direct URL (use the proper host and port): https://localhost:7001/#/api-tool
    • API Changelog is available in Server web-admin only via the direct URL (use the proper host and port): https://localhost:7001/static/api_changelog.html
    • Mobile Client:
      • Android and iOS mobile Clients are unable to connect to Mediaserver or crash upon connection attempt/watching video from the camera.
    • Cloud:
      • This build is not compatible with the current Cloud instance. All the Cloud-related functionality is not supported.
    • Analytics:
      • When searching for an attribute that changes over time, the corresponding bounding box is shown only for the time periods when the attribute value corresponds to the search string. E.g., if we are searching for an object of the type “Car” that was moving with a certain value of the “Speed” text attribute (“60 kmph”, for example), the bounding box for the discovered “Car” object will be shown only for the moments when the value of the “Speed” text attribute was equal to “60 kmph”. No bounding box will be shown for the moments when the same “Car” object had the values of the “Speed” attribute different from "60 kmph".
      • Multi-word text search for analytics object type does not work, e.g. if you are searching for an object of type “Human face”, searching using a string “human” or “face” will produce some results, but searching using a “human face” string won’t. That does not apply to a text search for attributes, multi-word search works for them.
      • It is not possible to modify DeviceAgent settings when the corresponding device is in Offline state (e.g. there’s currently no stream from the camera).
    • Server HTTP API Documentation:
      • Description of enum items is missing. The fix is planned to be delivered in the next MetaVMS release.
      • Information about expected values of certain string and integer fields is missing. The fix is planned to be delivered in the next MetaVMS release.

In-Client Upgrade:

Build Number: 33560
Password: h2365n

Download Links:

4.3.0.32924 Video Management System
PUBLISHED 13 May 2021

Release Notes:

  • The maintenance release of Nx Meta VMS.
  • For Metadata SDK usage instructions, see readme.md included within Metadata SDK zip.
  • These Release Notes describe changes made since Meta VMS 4.3.0.32743 R1.
  • IMPROVEMENTS:
    • Metadata SDK, Stub Analytics Plugin: the Plugin has been reworked into a number of specialized small plugins, all residing in the same dynamic library but representing themselves as independent `IPlugin` instances, thus appearing in the GUI as separate plugins and requiring separate turning on. Each of the small plugins is dedicated to a single SDK feature, like generating Objects, generating Events, receiving video frames in the particular format, etc.
    • Metadata SDK: Documentation for the Taxonomy (describing Attributes of Object types and Event types, and the relations between these types) has been introduced: see `src/nx/sdk/analytics/taxonomy.md`, or the corresponding page in the Doxygen documentation.
  • NEW FEATURES:
    • nx_kit, debug.h: New macro `NX_SAVE_BIN()` has been added which saves the binary array to a file.
  • REST API BREAKING CHANGES:
    • In functions `POST /rest/v1/system/storageEncryption` and `GET /rest/v1/system/storageEncryption/{ivVect}`, the result structure has been changed; see the API documentation for details.
  • KNOWN ISSUES:
    • Desktop Client:
      • Live view and archive playback are unavailable when connecting as a cloud user to a cloud system.
    • Mobile Client:
      • Android and iOS mobile Clients are unable to connect to Mediaserver or crash upon connection attempt.
    • Analytics:
      • Linux Server fails to record analytics metadata to NTFS drives.
      • When searching for an attribute that changes over time, the corresponding bounding box is shown only for the time periods when the attribute value corresponds to the search string.
      • Multi-word text search for analytics object type does not work, e.g. if you are searching for an object of type “Human face”, searching using a string “human” or “face” will produce some results, but searching using a “human face” string won’t. That does not apply to a text search for attributes, multi-word search works for them.
      • It is not possible to modify DeviceAgent settings when the corresponding device is in Offline state (e.g. there’s currently no stream from the camera).
      • Analytics storage has to be specified by the user (automatic storage selection does not work).

In-Client Upgrade:

Build Number: 32924
Password: po5t7e

Download Links:

4.3.0.32743 Video Management System
PUBLISHED 05 Apr 2021

Release Notes:

  • The maintenance release of Nx Meta VMS.
  • For Metadata SDK usage instructions, see readme.md included within Metadata SDK zip.
  • ATTENTION: These Release Notes show changes relative to Powered-by-Nx VMS Release v4.2.0.32656/32657, corresponding to Nx Meta VMS 4.2.0.32657 R3.
  • IMPROVEMENTS:
    • SDK, nx_kit: `IniConfig` has got a new method `getParamTypeAndValue()`.
    • Metadata SDK:
      • `nx::sdk::IUtilityProvider` has got a new method `serverId()`.
  • NEW FEATURES:
    • SDK: A new plugin type has been introduced for creating a stream-based Storages; see `nx::sdk::archive::IPlugin` in `src/nx/sdk/archive/i_plugin.h`.
      • NOTE: These files are located in Metadata SDK, as a first step to combining all SDKs into one based on Metadata SDK.
      • ATTENTION: This plugin type is currently a work in progress, and may have limitations and/or incompleteness, as well as runtime issues.
    • Metadata SDK: Analytics Plugins which produce Events and Objects can and should now declare their Attributes in an OOP-style manner, as named classes with support for inheritance. This new feature is called "Taxonomy".
      • Such declaration is done in Manifests in `typeLibrary` section in place of the now-deprecated sections `objectTypes` and `eventTypes`. An example is available in Stub Analytics Plugin.
      • NOTE: The documentation for Taxonomy language capabilities is going to be provided in the upcoming Meta VMS releases.
      • ATTENTION: VMS Server contains a library of recommended Object types, so that Plugins can produce Objects of types and with Attributes conforming to a common standard. But for now, this library is not documented - it is going to be published in the upcoming Meta VMS releases.
    • A new Server HTTP API has been introduced, designed in RESTful style as opposed to the RPC style of the old HTTP API.
      • This new RESTful API is not complete yet, and will not be complete at the time of the VMS 4.3 release. Consider it a work in progress. Features missing from the new API are still covered by the old API.
      • The old API is going to be supported for several upcoming VMS releases, though may become officially deprecated at some point in the future.
      • Server WebAdmin now includes the documentation for the new API.
        • ATTENTION: Server WebAdmin currently misses the documentation for the old API; it is going to be restored in the upcoming Meta VMS releases. For now, refer to the API documentation in 4.2, and the API Changelog.
    • A new “Analytics Object Detected” event has been introduced to Event Rules.
      • Object type selection and attributes filter are available for the event.
      • NOTE: This event is currently under development. Bugs and performance issues may occur.
  • SDK CHANGES BREAKING PLUGIN COMPILATION:
    • `nx::sdk::Ptr` now has `operator bool()` marked with `explicit`, which prohibits implicit conversion of `nx::sdk::Ptr` to `bool` in contexts other that `if`/`for`/`while`.
  • SDK CHANGES BREAKING PLUGIN BINARY COMPATIBILITY:
  • N/A
  • REST API BREAKING CHANGES:
    • See the complete list in API Changelog available in Server's WebAdmin using the following URL: `https://localhost:7001/static/api_changelog.html` (substitute `localhost:7001` with the appropriate values if needed).
      • NOTE: In WebAdmin of 4.3, due to a huge WebAdmin rework, the hyperlink to API Changelog is currently missing, and is planned to be restored in the upcoming Meta VMS releases.
    • TEMPORARY: JSON serialization of zero values of certain Flag fields now yields an empty string instead of a default value like `none`. This breaking change is going to be reverted in the upcoming Meta VMS releases.
  • KNOWN ISSUES:
    • Web admin:
      • It might be not possible to login to Web admin: after specifying login and password login page is shown all over again. Workaround: clear cookies or use browser incognito mode.
      • It is not possible to set up a new System via Web admin. Workaround: use Desktop Client to set up a new System.
      • Only new (REST API) API documentation is available in Web admin.
    • Analytics:
      • Linux Server fails to record analytics metadata to NTFS drives.
      • When searching for an attribute that changes over time, the corresponding bounding box is shown only for the time periods when the attribute value corresponds to the search string.
      • Multi-word text search for analytics object type does not work, e.g. if you are searching for an object of type “Human face”, searching using a string “human” or “face” will produce some results, but searching using a “human face” string won’t. That does not apply to a text search for attributes, multi-word search works for them.
      • It is not possible to modify DeviceAgent settings when the corresponding device is in Offline state (e.g. there’s currently no stream from the camera).
      • Analytics storage has to be specified by the user (automatic storage selection does not work).
      • sample_analytics_plugin.dll is missing from Windows Mediaserver distribution. This plugin can still be compiled from Metadata SDK.
      • Analytics plugins context actions may work improperly.

In-Client Upgrade:

Build Number: 32743
Password: h7bp76

Download Links:

4.2.0.32657 Video Management System
PUBLISHED 17 Mar 2021

Release Notes:

  • The release of Nx Meta VMS corresponding to Powered-by-Nx VMS Release v4.2.0.32656/32657.
  • For Metadata SDK usage instructions, see readme.md included within Metadata SDK zip.
  • KNOWN ISSUES:
    • Analytics:
      • Event rules that are triggered upon instant (not having "Start" and "Stop" conditions) Analytics Events from Analytics Plugins are triggered only once. It means that only the first Analytics Event is processed and the subsequent events of the same type are ignored.
      • Analytics Plugins are not working with panoramic cameras.
      • Linux Server fails to record analytics metadata to NTFS drives.
      • When searching for an attribute that changes over time, the corresponding bounding box is shown only for the time periods when the attribute value corresponds to the search string.
      • No analytics objects bounding boxes are shown in Client when performing a text search for object type. That does not apply to search via type selector.
      • Multi-word text search for analytics object type does not work, e.g. if you are searching for an object of type “Human face”, searching using a string “human” or “face” will produce some results, but searching using a “human face” string won’t. That does not apply to a text search for attributes, multi-word search works for them.
      • It is not possible to modify DeviceAgent settings when the corresponding device is in Offline state (e.g. there’s currently no stream from the camera).
      • Empty Region Of Interests (ROI) are not hidden from the Plugin settings in GUI.
      • Analytics storage has to be specified by the user (automatic storage selection does not work).

In-Client Upgrade:

Build Number: 32657
Password: x3ese8

Download Links:

4.2.0.32515 Video Management System
PUBLISHED 20 Feb 2021

Release Notes:

  • The release of Nx Meta VMS corresponding to Powered-by-Nx VMS Release Candidate v4.2.0.32352.
  • For Metadata SDK usage instructions, see readme.md included within Metadata SDK zip.
  • IMPROVEMENTS:
    • Fixed errors in the API documentation (not changing the API behavior):
      • `GET /ec2/getMediaServersEx`, `GET /ec2/getMediaServerUserAttributesList`, `POST /ec2/saveMediaServerUserAttributes`, `POST /ec2/saveMediaServerUserAttributesList`: Fixed incorrect enumeration values for `backupType` and `backupDaysOfWeek`.
      • `GET /ec2/getCamerasEx`, `GET /ec2/getCameraUserAttributesList`, `POST /ec2/saveCameraUserAttributes`, `POST /ec2/saveCameraUserAttributesList`, `GET /ec2/getStatisticsReport`, `GET /ec2/getFullInfo`: Fixed incorrect enumeration values for `motionType`, `streamQuality`, and `failoverPriority`.
    • SDKs:
      • Added `dynamic_libraries.md` with important information how to avoid issues when linking Plugins with other dynamic libraries.
      • Added `lib_context.md` with explanation of `LibContext` mechanism used in the SDK.
  • SDK CHANGES BREAKING PLUGIN COMPILATION:
    • Recently introduced `nx::sdk::addRefToPtr()` was renamed to `nx::sdk::shareToPtr()`.
  • KNOWN ISSUES:
    • Analytics:
      • Analytics Plugins are not working with panoramic cameras.
      • Linux Server fails to record analytics metadata to NTFS drives.
      • When searching for an attribute that changes over time, the corresponding bounding box is shown only for the time periods when the attribute value corresponds to the search string.
      • No analytics objects bounding boxes are shown in Client when performing a text search for object type. That does not apply to search via type selector.
      • Multi-word text search for analytics object type does not work, e.g. if you are searching for an object of type “Human face”, searching using a string “human” or “face” will produce some results, but searching using a “human face” string won’t. That does not apply to a text search for attributes, multi-word search works for them.
      • It is not possible to modify DeviceAgent settings when the corresponding device is in Offline state (e.g. there’s currently no stream from the camera).
      • Empty Region Of Interests (ROI) are not hidden from the Plugin settings in GUI.
      • Analytics storage has to be specified by the user (automatic storage selection does not work).

In-Client Upgrade:

Build Number: 32515
Password: htu77a

Download Links:

4.2.0.32350 Video Management System
PUBLISHED 11 Jan 2021

Release Notes:

  • The release of Nx Meta VMS corresponding to Powered-by-Nx VMS beta v4.2.0.32352.
  • For Metadata SDK usage instructions, see readme.md included within Metadata SDK zip.
  • ATTENTION: These Release Notes describe changes relatively to 4.1.0.31399 R9.
  • BREAKING CHANGES:
    • Windows 7 compatibility support ended.
  • IMPROVEMENTS:
    • Fixed errors in the API documentation (not changing the API behavior):
      • GET /api/getEvents reply[].actionType, reply[].eventParams.eventType, reply[].eventParams.reasonCode: Fixed incorrect values.
      • GET /ec2/getCamerasEx: Non-existing params cameraId and cameraName removed from the documentation.
      • GET /ec2/analyticsTrackBestShot: The function has a required parameter cameraId.
    • nx_kit: json11: Fixed JSON output: always using decimal point (not comma) for numbers.
    • Metadata SDK:
      • When building samples, the CMake file on Windows now uses all CPU cores.
      • Added an important clarification for dealing with Plugin-side Settings to the documentation for nx::sdk::analytics::IDeviceAgent::setSettings().
    • HTTP API: Some params of GET /ec2/bookmarks renamed with deprecation, see details in WebAdmin, `API Breaking Changes` (`api_changelog.html`).
    • Video Source SDK (aka Camera SDK), Storage SDK:
      • When building samples, the CMake file on Windows now uses all CPU cores.
    • All SDKs: CMakeLists.txt improved to automatically trigger the generation phase when the set of files covered by `*` changes. This improves incremental building.
    • SDK: UUID generation in uuid_helper.cpp made truly random, which should fix issues with identical uuids appearing e.g. as Object Track Ids because of repeating randomization seed.
  • NEW FEATURES:
    • HTTP API:
      • GET /ec2/analyticsLookupObjectTracks: Added optional param withBestShotOnly.
      • Added function GET /ec2/analyticsTrackBestShot.
      • Added function GET /api/getCameraParamManifest.
      • GET/POST /ec2/deviceAnalyticsSettings: a new field added to the result: `reply.session`.
      • GET /api/pluginInfo, GET /ec2/pluginInfo: a new field added to the result: `instanceIndex`, see details in these Release Notes about multi-IPlugin entry point function in Metadata SDK.
      • GET /ec2/recordedTimePeriods: a new optional param added: `preciseBounds`.
      • GET /ec2/getLayouts, POST /ec2/saveLayout, POST /ec2/saveLayouts, GET /ec2/getFullInfo: Added params displayAnalyticsObjects and displayRoi to the Layout Item.
      • POST /ec2/mergeSystems: Added one more error code to the result: NVR_LICENSE_ERROR.
      • HTTP Streaming (GET media/<cameraId>.<format>): Added params `stream` and `duration`.
    • SDK, nx_kit:
      • Added C++ template for working with bit flags: `nx/kit/flags.h`.
      • Added debug macro which saves the string to a file: `NX_SAVE_STR` in `nx/kit/debug.h`.
      • Added `absolutePath()` in `nx/kit/utils.h`
    • Metadata SDK:
      • nx::sdk::IUtilityProvider: Added serverSdkVersion().
      • nx::sdk::analytics::IObjectTrackBestShotPacket: Added image*() to allow the Plugin to supply an explicit image (e.g. a JPEG) for the best-shot; added support for attributes to the best-shot.
      • nx::sdk::analytics::IEventMetadata: Added trackId() to link an Event to an Object Track.
      • nx::sdk::analytics::IConsumingDeviceAgent: Added finalize() to notify the Plugin when the DeviceAgent is being released by the Server.
      • Added the possibility for a plugin's dynamic library to create multiple IPlugin objects. For details, see the documentation for nx::sdk::IPlugin, typedef for `MultiEntryPointFunc`.
      • `nx::sdk::analytics::IEventMetadataPacket`, `nx::sdk::analytics::IObjectMetadataPacket` and `nx::sdk::analytics::IObjectTrackBestShotPacket` have got a new field `flags`, see `enum class Flags` in their base class `nx::sdk::analytics::IDataPacket`.
        • Currently, there is only one possible flag in this field: `cameraClockTimestamp`. It allows the packet to have its timestamp being measured by the camera clock instead of the Server clock. It is useful when the Plugin does not receive video frames from the Server but rather processes data coming out of the camera, because generally the Server can change the incoming frame timestamps if it considers the camera clock inaccurate.
        • NOTE: This field was not added to the base class because it would break Plugin binary compatibility due to a different virtual method order.
      • Added documentation attributes.md: "Attributes with pre-defined behavior". It documents hard-coded Analytics Attributes like the newly added "nx.sys.color" which allows to define the color of Bounding Boxes.
      • nx::sdk::analytics::IEventMetadata extended with the new method key(), which is used to identify duplicates of state-dependent Events which are isActive.
  • OTHER CHANGES:
    • Breaking change in Server settings: rtspBufferSizeKb renamed to mediaBufferSizeKb, see details in WebAdmin, `API Breaking Changes` (`api_changelog.html`).
  • KNOWN ISSUES:
    • General issues:
      • This build is currently incompatible with Cloud. The System can be connected to Cloud, but is always shown with Offline status and cannot be shared.
    • Analytics:
      • Analytics Plugins are not working with panoramic cameras.
      • Linux Server fails to record analytics metadata to NTFS drives.
      • When searching for an attribute that changes over time, the corresponding bounding box is shown only for the time periods when the attribute value corresponds to the search string.
      • No analytics objects bounding boxes are shown in Client when performing a text search for object type. That does not apply to search via type selector.
      • Multi-word text search for analytics object type does not work, e.g. if you are searching for an object of type “Human face”, searching using a string “human” or “face” will produce some results, but searching using a “human face” string won’t. That does not apply to a text search for attributes, multi-word search works for them.
      • It is not possible to modify DeviceAgent settings when the corresponding device is in Offline state (e.g. there’s currently no stream from the camera).
      • Empty Region Of Interests (ROI) are not hidden from the Plugin settings in GUI.
      • Analytics storage has to be specified by the user (automatic storage selection does not work).

In-Client Upgrade:

Build Number: 32350
Password: lvro4d

Download Links:

4.1.0.32044 Video Management System
PUBLISHED 11 Nov 2020

Release Notes:

  • The release of Nx Meta VMS corresponding to the 2020-11 Patch of Powered-by-Nx VMS v4.1.0.32045.
  • For Metadata SDK usage instructions, see readme.md included within Metadata SDK zip.
  • IMPROVEMENTS:
    • Fixed errors in the API documentation (not changing the API behavior):
      • GET /ec2/getCamerasEx: Non-existing params cameraId and cameraName removed from the documentation.
    • Video Source SDK (aka Camera SDK), Storage SDK:
      • When building samples, the CMake file on Windows now uses all CPU cores.
    • All SDKs: CMakeLists.txt improved to automatically trigger the generation phase when the set of files covered by `*` changes. This improves incremental building.
  • NEW FEATURES:
    • SDK, nx_kit:
      • Added C++ template for working with bit flags: `nx/kit/flags.h`.
    • Metadata SDK:
      • `nx::sdk::analytics::IEventMetadataPacket`, `nx::sdk::analytics::IObjectMetadataPacket` and `nx::sdk::analytics::IObjectTrackBestShotPacket` have got a new field `flags`, see `enum class Flags` in their base class `nx::sdk::analytics::IDataPacket`.
        • Currently, there is only one possible flag in this field: `cameraClockTimestamp`. It allows the packet to have its timestamp being measured by the camera clock instead of the Server clock. It is useful when the Plugin does not receive video frames from the Server but rather processes data coming out of the camera, because generally the Server can change the incoming frame timestamps if it considers the camera clock inaccurate.
        • NOTE: This field was not added to the base class because it would break Plugin binary compatibility due to a different virtual method order.
  • SDK CHANGES BREAKING PLUGIN COMPILATION:
  • N/A
  • SDK CHANGES BREAKING PLUGIN BINARY COMPATIBILITY:
  • N/A
  • REST API BREAKING CHANGES:
  • N/A
  • KNOWN ISSUES:
    • Analytics:
      • Analytics Plugins are not working with panoramic cameras.
      • Linux Server fails to record analytics metadata to NTFS drives.
      • When searching for an attribute that changes over time, the corresponding bounding box is shown only for the time periods when the attribute value corresponds to the search string.
      • No analytics objects bounding boxes are shown in Client when performing a text search for object type. That does not apply to search via type selector.
      • Multi-word text search for analytics object type does not work, e.g. if you are searching for an object of type “Human face”, searching using a string “human” or “face” will produce some results, but searching using a “human face” string won’t. That does not apply to a text search for attributes, multi-word search works for them.
      • It is not possible to modify DeviceAgent settings when the corresponding device is in Offline state (e.g. there’s currently no stream from the camera).
      • Empty ROIs are not hidden from the Plugin settings in GUI.
      • Analytics storage has to be specified by the user (automatic storage selection does not work).

In-Client Upgrade:

Build Number: 32044
Password: drnl9g

Download Links:

4.1.0.31947 Video Management System
PUBLISHED 02 Nov 2020

Release Notes:

  • The release of Nx Meta VMS corresponding to the 2020-10 Patch of Powered-by-Nx VMS v4.1.0.31945/31946.
  • For Metadata SDK usage instructions, see readme.md included within Metadata SDK zip.
  • IMPROVEMENTS:
    • Fixed errors in the API documentation (not changing the API behavior):
      • GET /ec2/getCamerasEx: Non-existing params cameraId and cameraName removed from the documentation.
    • Video Source SDK (aka Camera SDK), Storage SDK:
      • When building samples, the CMake file on Windows now uses all CPU cores.
    • All SDKs: CMakeLists.txt improved to automatically trigger the generation phase when the set of files covered by `*` changes. This improves incremental building.
  • NEW FEATURES:
    • HTTP API:
      • GET/POST /ec2/deviceAnalyticsSettings: a new field added to the result: `reply.session`.
      • GET /api/pluginInfo, GET /ec2/pluginInfo: a new field added to the result: `instanceIndex`, see details in these Release Notes about multi-IPlugin entry point function in Metadata SDK.
      • GET /ec2/recordedTimePeriods: a new optional param added: `preciseBounds`.
    • Metadata SDK:
      • Added the possibility for a plugin's dynamic library to create multiple IPlugin objects. For details, see the documentation for nx::sdk::IPlugin, typedef for `MultiEntryPointFunc`.
  • FIXED ISSUES:
    • If an older version of Nx Meta Client was installed on the computer, 'Nx MetaVMS Launcher' may fail to start the new Client version, as well as Desktop shortcut that points to this launcher. This issue is fixed as soon as 'Nx MetaVMS' binary is launched manually from the installation folder.
    • Default settings for Analytics Plugin Engine/DeviceAgent are not automatically applied when enabling the Engine/DeviceAgent for the first time.
  • KNOWN ISSUES:
    • General issues:
      • None
      • Analytics:
        • Analytics Plugins are not working with panoramic cameras.
        • Linux Server fails to record analytics metadata to NTFS drives.
        • When searching for an attribute that changes over time, the corresponding bounding box is shown only for the time periods when the attribute value corresponds to the search string.
        • No analytics objects bounding boxes are shown in Client when performing a text search for object type. That does not apply to search via type selector.
        • Multi-word text search for analytics object type does not work, e.g. if you are searching for an object of type “Human face”, searching using a string “human” or “face” will produce some results, but searching using a “human face” string won’t. That does not apply to a text search for attributes, multi-word search works for them.
        • It is not possible to modify DeviceAgent settings when the corresponding device is in Offline state (e.g. there’s currently no stream from the camera).
    • Region-Of-Interest-(ROI)-specific issues:
      • Empty ROIs are not hidden from the Plugin settings in GUI.

In-Client Upgrade:

Build Number: 31947
Password: 5njn9j

Download Links:

4.1.0.31766 Video Management System
PUBLISHED 10 Sep 2020

Release Notes:

  • The release of Nx Meta VMS corresponding to the 2020-09 Patch of Powered-by-Nx VMS v4.1.0.31766/31767/31768.
  • For Metadata SDK usage instructions, see readme.md included within Metadata SDK zip.
  • IMPROVEMENTS:
    • Fixed errors in the API documentation (not changing the API behavior):
      • GET /api/getEvents reply[].actionType, reply[].eventParams.eventType, reply[].eventParams.reasonCode: Fixed incorrect values.
    • nx_kit: json11: Fixed JSON output: always using decimal point (not comma) for numbers.
    • Metadata SDK:
      • When building samples, the CMake file on Windows now uses all CPU cores.
      • Added an important clarification for dealing with Plugin-side Settings to the documentation for nx::sdk::analytics::IDeviceAgent::setSettings().
    • HTTP API: Some params of GET /ec2/bookmarks renamed with deprecation, see details in WebAdmin, `API Breaking Changes` (`api_changelog.html`).
  • NEW FEATURES:
    • HTTP API:
      • GET /ec2/analyticsLookupObjectTracks: Added optional param withBestShotOnly.
      • Added function GET /ec2/analyticsTrackBestShot.
      • Added function GET /api/getCameraParamManifest.
    • Metadata SDK:
      • nx::sdk::IUtilityProvider: Added serverSdkVersion().
      • nx::sdk::analytics::IObjectTrackBestShotPacket: Added image*() to allow the Plugin to supply an explicit image (e.g. a JPEG) for the best-shot; added support for attributes to the best-shot.
      • nx::sdk::analytics::IEventMetadata: Added trackId() to link an Event to an Object Track.
      • nx::sdk::analytics::IConsumingDeviceAgent: Added finalize() to notify the Plugin when the DeviceAgent is being released by the Server.
  • OTHER CHANGES:
    • Breaking change in Server settings: rtspBufferSizeKb renamed to mediaBufferSizeKb, see details in WebAdmin, `API Breaking Changes` (`api_changelog.html`).
  • KNOWN ISSUES:
    • Sometimes metadata from Analytics Plugins is generated with a big delay when recording on the camera is disabled. This may lead to absence of object bounding boxes on the live video. Enabling recording fixes the issue.
    • General issues:
      • If an older version of Nx Meta Client was installed on the computer, 'Nx MetaVMS Launcher' may fail to start the new Client version, as well as Desktop shortcut that points to this launcher. This issue is fixed as soon as 'Nx MetaVMS' binary is launched manually from the installation folder.
      • Analytics:
        • Analytics Plugins are not working with panoramic cameras.
        • Linux Server fails to record analytics metadata to NTFS drives.
        • When searching for an attribute that changes over time, the corresponding bounding box is shown only for the time periods when the attribute value corresponds to the search string.
        • No analytics objects bounding boxes are shown in Client when performing a text search for object type. That does not apply to search via type selector.
        • Multi-word text search for analytics object type does not work, e.g. if you are searching for an object of type “Human face”, searching using a string “human” or “face” will produce some results, but searching using a “human face” string won’t. That does not apply to a text search for attributes, multi-word search works for them.
        • Default settings for Analytics Plugin Engine/DeviceAgent are not automatically applied when enabling the Engine/DeviceAgent for the first time. It may lead to Plugin malfunction. In order to fix this issue, the user can manually apply the settings via the corresponding settings page/API request or restart the Server.
        • It is not possible to modify DeviceAgent settings when the corresponding device is in Offline state (e.g. there’s currently no stream from the camera).
    • Region-Of-Interest-(ROI)-specific issues:
      • Empty ROIs are not hidden from the Plugin settings in GUI.

In-Client Upgrade:

Build Number: 31766
Password: lnje2l

Download Links:

4.1.0.31193 Video Management System
PUBLISHED 23 Jun 2020

Release Notes:

  • The release of Nx Meta VMS corresponding to Powered-by-Nx products v4.1.0 Release Candidate.
  • For Metadata SDK usage instructions, see readme.md included within Metadata SDK zip.
  • IMPORTANT:
    • On Windows, the default path to the VMS installation directory has changed: it is `C:\Program Files\Network Optix\NxMeta\` instead of `C:\Program Files\Network Optix\Nx MetaVMS\`. All the configuration files, DBs, plugin libraries and other local files that are stored in the “old” directory are not going to be loaded by the “new” Server and Client. We strongly recommend to perform a clean installation of VMS rather than trying to upgrade an existing one.
    • TODO: On Linux, the path to the directory where the Server (running as a service) is looking for .ini files has changed. It is now `/opt/networkoptix-metavms/mediaserver/.config/nx_ini/` – move your .ini files if you need them.
  • IMPROVEMENTS:
    • .ini files now treat enquoted values as having C-style escaping (quotes and backslashes must be escaped with a backslash, and all standard C/C++ escape sequences except `\u` and `\U` are supported).
    • Metadata SDK:
      • Plugins now report the SDK version to the Server: the SDK source code now includes the SDK version in a generated file `src/nx_sdk_version.inc`, which is used to implement the exported function `nxSdkVersion()`; the Server calls this function to populate the new `nxSdkVersion` field in the REST API function `GET /api/pluginInfo`. This feature is implemented in `src/nx/sdk/helpers/lib_context.cpp`, so there is no need to write any additional code in a Plugin.
  • KNOWN ISSUES:
    • General issues:
      • New System dialog window in Desktop Client for ARM-64 may load for 5-10 seconds.
      • Analytics:
        • Analytics Plugins are not working with panoramic cameras.
        • Linux Server fails to record analytics metadata to NTFS drives.
        • When searching for an attribute that changes over time, the corresponding bounding box is shown only for the time periods when the attribute value corresponds to the search string.
        • Linux Server may crash on stopping if some Plugins built with Metadata SDK or Video Source SDK were loaded.
    • Region-Of-Interest-(ROI)-specific issues:
      • Empty ROIs are not hidden from the Plugin settings in GUI.

In-Client Upgrade:

Build Number: 31193
Password: plx66r

Download Links:

4.1.0.31036 Video Management System
PUBLISHED 29 May 2020

Release Notes:

    • The maintenance release of Nx Meta VMS.
    • For Metadata SDK usage instructions, see readme.md included within Metadata SDK zip.
    • IMPROVEMENTS:
      • REST API: Added `GET /api/iniConfig` function which shows the Server's .ini file directory.
      • SDKs:
        • In Windows sample building scripts build_samples.bat, fixed deleting the old build directory.
        • In Video Source SDK sample building scripts, added option `--no-qt-samples` to avoid building samples requiring the Qt library (and thus eliminating the requirement to have and specify the Qt library).
        • In readme.md, declare support for Ubuntu 20.04 in addition to the already supported versions.
      • Metadata SDK:
        • Fixed compiling with the latest MSVC 2019 16.6: added missing `#include` directives.
    • SDK CHANGES BREAKING PLUGIN COMPILATION:
      • Metadata SDK: The recently introduced Analytics Engine Capability `hideStreamSelection` renamed to `disableStreamSelection`.
    • REST API BREAKING CHANGES:
      • In function `GET /media`, added the `signature` parameter which adds a signature to the exported multimedia data. Previously, the signature had been added unconditionally, but now it is not added if the new parameter is not specified.
    • KNOWN ISSUES:
      • General issues:
        • New System dialog window in Desktop Client for ARM-64 may load for 5-10 seconds.
        • MacOS installer window has some visualization issues.
        • Analytics:
          • Best shot metadata is empty when executing Plugin Action.
          • Analytics plugins are not working with panoramic cameras.
          • Linux Server fails to record analytics metadata to NTFS drives.
          • When searching for an attribute that changes over time, the corresponding bounding box is shown only for the time periods when the attribute value corresponds to the search string.
      • Region-Of-Interest-(ROI)-specific issues:
        • Empty ROIs are not hidden from the plugin settings in GUI.

In-Client Upgrade:

Build Number: 31036
Password: hmefcu

Download Links:

4.0.0.31038 Video Management System
PUBLISHED 29 May 2020

Release Notes:

  • IMPORTANT
    • UBUNTU 14.04 SUPPORT: Ubuntu 14.04 LTS is no longer supported due to official end of life occurred in April 2019. Please upgrade to Ubuntu 16.04 LTS or later before updating to this version to avoid issues!
    • 32-BIT SUPPORT: 32 Bit operating system (both Windows and Ubuntu Linux) installation packages are no longer supported. If you have a system with any 32-bit server, the upgrade will not work.
  • ++++++++++++ 4.0.0.31038 (4b19fda132cc374802cb79f844c4236d82672dbb) +++++++++++
  • NEW DEVICE SUPPORT/IMPROVEMENTS/FIXES
    • Encoders added to the analog list:
      • March Networks Edge16e
    • Advanced PTZ Support for:
      • HikvisionDS-2DE4A320x, Hikvision|DS-2DE4A225x, Hikvision|DS-2DE4A425x
      • Milesight MS-C5361x
      • VMS-18431 - Fixed PTZ mapping for GV-SD2722-IR GV-SD3732-IR.
    • New devices supported:
      • Axis Q9216, M3066, M3065, M3064, M3068, M3067, M3075, P5654
      • Arecont Vision AV10856x, AV8476x, AV5426x, AV2756x, AV5456x, AV20476x, AV16856x, AV4856x, AV5756x
      • ICRealtime ICIP-PANO-A007, ICIP-T802-I.
    • Input signal did not work on HIKVISION DS-2CD2742FWD-IZS. Fixed.
    • VideoTec UCHD-30x-VT had interruptions while receiving RTP over multicast. Fixed.
  • BUG FIXES
    • Aspect ratio was set incorrectly from streams sent from iPhone (iOS 13) using the DW Witness plugin. Fixed.
  • API CHANGES/FIXES
    • Server returned 500 and printed ERROR ASSERT on the ec2/saveUsers command without the “id” parameter. Documentation changed - "id" parameter is described as mandatory for "ec2/saveUsers" now.

In-Client Upgrade:

Build Number: 31038
Password: d98vcu

Download Links:

4.0.0.30917 Video Management System
PUBLISHED 01 May 2020

Release Notes:

  • This is a cumulative patch which incorporates all previously released 4.0 patches.
  • IMPORTANT
    • UBUNTU 14.04 SUPPORT: Ubuntu 14.04 LTS is no longer supported due to official end of life occurred in April 2019. Please upgrade to Ubuntu 16.04 LTS or later before updating to this version to avoid issues!
    • 32-BIT SUPPORT: 32 Bit operating system (both Windows and Ubuntu Linux) installation packages are no longer supported. If you have a system with any 32-bit server, the upgrade will not work.
  • NEW DEVICE SUPPORT/IMPROVEMENTS/FIXES
    • Encoders added to the analog list:
      • Axis Q7424x
      • AvertX 438ir
      • Bosch VIP-X16x
      • Dahua DH-NVR4208-8P-4K, DH-NVR4832-4K, DHI-NVR5216-4KS2,
  • DHI-NVR5424x, DH-NVR608-32-4KS2
      • Hikvision DS-7216x, DS-7316HQHI-F4/N
      • IC Realtime NVR7000K
      • March Networks Edge 16e
      • Merit LILIN VS212
      • RAS Security DVR08CVI-4K
      • Siqura S-64 E V2
      • ToughDog Security TDHDX161-4K-2T
      • Vip Vision NVR8PRO7
      • Winic AR304-4.
    • Advanced PTZ Support for:
      • Hikvision DS-2DE4215IWx and DS-2DE4A215IWx
    • Fixed unexpected WAVE XRN encoder sensors change.
  • IMPROVEMENTS
    • Cloud connectivity improved.
    • Offline activation form can display a custom link to help users find a local distributor.
    • Introduced a new setting that allows setting virtual camera Time Zones to the client’s local time or the virtual camera’s recorded time.
  • BUG FIXES
    • Fixed memory leak caused by transcoded video download over API calls.
    • USB webcams were not successfully auto-discovered on servers installed on Ubuntu. Fixed.
    • Fixed unsupported audio on USB cameras on Ubuntu.
    • Virtual Camera could not display files recorded by iPhones on the Timeline properly. Fixed.
  • API CHANGES/FIXES
    • SDKs: improvements to readme.md and Doxygen documentation.
    • SDKs: improvements to sample building scripts:
      • Implemented command-line help (`-h`|`--help`|`/?`).
      • Added `--release` command-line arg to build Release configuration instead of Debug.
      • For MSVC, removed forcing the old MSVC2015 compiler (v140 toolset).

In-Client Upgrade:

Build Number: 30917
Password: h90ogx

Download Links:

4.1.0.30799 Video Management System
PUBLISHED 16 Apr 2020

Release Notes:

    • The release of Nx Meta VMS corresponding to the Beta release of Nx VMS v4.1.0.30797/30798/30799/30800/30801.
    • IMPROVEMENTS:
      • SDKs:
        • Metadata SDK:
          • Manifest of `nx::sdk::analytics::IDeviceEngine` has got the `capabilities` field, similar to the one in `IEngine`. Currently, there is one capability: `hideStreamSelection` (if set, the user will not be able to choose between the Primary and Secondary streams on the settings page).
            • ATTENTION: This capability will be renamed to `disableStreamSelection` in the next MetaVMS release.
    • KNOWN ISSUES:
      • General issues:
        • New System dialog window in Desktop Client for ARM-64 may load for 5-10 seconds.
        • MacOS installer window has some visualization issues.
        • Analytics:
          • Analytics plugins are not working with panoramic cameras.
          • Linux Server fails to record analytics metadata to NTFS drives.
          • When searching for an attribute that changes over time, the corresponding bounding box is shown only for the time periods when the attribute value corresponds to the search string.
          • Objects on video can be shown with 1-2s delay compared to their Right Panel thumbnails.
          • Objects bounding boxes are not shown during archive playback while watching secondary stream is displayed.
      • Region-Of-Interest-(ROI)-specific issues:
        • Empty ROIs are not hidden from the plugin settings in GUI.

In-Client Upgrade:

Build Number: 30799
Password: p9ca3z

Download Links:

4.1.0.30731 Video Management System
PUBLISHED 07 Apr 2020

Release Notes:

    • The maintenance release of Nx Meta VMS, related to 4.1 beta of Nx Witness and other Powered-by-Nx products
    • For Metadata SDK usage instructions, see readme.md included within Metadata SDK zip.
    • IMPROVEMENTS:
      • SDKs:
        • Improved SDK sample building scripts build_samples.bat and build_samples.sh:
          • Added command-line option `--release` which makes a Release build instead of Debug.
          • Fixed building with Visual Studio 2017 and newer (now v140 toolset is not required).
          • Help is printed by `/?`, `-h` or `--help` args.
      • Metadata SDK:
      • Fixed the following issues:
        • On HiDPI screens, the polygon point context menu is opened in the wrong location (coordinates are doubled).
        • Region-Of-Interest (ROI) editor modal window can be hidden behind the Camera Settings window in the Ubuntu Client.
        • No bounding boxes are shown in the camera item if a plugin processes the data too slowly. Can be observed e.g. by changing Stub Analytics Plugin setting "Additional frame processing delay, ms" to ~50 or more for a 30 FPS video stream.
        • Bounding boxes of metadata objects are not displayed or blink during archive playback when moving from frame to frame in backward direction.
        • Stub Analytic Plugin: A plugin-side ROI of testPolygon type is added to GroupBox with `Polylines` caption instead of GroupBox with `Polygons` caption in Engine manifest.
    • REST API BREAKING CHANGES:
      • In method `/ec2/cameraThumbnail` the `sameAsAnalytics` option has been removed from possible values of the `streamSelectionMode` URL parameter. `forcedPrimary` and `forcedSecondary` values have to be used for retrieving thumbnails of Objects detected by Analytics Plugins. Information about the stream that has been used by analytics to detect a particular Object is contained in the metadata that comes in the RTSP stream and in the response of `/ec2/analyticsLookupObjectTracks` as a value of the `bestShot.streamIndex` field. The index of the stream that is currently used by a particular Engine on a particular Device can be retrieved via the `/ec2/deviceAnalyticsSettings` request.
      • Retaining compatibility until expired: Method `/api/pluginInfo` is deprecated in favor of the new System-wide method `/ec2/pluginInfo`.
    • KNOWN ISSUES:
      • General issues:
        • New System dialog window in Desktop Client for ARM-64 may load for 5-10 seconds.
        • MacOS installer window has some visualization issues.
        • Analytics:
          • Analytics plugins are not working with panoramic cameras.
          • Linux Server fails to record analytics metadata to NTFS drives.
          • When searching for an attribute that changes over time, the corresponding bounding box is shown only for the time periods when the attribute value corresponds to the search string.
          • Objects on video can be shown with 1-2s delay compared to their Right Panel thumbnails.
          • Objects bounding boxes are not shown during archive playback while watching secondary stream is displayed
      • Region-Of-Interest-(ROI)-specific issues:
        • Empty ROIs are not hidden from the plugin settings in GUI.

In-Client Upgrade:

Build Number: 30731
Password: 10m78y

Download Links:

4.1.0.30526 Video Management System
PUBLISHED 27 Feb 2020

Release Notes:

  • The maintenance release of Nx Meta VMS.
  • For Metadata SDK usage instructions, see readme.md included within Metadata SDK zip.
  • IMPROVEMENTS:
    • Metadata SDK:
      • Fixed build_samples.bat being run with `--no-tests` option.
      • Settings model improved; for details, see the example in Engine manifest of Stub Analytics Plugin:
        • New Setting type introduced - `Repeater`, which allows to make N similar Setting values.
        • For ComboBox Setting type, it is now possible to specify item captions to be shown in the GUI instead of item ids (specified in the `range` field).
        • Setting type `PolygonFigure` now allows to specify `minPoints` and `maxPoints` limits.
        • New setting type introduced - `ObjectSizeConstraints`, which is essentially a pair of an inner and an outer box.
    • SDK: For unit tests on Linux or MacOS, environment variable $TMPDIR is now used for the temporary directory instead of the hard-coded `/tmp`.
    • Fixed the following issues:
      • When running two Analytics Plugins on the same camera, the bounding boxes are shown incorrectly (only one plugin per camera is currently supported).
      • Plugin-side settings may have some GUI issues.
      • Analytic events from Device Agent are not generated without Server restart after creating the Device Agent.
      • Overridden Device Agent settings are not shown in Desktop Client.
      • All the values that the attribute had during the lifetime of the object are shown in the Right Panel when browsing the archive.
      • When several editor windows are opened simultaneously, it is not possible to edit ROI nowhere except for the last opened window.
      • In random cases the editor window may pop-up behind the Camera Settings window (has to be always in front).
      • In rare cases the editor for a ROI may become unavailable. Can be fixed with Desktop Client restart.
      • Clicking on the same point while drawing a ROI figure yields new points.
      • ROI editor window is not closed when hitting the ESC button.
      • The name of the ROI editor window gets corrupted when editing the figure name while the editor window is open.
      • When opening several ROI editor windows it is possible to work only with the one that was opened last.
      • Each new ROI editor window is opened behind the previously opened editor window(-s).
      • "Display on camera" checkboxes from ROI settings behave incorrectly for empty ROIs.
  • SDK CHANGES BREAKING PLUGIN COMPILATION:
    • Removed `IAttribute::Type::local_time_point` enum item, which was recently added and never used.
  • REST API BREAKING CHANGES:
    • Changed parameters of GET and POST /ec2/deviceAnalyticsSettings.
    • For details, see Server's webadmin: For Developers -> API Changelog
  • KNOWN ISSUES:
    • New System dialog window in Desktop Client for ARM-64 may load for 5-10 seconds.
    • MacOS installer window has some visualization issues.
    • Analytics:
      • Analytics plugins are not working with panoramic cameras.
      • No bounding boxes are shown in the camera item after setting Stub analytics plugin setting "Additional frame processing delay, ms" to ~50 or more (for a 30 fps video stream).
      • Linux Server fails to record analytics metadata to NTFS drives.
      • When searching for an attribute that changes over time, the corresponding bounding box is shown only for the time periods when the attribute value corresponds to the search string.
      • Bounding boxes of metadata objects are not displayed or blink during archive playback when moving from frame to frame in backward direction.
  • Region-Of-Interest-(ROI)-specific issues:
    • On HiDPI screens, the polygon point context menu is opened in the wrong location (coordinates are doubled).
    • ROI editor modal window can be hidden behind Camera Settings window in Ubuntu Client.
    • Empty ROIs are not hidden from the plugin settings in GUI.
    • Snapshots from camera in ROI previews are not updated during the current Client session.
    • A plugin-side ROI of testPolygon type is added to GroupBox with “Polylines” caption instead of GroupBox with “Polygons” caption in Stub Analytic Plugin Engine manifest.

In-Client Upgrade:

Build Number: 30526
Password: 1fub00

Download Links:

4.1.0.30317 Video Management System
PUBLISHED 29 Jan 2020

Release Notes:

  • For usage instructions, see readme.md included within Metadata SDK zip.
  • IMPROVEMENTS:
    • SDK, nx_kit: Json parser fixed to always assume a decimal point (`.`) in floating-point numbers instead of a locale-dependent symbol (which is often `,`).
    • SDK, nx_kit, ini_config: Now .ini files are generated with all setting lines being commented out.
    • Metadata SDK: A minimalistic plugin example added: Sample Analytics Plugin.
    • Metadata SDK: Plugins may now receive motion detection information, see `IMotionMetadataPacket`.
  • KNOWN ISSUES:
  • General issues:
    • When running two Analytics Plugins on the same camera, the bounding boxes are shown incorrectly (only one plugin per camera is currently supported).
    • Plugin-side settings may have some GUI issues.
    • Metadata plugins are not working with panoramic cameras.
    • Device Agent’s SpinBox setting resets to zero when trying to change it.
    • Analytic events from Device Agent are not generated without Server restart after creating the Device Agent.
    • Overridden Device Agent settings are not shown in Desktop Client.
    • No bounding boxes are shown in the camera item after setting Stub analytics plugin setting "Additional frame processing delay, ms" to ~50 (for a 30 fps video stream).
    • All the values that the attribute had during the lifetime of the object are shown in the Right Panel when browsing the archive.
    • Linux Server fails to record analytics metadata to NTFS drives.
    • New System dialog window in Desktop Client for ARM-64 may load for 5-10 seconds.
  • ROI-specific issues:
    • When several editor windows are opened simultaneously, it is not possible to edit ROI nowhere except for the last opened window (actually, no controls are available for other windows, it is even not possible to close them).
    • On HiDPi screen polygon point context menu is opened in a wrong location (coordinates are doubled).
    • In random cases the editor window may pop-up behind the Camera Settings window (has to be always in front).
    • In rare cases the editor for a ROI may become unavailable. Can be fixed with Desktop Client restart.
    • Clicking on the same point while drawing a ROI figure yields new points.
    • ROI editor window is not closed when hitting the ESC button.
    • The name of the ROI editor window gets corrupted when editing the figure name while the editor window is open.
    • When opening several ROI editor windows it is possible to work only with the one that was opened last.
    • Each new ROI editor window is opened behind the previously opened editor window(-s).
    • "Display on camera" checkboxes from ROI settings behave incorrectly for empty ROIs.

In-Client Upgrade:

Build Number: 30317
Password: p3y4a8

Download Links:

4.1.0.30142 Video Management System
PUBLISHED 10 Dec 2019

Release Notes:

  • IMPROVEMENTS:
    • Region Of Interest (ROI) for Analytics Plugins now can be visualized on camera.
    • Metadata SDK:
      • GroupBoxes in Settings can be collapsible; the new properties appeared in Settings Model in manifests: `collapsible` and `collapsed`.
      • A new Analytics Plugin manifest option is introduced: `streamTypeFilter`, which allows to request the metadata stream (additional data in the stream besides audio and video) to be passed to the Plugin.
      • Settings model for a DeviceAgent, normally defined in Engine manifest, can be overridden in DeviceAgent's manifest: this can be used in case the Settings Model depends on the particular instance of a Device, thus, can be generated by the Plugin only after the DeviceAgent instance is created.
      • Introduced a new helper class `nx::sdk::MediaStreamStatistics` which allows to count FPS, bitrate and other data for the stream data coming to the Plugin.
  • SDK CHANGES BREAKING PLUGIN COMPILATION:
    • The helper class `nx::sdk::analytics::VideoFrameProcessingDeviceAgent` renamed to `nx::sdk::analytics::ConsumingDeviceAgent` to reflect the fact that it now can accept not only video frames, but the metadata from the original stream.
  • SDK CHANGES BREAKING PLUGIN BINARY COMPATIBILITY:
    • The method `nx::sdk::analytics::IObjectTrack::getTrack()` (which has been deleted in error in the previous 4.1.0 R1 MetaVMS Release) is back and fully functional, thus, the binary compatibility with 4.0 is restored.
  • KNOWN ISSUES:
  • General issues:
    • Analytics Events are not shown in the Desktop Client when connected to a multi-server System and some of the Servers do not have the Analytics Plugin.
    • New System dialog window in Desktop Client for ARM-64 may load for 5-10 seconds.
    • When running two Analytics Plugins on the same camera, the bounding boxes are shown incorrectly (only one plugin per camera is currently supported).
    • Linux Server fails to record analytics metadata to NTFS drives.
    • Plugin-side settings may have some GUI issues.
    • Metadata plugins are not working with panoramic cameras.
    • Device Agent’s SpinBox setting resets to zero when trying to change it.
  • ROI-specific issues:
    • When several editor windows are opened simultaneously, it is not possible to edit ROI nowhere except for the last opened window (actually, no controls are available for other windows, it is even not possible to close them).
    • On HiDPi screen polygon point context menu is opened in a wrong location (coordinates are doubled).
    • ROI is shown in the camera’s item on the scene only after applying Agent settings for the first time.
    • In random cases editor window may pop-up behind the Camera Settings window (has to be always in front).
    • Black canvas background is sometimes shown in the editor window instead of video.
    • In rare cases, the editor for a ROI may become unavailable. Can be fixed with Desktop Client restart.

In-Client Upgrade:

Build Number: 30142
Password: tld436

Download Links:

4.1.0.30087 Video Management System
PUBLISHED 20 Nov 2019

Release Notes:

  • The first release of Nx Meta VMS representing the upcoming VMS v4.1.
  • For usage instructions, see readme.md included within Metadata SDK zip.
  • NEW FEATURES:
    • Region Of Interest (ROI) support for analytics plugins. 3 types of ROIs are available: line, box and polygon. ROI editor is available from GUI.
    • Health Monitoring. Allows to check on System’s health and metrics via API calls and a dedicated web interface.
  • IMPROVEMENTS:
    • None (it is the first 4.1 Meta Release).
  • SDK CHANGES BREAKING PLUGIN COMPILATION:
    • Analytics DB from 4.0 is partially incompatible with 4.1 release: a search for metadata objects in a selected area will not work for the objects that were recorded before update to 4.1 and such objects will not be shown on the image.
  • SDK CHANGES BREAKING PLUGIN BINARY COMPATIBILITY:
    • Removed virtual method `nx::sdk::analytics::IObjectTrack::getTrack()` and its counterparts in the helper class `nx::sdk::analytics::ObjectTrack`. This change will be reverted to restore binary compatibility with 4.0, but the method will always report an empty track because in 4.1 track data is not available (it is no longer stored in the database but rather muxed into archive video streams).
  • KNOWN ISSUES:
  • General issues:
    • Analytics Events are not shown in the Desktop Client when connected to a multi-server system and some of the Servers do not have the Analytics Plugin.
    • New System dialog window in Desktop Client for ARM-64 may load for 5-10 seconds.
    • When running two Analytics Plugins on the same camera, the bounding boxes are shown incorrectly (only one plugin per camera is currently supported).
    • Linux Server fails to record analytics metadata to NTFS drives.
    • Plugin-side settings may have some GUI issues.
    • Object bounding boxes are not shown in the camera's item if the camera is not re-opened on a layout after enabling the metadata plugin for the first time.
    • Metadata plugins are not working with panoramic cameras.
    • In rare cases a snapshot from a camera is shown in Right Panel thumbnail instead of an image of a detected object.
    • Device Agent’s SpinBox setting resets to zero when trying to change it.
  • ROI-specific issues:
    • When several editor windows are opened simultaneously, it is not possible to edit ROI nowhere except for the last opened window (actually, no controls are available for other windows, it is even not possible to close them).
    • On HiDPi screen polygon point context menu is opened in a wrong location (coordinates are doubled).
    • ROI preview is not aligned to ROI caption.
    • Not possible to add new points to an existing polygon (dragging is only available when hovering over the polygon sides).
    • In random cases editor window may pop-up behind the Camera Settings window (has to be always in front).
    • Black canvas background is sometimes shown in the editor window instead of video.
    • Device Agent settings have wrong alignment.
    • When Engine setting gets applied, all the ROIs of this Engine's agent disappear from Agent’s settings if Agent’s settings are currently open.
    • If Device Agent settings are opened before the stream from the camera gets opened, no canvas for ROI preview are shown in Device Agent settings. Only ROI figures are shown. The problem gets fixed by reopening the settings window.
    • If Device Agent settings page is opened for some unavailable camera (eg., Unauthorized one), background picture for ROI preview canvas is still shown. It is taken from some other camera that is available.

In-Client Upgrade:

Build Number: 30087
Password: 1mxhs6

Download Links:

4.0.0.29642 Video Management System
PUBLISHED 02 Sep 2019

Release Notes:

  • The release of Nx Meta VMS corresponding to the Nx VMS v4.0.0.29640 Release Candidate.
  • For usage instructions, see readme.md included within Metadata SDK zip.
  • NEW FEATURES:
    • None.
  • SDK BREAKING CHANGES:
    • None.
  • IMPROVEMENTS:
    • Fixed the following issues:
      • Adding secondary stream for generic RTSP/HTTP links does not work.
      • Desktop Client may randomly crash during the System update.
      • An excessive amount of Plugin Diagnostic Events is sent for device-dependent plugins.
      • Server is still subscribed for analytics events of a camera after removing all corresponding Event Rules.
  • KNOWN ISSUES:
    • Analytics Events are not shown in the Desktop Client when connected to a multi-server System and some of the Servers do not have the Analytics Plugin.
    • New System dialog window in Desktop Client for ARM-64 may load for 5-10 seconds.
    • When running two Analytics Plugins on the same camera, the bounding boxes are shown incorrectly (only one plugin per camera is currently supported).
    • Linux Server fails to record analytics metadata to NTFS drives.
    • Plugin-side settings may have some GUI issues.
    • Some very small empty yellow chunks (less than a second) may appear on the timeline while watching the archive. They disappear after performing an analytics search request.
    • In some cases, no Object tiles are shown in the Right Panel after enabling an Analytics Plugin for a non-recording camera. Reopening the camera on the layout fixes the problem.
    • “Phantom” yellow chunks may appear on the timeline after performing some specific Object search requests.

In-Client Upgrade:

Build Number: 29642
Password: xcu6xg

Download Links:

4.0.0.29607 Video Management System
PUBLISHED 23 Aug 2019

Release Notes:

  • The release of Nx Meta VMS corresponding to the Release Candidate of Nx VMS v4.0
  • For usage instructions, see readme.md included within Metadata SDK zip.
  • ATTENTION: These Release Notes describe changes relative to Nx Meta VMS build 4.0.0.29370 R12.
  • NEW FEATURES:
    • SDKs:
      • Analytics SDK renamed to Metadata SDK. Note that the term "Analytics Plugin" remained intact, and so does the namespace "analytics", thus, this change does not affect C++ source code.
      • So-called "old" SDKs - Storage SDK and Camera SDK (aka Video Source SDK or Camera Integration SDK) were rebuilt using the latest sources and, besides being still available for download from Web Admin (section "For developers"), are now included in the distribution directory alognside Metadata SDK.
        • More samples were added to these "old" SDKs, together with sample building scripts for convenience, similar to those of Metadata SDK.
        • Though no new API features were introduced for these old SDKs, and thus binary compatibility with their plugins is preserved both ways, recompiling plugins code using these repacked SDKs require some adaptation; see readme.md files in the SDK zip packages.
  • IMPROVEMENTS:
    • Metadata SDK:
      • Added sample building scripts for 32-bit ARM platform.
      • Added unit tests for core SDK files.
  • SDK BREAKING CHANGES:
    • `nx::sdk::Uuid::base_type` moved out of the class `Uuid` and renamed to `nx::sdk::UuidBase`.
    • Method `IPlugin::name()` was removed
      • Rationale: a plugin is identified by its `id` (dot-separated words) and `name` (human-friendly name with spaces) from the manifest, and can use `libContext()->name()` for a log-friendly identifier.
    • Metadata SDK (Analytics):
      • Methods `nx::sdk::analytics::IEngine::plugin()` and `nx::sdk::analytics::IDeviceAgent::engine()` removed together with the related helper methods in helper classes `Engine` and `DeviceAgent` - implementing classes are expected to track the parent relation on their own.
      • Interface `nx::sdk::analytics::IAction` changed:
        • Renamed method `objectId()` to `objectTrackId()` to better reflect its purpose.
        • Instead of calling `handleResult()`, Action handlers now simply return the result from `IEngine::executeAction()` in the form of the newly introduced `IAction::Result`.
    • SDK methods which returned `nx::sdk::Result<>` (an object holding either a value or an error code) were transformed: the virtual methods are renamed adding prefixes `get`, `do`, or similar, and now return such values via an out-parameter (by pointer), and for conveniency public inline wrapper methods with the original names are added which call the corresponding virtual method and return the result by value. Moreover, to simplify reference counting, such wrapper methods that return reference-countable objects now return `Ptr<>`.
      • For a simple example, see the difference in `IUtilityProvider::homeDir()` method definition.
      • As a consequence, `IRefCountable::queryInterface<>()` now returns `Ptr<>` instead of a raw pointer, thus, there is no need to wrap such calls into `toPtr()`.
      • To make that possible, the following related changes have been introduced:
        • Class `nx::sdk::Ptr` was moved to `nx/sdk` from `nx/sdk/helpers`.
        • `nx::sdk::Error` fields `errorCode` and `errorMessage`, as well as `nx::sdk::Result<>` fields `error` and `value` transformed to getter methods with the same names.
        • Enum `nx::sdk::ErrorCode` moved from `error_code.h` to `result.h`.
      • Rationale: required for binary compatibility of plugins. When returning class objects by value, C++ compilers sometimes choose to return them via a hidden out-parameter (by pointer) to enable C++ "RVO" technique, which breaks ABI compatibility.
    • NOTE: The change described below typically does not affect plugin writers, unless they define their own interfaces for the plugin internal needs.
      • Struct `InterfaceId` now contains the id as an array of chars instead of a char pointer. Method `queryInterface()` now receives `InterfaceId` by pointer instead of by value.
        • To make that work, the following related changes have been introduced:
          • `IRefCountable::interfaceId()` now returns `InterfaceId` by pointer rather than by value.
          • Introduced method `IRefCountable::makeId()` which constructs a pointer to `InterfaceId` from a string literal; to be used in the implementation of `interfaceId()` methods.
        • Rationale: required for binary compatibility of plugins. From the calling convention (ABI) point of view, `queryInterface()` needs to receive a char pointer, and though passing by value a struct containing such pointer yielded the same result, C++ compilers give no such guarantee.
    • Helpers:
      • `nx::sdk::toStdString()` renamed to `toString()`.
      • `nx/sdk/aliases.h` and `nx/sdk/helpers/aliases.h` removed - use `nx::sdk::Result<>` directly.
      • Removed standalone methods `queryInterfacePtr<>()` in favor of `IRefCountable::queryInterface<>()` which now returns `Ptr<>`.
  • KNOWN ISSUES:
    • Analytics Events are not shown in the Desktop Client when connected to multi-server System and some of the Servers do not have the Analytics Plugin.
    • New System dialog window in Desktop Client for ARM-64 may load for 5-10 seconds.
    • When running 2 metadata plugins on a same camera the bboxes are shown incorrectly (only one plugin per camera is currently supported).
    • Linux Server fails to record analytics metadata to NTFS drives.
    • Plugin-side settings may behave incorrectly.

In-Client Upgrade:

Build Number: 29607
Password: ph1heh

Download Links:

4.0.0.29370 Video Management System
PUBLISHED 17 Jul 2019

Release Notes:

  • The maintenance release of Nx Meta VMS.
  • For usage instructions, see readme.md included within Analytics SDK zip.
  • Check development guide and best practices: https://support.networkoptix.com/hc/en-us/sections/360004090353-Creating-a-Video-Analytics-Plugin
  • NEW FEATURES:
    • SDK: A leak detection mechanism introduced for ref-countable objects. To enable, see the new options in `vms_server_plugins.ini` (re-generate the file and search for `refCountableRegistry`). If any discrepancy or leak is detected, an assertion fails. See the documentation for `nx::sdk::IRefCountableRegistry` for details.
      • NOTE: If a plugin compiles with `nx/sdk/lib_context.h` and `nx/sdk/lib_context.cpp`, and uses 'nx::sdk::RefCountable` helper base classes for its objects, as stub_analytics_plugin does, the leak detection mechanism is supported automatically - `RefCountable` class registers its construction and destruction in the ref-countable registry assigned by the Server to each plugin. The same takes places for objects created on the Server side which has its own registry instance. See the documentation for `nx::sdk::ILibContext` for details.
  • IMPROVEMENTS:
    • Analytics SDK:
      • nx_kit: Supported 16-bit "wide" strings and chars in toString().
      • In Linux, stub_analytics_plugin dynamic library is compiled so that it includes `rpath` instead of `runpath`, thus, enabling the lookup of the dependencies in the plugin home directory first. This practice is recommended for all plugins. For details, see `stub_analytics_plugin/CMakeLists.txt`, search for `rpath`.
  • SDK BREAKING CHANGES:
    • `nx::sdk::IPluginEvent` renamed to `nx::sdk::IPluginDiagnosticEvent`; the helper classes updated accordingly.
    • `nx::sdk::IStringMap::addItem()` renamed to `setItem()` to reflect that it can override an existing item. Helper classes updated accordingly.
    • Analytics SDK:
      • Reworked error reporting by plugin's methods: now every method which may fail with an error returns `nx::sdk::Result<Value>` - a C-union-like object containing either an error code with a message, or a value of the required result type. See the documentation for `nx::sdk::Result`,, `nx::sdk::ErrorCode`, and `nx::sdk::error()` in `nx/sdk/helpers/error.h`.
        • Error reporting capability added to `setSettings()` and `pluginSideSettings()` methods of `IEngine` and `IDeviceAgent` - now an error can be reported for each setting individually. See the methods' documentation for details.
      • Protected method for retrieving the manifest of `Engine` and `DeviceAgent` helper classes is renamed from `manifest()` (was an overload for the method `manifest()` defined in the respective interface) to `manifestInternal()`.
      • `IObjectMetadata::id()` renamed to `trackId()` - it corresponds to an Object Track (a contiguous appearance of an object in a video fragment) rather than an Object (a real-life object like a particular car or a person).
  • KNOWN ISSUES:
    • Analytics Events are not shown in the Desktop Client when connected to multi-server System and some of the Servers do not have the Analytics Plugin.
    • New System dialog window in Desktop Client for ARM-64 may load for 5-10 seconds.
    • In rare cases, the bounding boxes of the detected objects may not be shown on the camera image during the archive playback.
    • Object search results are displayed incorrectly on the timeline -- the yellow highlight does not correspond to the periods of time when the objects were discovered.
    • Object search filter “Any Camera” works incorrectly -- no objects from the past are discovered when using it.

In-Client Upgrade:

Build Number: 29370
Password: paz6nm

Download Links:

4.0.0.29226 Video Management System
PUBLISHED 25 Jun 2019

Release Notes:

  • The release of Nx Meta VMS corresponding to the release of Nx VMS v4.0.0.29227 and v4.0.0.29228.
  • IMPORTANT:
    • To enable some new features it is necessary to delete all contents from the desktop_client.ini file on all computers running Client:
      • on Windows: c:\Users\<user>\AppData\Local\nx_ini\desktop_client.ini
      • on Linux: /home/<user>/nx_ini/desktop_client.ini
    • Files will be re-populated again automatically
  • NEW FEATURES:
    • Metadata (aka Analytics) SDK:
      • The SDK source code files are now licensed as Open Source under Mozilla Public License 2.0.
      • stub_analytics_plugin extended with the settings that allow developers to generate life-like objects (bicycles, cars, etc.) moving on realistic trajectories.
  • IMPROVEMENTS:
    • Improved the timings of object thumbnail appearance in the Notifications Panel.
    • Metadata (aka Analytics) SDK:
      • Renamed `build_sample_nvidia_tegra.sh` to `build_sample_arm64.sh`, and `nvidia_tegra_toolchain.cmake` to `toolchain_arm64.cmake`.
    • Fixed the following issues:
      • Analytics metadata is lost after server restart.
      • The client needs to be restarted in order to show a newly loaded plugin in Camera Settings.
      • On Linux, metadata DB is recorded on a system disk in case the disk manually selected for metadata storage gets inaccessible. Metadata is recorded to the folder that was used as a mount point for an inaccessible disk.
      • When changing the disk for metadata storage, metadata DB is created in a new location only after server restart.
      • Stub Plugin setting "Generate events" works incorrectly.
      • Plugin settings aren't applied if they were specified together with changing Plugin status to "Enabled".
  • SDK BREAKING CHANGES:
    • Simplified the concept of `UtilityProvider`: moved the methods from the old `nx::sdk::ITimeUtilityProvider` and `nx::sdk::IPluginHomeDirUtilityProvider` to the former base class `nx::sdk::IUtilityProvider`; removed the old classes. Also, now each Plugin receives its own copy of `nx::sdk::IUtilityProvider`, so the `plugin` parameter of `nx::sdk::IUtilityProvider::getHomeDir()` is removed.
  • KNOWN ISSUES:
    • Analytics Events are not shown in the Desktop Client when connected to multi-server System and some of the Servers do not have the Analytics Plugin.
    • Installer dialog for Mac Client has some visualization issues.
    • New System dialog window in Desktop Client for ARM-64 may load for 5-10 seconds.
    • In rare cases, the bounding boxes of the detected objects may not be shown on the camera image during the archive playback.
    • In case of very small size of archive storage (tens of minutes or less) the yellow timeline highlight for the detected analytics objects may be shown incorrectly.
    • Device Agent settings are shown empty in GUI in case if another Device Agent with empty settings is running for a camera.
    • Default Plugin settings are shown in GUI after re-enabling the Plugin.

In-Client Upgrade:

Build Number: 29226
Password: 1vn0pk

Download Links:

4.0.0.29158 Video Management System
PUBLISHED 12 Jun 2019

Release Notes:

  • The maintenance release of Nx Meta VMS.
  • For usage instructions, see readme.md included within Analytics SDK zip.
  • Also, check the updates development guide and best practices: https://support.networkoptix.com/hc/en-us/sections/360004090353-Creating-a-Video-Analytics-Plugin
  • NEW FEATURES:
    • Analytics SDK:
      • Plugins can now request the path to their dedicated directory, e.g. to look for resources: see `IPluginHomeDirUtilityProvider`, and an example usage in `nx::vms_server_plugins::analytics::stub::Engine::obtainPluginHomeDir()`.
    • RestAPI: Added a method /ec2/pluginInformation which provides information about both loaded plugins and plugins which have failed to load (with error codes and messages).
    • Dropped support by VMS distribution for Ubuntu 14.04.
  • IMPROVEMENTS:
    • In Windows, if a Server plugin resides in its dedicated directory (rather than in a common directory with other plugins), it can have DLLs that it depends on in the same directory, like in Linux.
      • NOTE: Such directory is known as a plugin's home directory, and should be named as the plugin dynamic library but without extension and `lib` prefix (in Linux).
    • Analytics SDK:
      • stub_analytics_plugin: Moved Engine and DeviceAgent settings from stub_analytics_plugin.ini to GUI settings. Note that certain settings which are related to the plugin in general (and not to its Engine) still remain in stub_analytics_plugin.ini.
      • Improved `vms_server_plugins.ini` options for substituting settings from file: instead of the incorrectly commented options `analyticsEngineSettingsPath` and
  • `analyticsDeviceAgentSettingsPath`, introduced a common option `analyticsSettingsSubstitutePath`.
  • SDK BREAKING CHANGES:
    • `nx::sdk::analytics::IAttribute` and its helper class `nx::sdk::analytics::Attribute` were moved from `nx::sdk::analytics` to `nx::sdk`.
    • `nx::sdk::analytics`: The "auxiliary data" mechanism of `IObjectMetadata` and `IEventMetadata` was removed in favor of the existing "attributes" mechanism, which has been propagated from `IObjectMetadata` to `IMetadata`, thus becoming available in `IEventMetadata`. Helpers updated accordingly.
    • Helpers: `nx::sdk::analytics::Engine::getParamValue()` now receives `const std::string&` instead of `const char*`.
  • KNOWN ISSUES:
    • Analytics metadata is lost after server restart.
    • Analytics Events are not shown in the Desktop Client when connected to multi-server System and some of the Servers do not have the Analytics Plugin.
    • Installer dialog for Mac Client has some visualization issues.
    • New System dialog window in Desktop Client for ARM-64 may load for 5-10 seconds.
    • In rare cases, the bounding boxes of the detected objects may not be shown on the camera image during the archive playback.
    • In case of very small size of archive storage (tens of minutes or less) the yellow timeline highlight for the detected analytics objects may be shown incorrectly.
    • The client needs to be restarted in order to show a newly loaded plugin in Camera Settings.
    • Device Agent settings are shown empty in GUI in case if another Device Agent with empty settings is running for a camera.
    • On Linux, metadata DB is recorded on a system disk in case if the disk manually selected for metadata storage gets inaccessible. Metadata is recorded to the folder that was used as a mount point for an inaccessible disk.
    • When changing the disk for metadata storage, metadata DB is created in a new location only after server restart.
    • Stub Plugin setting "Generate events" works incorrectly.
    • Default Plugin settings are shown in GUI after re-enabling the Plugin.
    • Plugin settings aren't applied if they were specified together with changing Plugin status to "Enabled".

In-Client Upgrade:

Build Number: 29158
Password: pi8psi

Download Links:

4.0.0.28947 Video Management System
PUBLISHED 30 Apr 2019

Release Notes:

  • The maintenance release of Nx Meta VMS.
  • For usage instructions, see readme.md included within Analytics SDK zip.
  • Plugin development guideline: https://support.networkoptix.com/hc/en-us/sections/360004090353-Creating-a-Video-Analytics-Plugin
  • ATTENTION: These Release Notes are written relatively to R7.
  • NEW FEATURES:
    • Analytics:
      • stub_analytics_plugin: Introduced a debugging feature: intentional crashing on frame N, activated by stub_analytics_plugin.ini.
      • For Live Stream Cache (helpful for correct Right Panel thumbnails), the precise min/max caching duration can be tuned in mediaserver.ini.
      • Introduced metadata and frame logging for Client and Server; can be turned on via analytics_logging.ini.
      • Supported cameras that are decoded by the Server to YUV other than YUV422, e.g. certain MJPEG cameras (including most webcameras).
  • IMPROVEMENTS:
    • Analytics:
      • Fixed showing obsolete Right Panel thumbnails in some cases.
      • Introduced `desktop_client.ini` option `tilePreviewLoadDelayOverrideMs`.
      • Improved object thumbnails in right panel via enabling caching of the primary stream when Analytics is working on a camera. Increases server RAM usage, can be disabled in Advanced System settings; the old mediaserver.ini option which forced this caching has been removed.
      • Improved showing thumbnails in the Right Panel:
        • For Live Stream Cache (helpful for correct Right Panel thumbnails), the cleaning policy improved to avoid unneeded cleaning.
        • Maximum image width can be tuned in `desktop_client.ini`.
      • Fixed passing metadata for context actions
      • Camera frame timestamp correction can be tuned via `nx_streaming.ini`.
      • Improved performance of Analytics Metadata Database.
    • Analytics SDK:
      • Added a helper class method `ObjectMetadata::addAttribute(Attribute)`.
      • Object Actions (available to the user via context menu in the Right Panel) now can receive object track and best-shot video frames. The data is available via the new method `IAction::objectTrackInfo()`, and particular details should be requested in the Engine manifest in the section `objectActions/requirements`; see `engine.cpp` of `stub_analytics_plugin` for an example.
      • stub_analytics_plugin: Default value of the .ini option for generating plugin events is set to off.
  • SDK BREAKING CHANGES:
    • Improved pixel format conversion functions in `nx/sdk/analytics/helpers/pixel_format.h`: `pixelFormatToStdString()` and `getPixelFormatDescriptor()` error handling has changed; see details in the code comments (Doxygen documentation).
    • Removed potentially problematic method `nx::sdk::Ptr::dynamicCast()` - use `nx::sdk::queryInterfacePtr()` instead, which now safely returns null on null argument.
    • NOTE: Plugins compiled with the SDK release R7 (as well as R7.1, R7.2 and R7.3) will work with this release without issues, but binary versions of R7 plugins will work with this MetaVMS release only if the plugin does not use Object Actions.
  • KNOWN ISSUES:
    • Analytics Events are not shown in the Desktop Client when connected to multi-server System and some of the Servers do not have the Analytics Plugin.
    • Not possible to draw area selection when performing Motion/Objects search in an area if the focus was switched to another camera.
    • Installer dialog for Mac Client has some visualization issues.
    • New System dialog window in Desktop Client for ARM-64 may load for 5-10 seconds.
    • In rare cases, the bounding boxes of the detected objects may not be shown on the camera image during the archive playback.
    • If the server was running for less than a minute and then restarted, the analytics objects detected within that minute are not shown in Desktop Client.
    • Incorrect plugin settings are shown in Desktop Client after changing the focus from a Text field to a Spin Box.
    • Device agent is re-created infinitely for a camera that fails to perform archive recording.
  • Installation on Nvidia Jetson / ARM64
    • download ARM/linux* packages
    • sudo apt update # Update packages on your hardware
    • sudo dpkg -i *.deb # install client and server and dependencies using shell
    • sudo apt install -f # Install the missing dependencies (if any)
    • reboot the hardware

In-Client Upgrade:

Build Number: 28947
Password: 144fvo

Download Links:

This is the latest available beta-version.
This version may be unstable. Please, do not install it without consultation with our support team.

6.0.0.38488 Video Management System
PUBLISHED 01 Apr 2024

Release Notes:

  • removed the support for the old `IPlugin` name will work starting with the current VMS version.
    • Server HTTP API:
      • In the functions `/ec2/getTransactionLog`, `/rest/v2/system/transactionLog`, `/rest/v3/system/transactionLog`, a new value `LowPriorityRegular` of the field `transactionType` has been added.
      • In the functions `/rest/v3/ldap/authenticate` and `/rest/v3/users`, a new field `parameters` has been added.
      • In the data structure of the functions `/rest/v3/webPages` and `/rest/v3/webPages/{id}`, added new fields `certificateCheck` and `proxyDomainAllowList`.
  • SDK CHANGES BREAKING PLUGIN COMPILATION:
    • The minimum required CMake version has been raised from 3.3.2 to 3.14.
    • nx_kit:
      • The functions in `debug.h` have been renamed/replaced: `fileBaseNameWithoutExt()` -> `srcFileBaseNameWithoutExt()`, `pathSeparator()` -> `nx::kit::utils::kPathSeparator`.
  • SDK CHANGES BREAKING PLUGIN BINARY COMPATIBILITY:
    • N/A
  • REST API BREAKING CHANGES:
      • The function `/webrtc-tracker` has been deprecated in favor of `/rest/v3/devices/{id}/webrtc`.
  • KNOWN ISSUES:
    • Errata in the Server API documentation:
      • In the documentation for the function `/ec2/bookmarks`, one of the parameters is erroneously called `Text-search`, while the actual parameter name is `filter`.
    • General:
      • Building sample plugins included with the Metadata SDK package with GCC 7.5 might fail on ARM devices. Newer GCC versions work fine.
    • Nx Cloud:
      • This release is not compatible with the current version of Nx Cloud.
    • Mobile Client:
      • Current version of Mobile Client is not compatible with this release.
    • Analytics:
      • When searching for an attribute that changes over time, the corresponding bounding box is shown only for the time periods when the attribute value corresponds to the search string. E.g., if we are searching for an object of the type “Car” that was moving with a certain value of the “Speed” text attribute (“60 kmph”, for example), the bounding box for the discovered “Car” object will be shown only for the moments when the value of the “Speed” text attribute was equal to “60 kmph”. No bounding box will be shown for the moments when the same “Car” object had the values of the “Speed” attribute different from "60 kmph".
      • It is impossible to modify DeviceAgent settings when the corresponding device is in Offline state (e.g. there’s currently no stream from the camera).

In-Client Upgrade:

Build Number: 38488
Password: t7f1er

Download Links:

6.0.0.38086 Video Management System
PUBLISHED 19 Jan 2024

Release Notes:

  • +++++++++++++++++++++++++++++++++++++
  • ++++++++++++ 6.0.0.38086 R3 ++++++++++++
  • +++++++++++++++++++++++++++++++++++++
  • Beta R3 release of Nx Meta VMS for the upcoming VMS 6.0.
  • For Metadata SDK usage instructions, see readme.md included within Metadata SDK zip.
  • ATTENTION: These Release Notes show changes relative to Nx Meta VMS 6.0.0.37711 R2.
  • NEW FEATURES:
    • N/A
  • IMPROVEMENTS:
    • Server SDKs:
      • nx_kit, IniConfig: .ini files now can have a so-called UTF-8 BOM (EF BB BF bytes) at the beginning, which is ignored.
      • Metadata SDK:
        • Stub Analytics Plugin: sub-plugin user-visible names (defined in IPlugin manifests) renamed to have commas instead of colons inside their names.
        • taxonomy_base_type_library.json: The RGB values of certain colors have been adjusted.
    • Web Integrations:
      • Javascript API: Added ability to show the context menu of Webpage integrations, see `setPreventDefaultContextMenu`
    • Server HTTP API:
      • A new parameter `_stripDefault` was added to all API functions; see the API documentation preamble for the details.
      • In the functions `/rest/v?/servers/*/info`, `/rest/v?/servers/{id}/info`, ``/ec2/discoveredServerChanged`, `/ec2/discoveredServersList`, and in the deprecated functions `/api/discoveredPeers` and `/api/pingSystem`: Added a new reply field `organizationId`.
      • In the functions `/rest/v?/system/setup`, `/rest/v?/system/cloudBind`: added a new optional parameter `organizationId`.
      • In the function `/ec2/analyticsLookupObjectTracks`, added a new parameter `maxAnalyticsDetailsMs`.
      • In the function for RTSP streaming (documented as `/{deviceId}`), added a new parameter `enable_analytics_objects`.
      • In the API documentation preamble, added the following information:
        • A note `ATTENTION FOR API INTEGRATIONS` about the proper usage of various API versions.
        • A section `## VMS API via...`.
      • In the response of the function `/rest/v?/system/merge`, added a field `warnings`.
      • In the response of the functions `/rest/v?/system/info` and `/rest/v?/system/other`, added fields `edgeServerCount`, `ldapSyncId` and `organizationId`.
      • In the function `/rest/v?/devices/{deviceId}/bookmarks/{id}`, added an optional `id` parameter.
      • Added new functions:
        • `/rest/v3/analytics/engines/{engineId}/deviceAgents`
        • `/rest/v3/analytics/integrations/*/requests`
        • `/rest/v3/analytics/integrations/*/requests/{requestId}/approve`
        • `/rest/v3/servers/{id}/nvrNetwork`
        • `/rest/v3/servers/{id}/scripts`
        • `/rest/v3/servers/{serverId}/pingDevices`
        • `/rest/v3/servers/{serverId}/testEmail`
        • `/rest/v3/system/cloud/sync`
        • `/rest/v3/system/cloud/sync/{service}`
      • In the functions `/rest/v3/devices` and `/rest/v3/devices/*/virtual`, added new fields: `compatibleAnalyticsEngineIds`, `mediaCapabilities`, `streamUrls`, `userEnabledAnalyticsEngineIds`.
      • In the function `/rest/v3/ldap/sync`, added a new response field `mode`.
    • Fixed errata in the Server HTTP API documentation:
      • In the function `/ec2/analyticsLookupObjectTracks`, documented the response structure.
      • In the response of all of the Analytics-related functions, removed the mentioning of a non-existing value `undefined` of the field `analyzedStreamIndex`.
      • In all the Event- and Action-related functions, and in the Transaction Bus transactions `saveEventRule #801`, `resetEventRules #803`, `broadcastAction #804`, fixed the list of enumeration values of the `eventState` and `toggleState` fields: they actually have the first letters capitalized.
      • In the functions `/rest/v?/devices`, `/rest/v?/devices/{id}`: in the `reply`, fixed capitalization of the enumeration values in the `deviceType` field.
      • In the function `/rest/v?/servers/*/p2pStats`, fixed the names of the values of the `peerType` field.
      • In the functions related to Event Rules, fixed capitalization of the values of the fields `toggleState` and `eventState`.
      • In the function `/rest/v?/servers/{id}/runtimeInfo`, fixed capitalization of the field `flags` inside `runtimeData`.
    • Transaction Bus:
      • Transaction `discoveredServerChanged #1301`: Added a new field `organizationId`.
  • SDK CHANGES BREAKING PLUGIN COMPILATION:
    • N/A
  • SDK CHANGES BREAKING PLUGIN BINARY COMPATIBILITY:
    • N/A
  • REST API BREAKING CHANGES:
    • For the following API breaking changes, see API Changelog for the details:
      • In the function `/webrtc-tracker/`, the *`position`* argument special values have been changed.
      • The following legacy API functions have been deprecated: `/api/nvrNetworkBlock`, `/rest/v3/servers/{id}/nvrNetwork`.
      • In the function `GET /{deviceId}`, changed the logic of deciding whether to include Analytics Objects into the stream.
      • In the functions `/rest/v?/devices/{deviceId}/bookmarks...`, removed the field `creationTimeMs`.
    • The following API breaking changes were introduced in 6.0 for the features not available before 6.0, so they do not appear in the API Changelog:
      • In the functions `/rest/v?/servers/*/info`, `/rest/v?/servers/{id}/info`, `/ec2/discoveredServerChanged`, `/ec2/discoveredServersList`, and in the deprecated functions `/api/discoveredPeers` and `/api/pingSystem`, the reply field `saasState` has one of its values renamed: `suspend` -> `suspended`.
      • In the response of the function `/rest/v?/system/info`, removed the field `ldapUri` which actually was considered proprietary but not marked as such in the documentation.
      • In the response of the functions `/rest/v3/devices/*/bookmarks`, `/rest/v3/devices/{deviceId}/bookmarks`, and `/rest/v3/devices/{deviceId}/bookmarks/{id}`, removed the field `serverId`, changing the format of the existing `id` field to `{bookmarkId}_{serverId}`.
      • In the functions `/rest/v3/ldap/authenticate`, `/rest/v3/userGroups/{id}/permissions`, and `/rest/v3/userGroups`, renamed a value of the `permissions` field: `systemHealth` -> `viewMetrics`.
      • Removed the function `/rest/v3/servers/*/eventLog`, and renamed `/rest/v3/servers/{serverId}/eventLog` -> `/rest/v3/servers/{serverId}/events`; changes many fields in the response.
      • Removed the function `/rest/v3/system/cloud/updateLicenses` in favor of newly added `/rest/v3/system/cloud/sync...`.
    • The following API breaking changes were introduced and erroneously not mentioned in the API Changelog:
      • The function `/webrtc-tracker` has been deprecated.
      • In the function `/rest/v3/system/metrics/rules`, removed the value `none` from the field `level` inside `alarms`, and the value `none` from the field `display`.
    • Transaction Bus:
      • Transactions `saveEventRule #801`, `resetEventRules #803`, `execAction #805`:
        • The value `showIntercomInformer` has been removed from the `actionType` field.
      • Transactions `discoveredServerChanged #1301`, `discoveredServersList #1302`:
        • The value of the `saasState` field has been renamed: `suspend` -> `suspended`.
  • KNOWN ISSUES:
    • General:
      • Building sample plugins included with the Metadata SDK package with GCC 7.5 might fail on ARM devices. Newer GCC versions work fine.
    • Nx Cloud:
      • This release is not compatible with the current version of Nx Cloud.
    • Mobile Client:
      • Current version of Mobile Client is not compatible with this release.
    • Analytics:
      • When searching for an attribute that changes over time, the corresponding bounding box is shown only for the time periods when the attribute value corresponds to the search string. E.g., if we are searching for an object of the type “Car” that was moving with a certain value of the “Speed” text attribute (“60 kmph”, for example), the bounding box for the discovered “Car” object will be shown only for the moments when the value of the “Speed” text attribute was equal to “60 kmph”. No bounding box will be shown for the moments when the same “Car” object had the values of the “Speed” attribute different from "60 kmph".
      • It is impossible to modify DeviceAgent settings when the corresponding device is in Offline state (e.g. there’s currently no stream from the camera).
    • Server HTTP API documentation:
      • Certain breaking changes were not shown in the API Changelog; see the REST API BREAKING CHANGES above for the details.

In-Client Upgrade:

Build Number: 38086
Password: t15o9a

Download Links:

6.0.0.37711 Video Management System
PUBLISHED 01 Nov 2023

Release Notes:

  • +++++++++++++++++++++++++++++++++++++
  • ++++++++++++ 6.0.0.37711 R2 ++++++++++++
  • +++++++++++++++++++++++++++++++++++++
  • Beta release of Nx Meta VMS for the upcoming VMS 6.0.
  • For Metadata SDK usage instructions, see readme.md included within Metadata SDK zip.
  • ATTENTION: These Release Notes show changes relative to Nx Meta VMS 6.0.0.37363 R1.
  • NEW FEATURES:
    • Server HTTP API:
      • Transaction Bus: Added a new transaction `getLayouts #600`.
      • In functions related to Events and Rules, added a new possible value for the `eventType` field: `ldapSyncIssueEvent`.
      • In function `{deviceId}`, added new parameters to the response: `imageDataFormat`, `imageDataSize`, `imageUrl`, `isImageDataPresent`.
      • In Server-related functions, added a new field `saasState`.
      • In response of the function `/rest/v1/system/merge`, added a new field `unmergedServers`.
      • In User-related functions, added a new field `attributes`.
      • In functions related to Web Pages, added a new field `parameters`.
      • In the function `/rest/v3/ldapSettings`, added a new field `responseTimeoutS`.
      • A new parameter `_strict` was added to all functions - it produces errors on unidentified parameters; otherwise they now generate Warning HTTP headers. See the API documentation main page (preamble) for the details.
      • A new ticket-based authentication mechanism has been introduced - see the new API function `/rest/v3/login/tickets` and the API documentation main page (preamble) for the details.
      • In the function `/jsonrpc`, batch mode has been introduced - see this function documentation and the API documentation main page (preamble) for the details.
      • Transaction Bus has been deprecated in favor of the new feature in the function `/jsonrpc` - subscribing to object changes; see this function documentation and the API documentation main page (preamble) for the details.
    • Server SDKs:
      • In the `nx_kit` library, `utils.cpp`, added a new function `toUpper()`.
      • In `nx::sdk::IUtilityProvider`, added a new method `sendHttpRequest()` which allows to ask the Server to send an HTTP request to some HTTP server. See a usage example in Stub Analytics Plugin, `http_requests` sub-plugin.
  • IMPROVEMENTS:
    • Server SDKs:
      • Metadata SDK:
        • Sample Analytics Plugin: Migrated to compressed frames instead of uncompressed frames to improve performance.
        • Added documentation for the previously undocumented capability in the manifest of an Analytics Engine: `needBestShotImage`; see `src/nx/sdk/analytics/manifests.md` for the details.
      • Cloud Storage SDK:
      • In the class `AttributeSearchCondition`, added properties `matchesFromStart` and `matchesTillEnd`.
    • Server HTTP API:
      • Fixed errata in the API documentation:
        • In Device-related API functions, the set of values of the `backupQuality` field was shown incorrectly - the values actually do not include underscores.
        • In Resource-related API functions, the set of values of the `status` field was shown incorrectly.
        • In the functions `/media/` and `/{deviceId}`, the `stream` field was incorrectly shown as enum, while actually it is integer.
        • In the function `/rest/v{1-}/login/sessions/{token}`, the `token` param actually can have the value `current`.
        • In the functions working with Device Advanced Manifest, the set of values for the params `groups.params.dependencies.type` and `groups.params.dependencies.conditions.type` has been shown incorrectly.
        • In the function `/rest/v{2-}/devices/{id}/image`, the set of values for the param `roundMethod` was shown incorrectly.
        • In the System-related functions, a new param `ldapUri` has been added, which is actually proprietary but not marked as such.
        • In the function `/rest/v2/servers/*/logSettings`, the fields `id` and `directory` must not be shown.
        • In the functions related to the Server User Attributes, the sub-field `value` of the field `backupBitrateBytesPerSecond` is actually a JSON string, but was shown as integer.
      • Fixed undesired breaking changes in the previous Meta release (R1):
        • In functions related to User Roles, re-installed previously removed fields `parentGroupId` and `parentGroupIds`.
        • In all functions involving the Server Flags, re-installed the `flag` field value `SF_IfListCtrl`, which was incorrectly renamed to `SF_deprecated_IfListCtrl`.
  • SDK CHANGES BREAKING PLUGIN COMPILATION:
    • N/A
  • SDK CHANGES BREAKING PLUGIN BINARY COMPATIBILITY:
    • N/A
  • REST API BREAKING CHANGES:
    • For the following API breaking changes, see API Changelog for the details:
      • A number of deprecated API functions now require a fresh authorization session -
      • Some of the deprecated API functions are considered insecure and are disabled by default - see API Changelog for the details.
      • In the function `POST /api/testEmailSettings`, the possible values of the `connectionType` field have been changed.
    • Some breaking changes were introduced, but are erroneously not mentioned in the API Changelog:
      • In the function `/webrtc-tracker/`, the default value of the `position` field has changed from 0 to -1.
  • KNOWN ISSUES:
    • Server HTTP API:
      • In certain `POST` functions which create entities that have an `id` field, it is erroneously made possible to specify a value for this `id` field, and this value actually becomes the id of the newly created entity. This is going to be fixed in next releases.
    • Errara in the Server HTTP API documentation:
      • The function `/ec2/transactionBus/http` is now deprecated but remains in the Legacy section.
      • The function `/ec2/transactionBus/websocket` is now deprecated but remains in the Legacy section.
      • Errata in API Changelog:
        • The function `/ec2/transactionBus/http` is now deprecated, but this is not shown in API Changelog.
        • The function `/ec2/transactionBus/websocket` is now deprecated, but this is not shown in API Changelog.
        • Certain API breaking changes are missing - see their list in the "REST API BREAKING CHANGES" section of these Release Notes.
    • Nx Cloud:
      • This release is not compatible with the current version of Nx Cloud.
    • Mobile Client:
      • Current version of Mobile Client is not compatible with this release.
    • Analytics:
      • When searching for an attribute that changes over time, the corresponding bounding box is shown only for the time periods when the attribute value corresponds to the search string. E.g., if we are searching for an object of the type “Car” that was moving with a certain value of the “Speed” text attribute (“60 kmph”, for example), the bounding box for the discovered “Car” object will be shown only for the moments when the value of the “Speed” text attribute was equal to “60 kmph”. No bounding box will be shown for the moments when the same “Car” object had the values of the “Speed” attribute different from "60 kmph".
      • It is impossible to modify DeviceAgent settings when the corresponding device is in Offline state (e.g. there’s currently no stream from the camera).

In-Client Upgrade:

Build Number: 37711
Password: 9w0zpg

Download Links:

6.0.0.37363 Video Management System
PUBLISHED 17 Aug 2023

Release Notes:

  • +++++++++++++++++++++++++++++++++++++
  • ++++++++++++ 6.0.0.37363 R1 ++++++++++++
  • +++++++++++++++++++++++++++++++++++++
  • Beta release of Nx Meta VMS for the upcoming VMS 6.0.
  • For Metadata SDK usage instructions, see readme.md included within Metadata SDK zip.
  • ATTENTION: These Release Notes show changes relative to Nx Meta VMS 5.1.0.37133 R6.
  • NEW FEATURES:
    • Server HTTP API:
      • Introduced the new version of the CRUD API - v3 (`/rest/v3`), which in most cases duplicates and extends `/rest/v2`. It is recommended to use `/rest/v3` only, unless you need to support 5.1 Systems, because `/rest/v2` will be removed in some future version. Please note that some `/rest/v2` functions are incompatible with their `/rest/v3` versions.
      • In the `/rest/v1` and `/rest/v2` functions `login/users`, `login/users/{username}`, `users` and `users/{id}`, added a new value `temporaryLocal` to the `type` field.
      • In the functions `/rest/v2/servers/*/runtimeInfo` and `/rest/v2/servers/{id}/runtimeInfo`, added a new value `masterLdapSync` for the `flags` field.
      • Server HTTP API documentation:
        • Added the documentation for the Transaction Bus - see the new section named "Transaction Bus" in the API documentation main page (preamble), and the new section in the API function tree with the same name.
    • Web Pages & Integrations:
      • We've introduced a new resource type called "Integrations," which come with the Client JavaScript API enabled by default. To add a new integration, simply click the main menu in the top left corner, then select "Add" followed by "Integration."
      • Web pages that are accessed through plugin settings can now be proxied via the server. For more details, please refer to the relevant section in the "Improvements - Server SDKs" within these release notes.
  • IMPROVEMENTS:
    • Server SDKs:
      • A new field `isLicenseRequired` added to the Plugin manifest.
      • When a Plugin responds to Actions with an URL, added the possibility to use a proxy and a device authentication. See `nx::sdk::IActionResponse`, new methods `useProxy()` and `useDeviceAuthentication()`, and `nx::sdk::IAction::Result`, new fields `useProxy` and `useDeviceCredentials`.
      • In `nx::sdk::ErrorCode`, added new values `ioError` and `noData`.
      • Added support for Cloud authentication for Plugins: in `nx::sdk::IUtilityProvider`, added new methods `cloudSystemId()` and `cloudAuthKey()`.
      • Metadata SDK:
        • For the settings of type `GroupBox`, added a new attribute `style`. See `settings_model.md` for the details.
        • In the Taxonomy definition (manifest field `typeLibrary`), added new syntax simplification features: "Extended Object Types", "Attribute Lists", and the `condition` fields for Attributes. See `taxonomy.md` for the details.
        • Fixed errata in `taxonomy.md`: the manifest field `typeLibrary` was erroneously described as having a field `eventGroups`, while this field is actually called `groups`.
    • Server HTTP API:
      • Legacy API:
        • For the functions `/ec2/fullInfo`, `/ec2/saveLayout`, `/ec2/saveLayouts`, `/rest/v1/layouts`, `/rest/v2/layouts`, added a new field `displayHotspots`.
        • In the functions `/ec2/notifyAnalyticsEngineActiveSettingChanged` and `/ec2/notifyDeviceAnalyticsActiveSettingChanged`, added the fields `useProxy` and `useDeviceCredentials` to the response.
        • In the experimental function `/webrtc-tracker`, the field `stream` can now be omitted.
      • v1 and v2 API (/rest/v1/... and /rest/v2/...):
        • In the functions `devices/*/bookmarks`, `devices/{deviceId}/bookmarks`, `devices/{deviceId}/bookmarks/{id}`, added a new parameter `centralTimePointMs`.
        • Added a new function `devices/*/footage`.
        • In the functions `devices/*/status` and `devices/{id}/status`, added a new response field `stream`.
        • In the functions `login/sessions`, `login/sessions/{token}`, `login/users`, and `login/users/{username}`, added a new response field `id`.
        • In the functions `servers` and `servers/{id}`, added a new response field `locationId`.
        • In all functions involving the Server Flags, removed the value `SF_timeCtrl` from the possible set of values of the `flags` field.
      • v2 API:
        • Added a new function `/rest/v2/experimental/cameras`.
        • Added new functions `/rest/v2/servers/{serverId}/remoteArchive/*/sync` and `/rest/v2/servers/{serverId}/remoteArchive/{deviceId}/sync`.
      • Fixed errata in the API documentation:
        • In the documentation for the functions `/rest/v2/servers/{id}/rebuildArchive` and `/rest/v2/servers/{id}/rebuildArchive/{location}`, added the missing structure of the POST request body.
  • SDK CHANGES BREAKING PLUGIN COMPILATION:
    • Raised the minimum required Visual Studio version from 2017 to 2019.
    • Video Source SDK examples that rely on Qt now require Qt6 instead of Qt5.
  • SDK CHANGES BREAKING PLUGIN BINARY COMPATIBILITY: N/A
  • REST API BREAKING CHANGES:
    • ATTENTION: From now on, the changes to proprietary API functions will not be tracked in API Changelog and Release Notes.
    • In the functions `POST /rest/v1/users`, `POST /rest/v2/users`, and `POST /ec2/saveUser`, the `ldap` value of the `type` field is forbidden. See API Changelog for the details.
    • Removed the functions `/rest/v2/update/status/clientPackages`, `/api/testLdapSettings`, `/api/mergeLdapUsers`. See API Changelog for the details.
    • In all functions involving the Server Flags, the `flag` field value `SF_IfListCtrl` was renamed to `SF_deprecated_IfListCtrl`, which is actually a mistake and will be rolled back in the nearest future.
    • Some breaking changes were introduced, but are erroneously not mentioned in the API Changelog:
      • The functions `/ec2/getVmsRules`, `/ec2/removeVmsRule`, and `/ec2/saveVmsRule` were made both deprecated and proprietary (without prior deprecation in some previous release), and have breaking changes.
      • In all functions involving the Server Flags, the `flag` field value `SF_OwnerApiForAdmins` was renamed to `SF_AdminApiForPowerUsers`.
      • In the function `/ec2/getFullInfo`:
        • Removed the field `accessRights` from the response, renamed the field `layoutTours` to `showreels`; renamed the field `userRoles` to `userGroups` while significantly changing its sub-fields and the sub-fields of the fields `users`, `vmsRules`, and `eventList`.
        • The field `schedule` has changed its JSON type: it was a JSON-formatted string, now is a JSON object.
      • In the function `/api/testEmailSettings`, renamed the values of the field `connectionType`.
      • In the functions `/rest/v1/devices//searches`, `/rest/v1/devices/*/searches/{id}`, `/rest/v2/devices/*/searches`, and `/rest/v2/devices//searches/{id}`, added a new field `wasAlreadyFound` which is required on POST.
      • In the function `/rest/v1/login/sessions/{token}`, the special value of the `token` parameter has changed from `current` to `-`.
      • In the `/rest/v1` and `/rest/v2` functions `login/users`, `login/users/{username}`, `users` and `users/{id}`, added a new value `temporaryLocal` to the `type` field.
      • In the `/rest/v1` and `/rest/v2` functions `userRoles` and `userRoles/{id}`, removed the field `parentGroupIds`.
      • In the function `/rest/v2/devices/{id}/image`, the field `timestampUs` was renamed to `timestampMs`, changing the measurement unit of its value.
      • Removed the experimental function `/rest/v2/exp_userGroups`.
      • In the functions `/rest/v2/servers/*/runtimeInfo` and `/rest/v2/servers/{id}/runtimeInfo`, added a new value `masterLdapSync` for the `flags` field.
      • In the function `/rest/v2/system/databaseData`, the sub-fields of the response fields `users`, `userRoles`, `accessRights`, `layouts`, `vmsRules`, and `layoutTours` were changed significantly.
  • KNOWN ISSUES:
    • Undesired breaking changes in HTTP API - will be fixed in next releases:
      • In the functions `/rest/v1/devices//searches`, `/rest/v1/devices/*/searches/{id}`, `/rest/v2/devices/*/searches`, and `/rest/v2/devices//searches/{id}`, added a new field `wasAlreadyFound` which is required on POST.
      • In the `/rest/v1` and `/rest/v2` functions `userRoles` and `userRoles/{id}`, removed the field `parentGroupIds`.
      • In the function `/rest/v2/devices/{id}/image`, the field `timestampUs` was renamed to `timestampMs`, changing the measurement unit of its value.
    • Errara in the Server HTTP API documentation:
      • In the documentation for functions `/api/storageSpace` and `/api/storageStatus`, the `reply` field of the response is documented as an empty object, while it actually contains structured data.
      • The following functions of the Legacy API were deprecated, but still show up in the "v1", "v2", and "v3" API versions (selected in the drop-down list above the function tree) instead of the "Deprecated" one: `/api/getEvents`, `/api/getTimeZones`, `/api/pluginInfo`, `/api/synchronizedTime`.
      • Errata in API Changelog:
        • In the section `## VMS 6.0 relative to 5.1`, the difference of the newly introduced v3 API from the previously existing v2 API is erroneously described in the `### Breaking compatibility` subsection instead of the `### Retaining compatibility until expired` one.
      • Certain API breaking changes are missing - see their list in the "REST API BREAKING CHANGES" section of these Release Notes.
    • Mobile Client:
      • Video playback might not work in Mobile Client.
    • Desktop Client:
      • Sometimes Desktop Client fails to fetch the Best Shot of a track leading to showing “No Data” placeholder instead of the image in the thumbnails of the corresponding analytics tracks.
    • Sample Analytics plugins:
      • Stub: Taxonomy Features: Some of the object filters do not work.
      • Sample: In rare cases the thumbnail for the object track might appear in the Desktop Client’s Right Panel with a significant delay.
    • In Rest API, there is a bug: for POST functions, it is possible to specify the "id" field, and this "id" will be used for the newly created object. Instead, an error must be produced.
    • In Rest API, certain functions were not only made proprietary, but also renamed, not reflecting this renaming in API Changelog:
      • `/ec2/getLayoutTours` -> `/ec2/getShowreels`
      • `/ec2/saveUserRole` -> `/ec2/saveUserGroup`
      • `/ec2/removeUserRole` -> `/ec2/removeUserGroup`

In-Client Upgrade:

Build Number: 37363
Password: 5jfjj1

Download Links:

5.1.0.36751 Video Management System
PUBLISHED 17 Apr 2023

Release Notes:

  • +++++++++++++++++++++++++++++++++++++
  • ++++++++++++ 5.1.0.36751 R4 ++++++++++++
  • +++++++++++++++++++++++++++++++++++++
  • The release of Nx Meta VMS corresponding to the Powered-by-Nx VMS Release Candidate.
  • For Metadata SDK usage instructions, see readme.md included within Metadata SDK zip.
  • ATTENTION: These Release Notes show changes relative to Nx Meta VMS 5.1.0.36161 R3.
  • NEW FEATURES:
    • Server HTTP API:
      • Added an experimental (treated as beta) function `/webrtc-tracker`.
  • IMPROVEMENTS:
    • Metadata SDK:
      • Added syntax explanation of nested Object Attributes to `taxonomy.md`.
      • In `readme.md`, build environment components’ versions are raised:
        • CMake: 3.3.2,
        • GCC: 5.4 -> 7.5
        • Visual Studio: 2015 -> 2017
        • Ubuntu Linux: 16.04/18.04/20.04 -> 18.04/20.04/22.04.
    • Storage SDK, Video Source SDK:
      • Raised C++, GCC, Visual Studio and CMake versions to the same values as Metadata SDK.
    • Server HTTP API:
      • Renamed the `LEGACY` API flavor to `LEGACY & BETA`, because it now contains some new experimental features as well.
      • In the preamble (see the API Documentation page in Server Web Admin), clarified the API versioning scheme.
      • In the functions `/rest/v2/servers`, `/rest/v2/servers/{id}`, `/rest/v1/servers`, and `/rest/v1/servers/{id}`, removed the parameter `metadataStorageId`.
      • In the response of the functions `/rest/v2/servers/{id}/logSettings` and `/rest/v2/servers/*/logSettings`, added a new parameter `archivingEnabled`.
      • Added new functions `/rest/v2/devices//types` and `/rest/v1/devices//types`.
      • In the functions `/api/manualCamera/...`, added a new parameter `mac` to the list of camera properties.
      • In the response of the functions `/ec2/notifyAnalyticsEngineActiveSettingChanged` and `/ec2/notifyDeviceAnalyticsActiveSettingChanged`, added new parameters `actionUrl` and `messageToUser`.
      • In the function `/ec2/analyticsLookupObjectTracks`, removed the parameter `withBestShotOnly`.
  • SDK CHANGES BREAKING PLUGIN COMPILATION:
    • Metadata SDK and Video Source SDK:
      • The smart pointer mechanism `nx::sdk::Ptr` (`nx/sdk/ptr.h`) now utilizes C++17 features, and the function `toPtr` has been removed in favor of the new `Ptr` constructor. So, instead of `toPtr(obj)` just write `Ptr(obj)`.
  • SDK CHANGES BREAKING PLUGIN BINARY COMPATIBILITY:
  • N/A
  • REST API BREAKING CHANGES:
    • In all API v2 functions, consistently renamed the term Layout Tour to Showreel.
      • NOTE: This change is not reflected in the API Changelog because this API version has been introduced in 5.1.
  • KNOWN ISSUES:
    • General:
      • Building sample plugins included with the Metadata SDK package with GCC 7.5 might fail on ARM devices.
    • Analytics:
      • When searching for an attribute that changes over time, the corresponding bounding box is shown only for the time periods when the attribute value corresponds to the search string. E.g., if we are searching for an object of the type “Car” that was moving with a certain value of the “Speed” text attribute (“60 kmph”, for example), the bounding box for the discovered “Car” object will be shown only for the moments when the value of the “Speed” text attribute was equal to “60 kmph”. No bounding box will be shown for the moments when the same “Car” object had the values of the “Speed” attribute different from "60 kmph".
      • It is impossible to modify DeviceAgent settings when the corresponding device is in Offline state (e.g. there’s currently no stream from the camera).
    • Stub: Object Streamer sample plugin: The Device Agent does not produce the metadata stream from Object stream file (example of such file can be found in stub_analytics_plugin/stream.json). Enabling the Device Agent results in “Serious issues in the object stream:... Track id of some items in the Object stream is not a valid UUID” Plugin Diagnostic Event.

In-Client Upgrade:

Build Number: 36751
Password: tcuqiz

Download Links:

5.1.0.36161 Video Management System
PUBLISHED 30 Dec 2022

Release Notes:

  • The release of Nx Meta VMS 5.1.0.36161 R3 corresponding to Powered-by-Nx VMS beta v.5.1.0.36160/36162/36163.
  • For Metadata SDK usage instructions, see readme.md included within Metadata SDK zip.
  • ATTENTION: These Release Notes show changes relative to Nx Meta VMS 5.1.0.35837 R2.
  • NEW FEATURES:
    • Server HTTP API:
      • Added functions `/rest/v1/system/cleanupTaxonomy`, `/rest/v2/system/cleanupTaxonomy`.
      • Added a function `/rest/v2/servers/{serverId}/backupPositions/{deviceId}/reset`.
      • Added a function `/rest/v2/layouts/{layoutId}/items`, `/rest/v2/layouts/{layoutId}/items/{id}`.
  • IMPROVEMENTS:
    • SDKs, nx_kit: Introduced a mutex in `NX_PRINT` and `NX_OUTPUT` to avoid race conditions while building the prefix with the file name. This may slow down the performance of these macros.
    • Metadata SDK:
      • Added clarification to `settings_model.md` that the Active Setting feature does not work when the settings GUI is presented to the user but the responding entity (e.g. a Device Agent) is not created yet - there is simply no-one to receive the callback.
      • Stub Analytics Plugin, Object Streamer: added JSON script options `bestShots` and `trackIdPolicy`.
      • Taxonomy: In `src/nx/sdk/analytics/taxonomy.md`, clarified the GUI behavior when several types inherited from the same base type override the same Attribute and declare it as a supported one.
    • Server HTTP API:
      • In the functions `/rest/v1/servers/{id}/info`, `/rest/v2/servers/{id}/info`, `/rest/v1/servers//info`, and `/rest/v2/servers//info`, added an optional parameter `onlyFreshInfo`, and a response field `collectedByThisServer`.
      • Added an optional parameter `userAgent` to the following functions:
        • `/rest/v1/system/setup`, `/rest/v2/system/setup` - as an inner parameter to the parameters `local` and `cloud`.
        • `/rest/v1/system/cloudBind`, `/rest/v2/system/cloudBind`.
        • `/rest/v1/system/cloudUnbind`, `/rest/v2/system/cloudUnbind`.
      • Fixed errata in the API Changelog (the actual behavior was not changed) in 5.1 relative to 5.0:
        • The `osInfo` field has actually been removed from the responses of some more functions, all now listed in the API Changelog.
        • The fields *~~`minArchiveDays`~~** and **~~`maxArchiveDays`~~* have actually been changed in one more API function: `rest/v1/devices`.
      • A number of the Legacy API functions have been deprecated in favor of the corresponding new CRUD API functions; see their list in API Changelog.
      • The HTTP Digest related API functions have been deprecated; see their list in API Changelog.
      • The Nx1-related functions were removed; see their list in API Changelog.
      • Fixed errata in the API documentation (the actual behavior was not changed):
        • The set of values of the `flags` field of many functions working with Server records was incorrectly shown as including the following values, actually unsupported: `SF_Obsolete_AutoSystemName`, `SF_Obsolete_Has_HDD`, `SF_Obsolete_RequiresEdgeLicense`, `SF_P2pSyncDone`.
      • In the function `/rest/v2/devices/*/bookmarks`, added a new parameter `deviceId`.
  • SDK CHANGES BREAKING PLUGIN COMPILATION:
    • Metadata SDK:
      • Raised C++ version from 14 to 17, required compiler versions of GCC from 5.4 to 7.5, and Visual Studio from 2015 to 2017. For now, the new language features are used only in one place in `i_plugin.h` to make sure the new compiler is used. In the next release, more C++17 features are planned be used in the SDK and its samples.
        • ATTENTION: These changes have not been reflected in the `readme.md` - will be fixed in the next Meta VMS release.
        • NOTE: Other SDKs (Storage SDK and Video Source SDK) are planned to have the same C++ version raise in the next Meta VMS release.
      • Renamed `activeSettingId()` to `activeSettingName()` in `nx::sdk::IActiveSettingChangedAction` and in the respective helper class `ActiveSettingChangedAction`.
  • SDK CHANGES BREAKING PLUGIN BINARY COMPATIBILITY: N/A
  • REST API BREAKING CHANGES:
    • In the functions `/ec2/notifyAnalyticsEngineActiveSettingChanged` and `/ec2/notifyDeviceAnalyticsActiveSettingChanged`, renamed the parameter `activeSettingId` to `activeSettingName`.
      • NOTE: This change is not reflected in the API Changelog because these functions have been introduced in 5.1.
  • KNOWN ISSUES:
    • General:
      • In rare cases the “Setup new system” pop-up window might be empty in the Desktop Client. New system can still be set via Web browser or API request.
      • In rare cases during the installation of the Mediaserver on ARM32 or ARM64 device console output might hang resulting in never exiting the installation process. Exiting via Ctrl+C fixes the issue.
      • Building sample plugins included with the Metadata SDK package with GCC 7.5 might fail on ARM devices.
    • Mobile Client:
      • Video playback might not work in Mobile Client.
    • Analytics:
      • When searching for an attribute that changes over time, the corresponding bounding box is shown only for the time periods when the attribute value corresponds to the search string. E.g., if we are searching for an object of the type “Car” that was moving with a certain value of the “Speed” text attribute (“60 kmph”, for example), the bounding box for the discovered “Car” object will be shown only for the moments when the value of the “Speed” text attribute was equal to “60 kmph”. No bounding box will be shown for the moments when the same “Car” object had the values of the “Speed” attribute different from "60 kmph".
      • It is impossible to modify DeviceAgent settings when the corresponding device is in Offline state (e.g. there’s currently no stream from the camera).
    • Errata in the Server HTTP API documentation:
      • In the response of the function `GET /{deviceId}`, the detailed description of the `attributes` field is missing - planned to be restored in the next Meta VMS release.

In-Client Upgrade:

Build Number: 36161
Password: ptnzep

Download Links:

5.1.0.35837 Video Management System
PUBLISHED 04 Nov 2022

Release Notes:

  • The maintenance R2 release of Nx Meta VMS for the upcoming VMS 5.1.
  • For Metadata SDK usage instructions, see readme.md included within Metadata SDK zip.
  • ATTENTION: These Release Notes show changes relative to Nx Meta VMS 5.1.0.35151 R1.
  • NEW FEATURES:
    • Ubuntu 22.04 is now supported by the VMS.
    • Server HTTP API:
      • In the function `/{deviceId}` (RTSP streaming), a new parameter has been introduced: `acodec`.
      • In the functions `/rest/v1/system/setup` and `/rest/v2/system/setup`, added a new parameter `settingsPreset`.
      • In the response of functions `/rest/v2/servers/{id}/staticWebContent` and `/rest/v2/servers/{id}/staticWebContent/upload`, added a new field `details`.
      • Added the following new functions:
        • `/rest/v2/servers/{id}/recordingStatistics`
        • `/rest/v2/servers/*/recordingStatistics`
        • `/rest/v2/servers/{id}/settingsManifest`
        • `/rest/v2/servers/*/settingsManifest`
        • `/rest/v2/servers/{id}/storageForecast`
        • `/rest/v2/servers/*/storageForecast`
        • `/rest/v2/servers/{id}/rebuildArchive`
        • `/rest/v2/servers/*/rebuildArchive`
        • `/rest/v2/servers/{id}/rebuildArchive/{location}`
        • `/rest/v2/servers/*/rebuildArchive/{location}`
        • `/rest/v2/devices/{id}/image`
      • In the function `GET /ec2/transactionBus/http`, added a new parameter `noInitialData`.
      • In the function `/media/{deviceId}.{format}`, added a new parameter `download`.
  • IMPROVEMENTS:
    • SDKs: Updated `dynamic_libraries.md` with a more detailed description of issues with dynamic and static linking of libstdc++, and related recommendations.
    • Video Source SDK: Fixed potential memory corruption when copying `struct CameraInfo`.
    • Fixed errata in the Server HTTP API documentation (not changing the API behavior):
      • Fields denoting time periods (usually called like `startTimeMs`, and having a suffix like `S, `Ms`, or `Us`) were incorrectly listed in the function responses as having the type `string`, while they are actually `integer`. As for the input parameters, both `integer` and `string` types are accepted.
      • In the functions `/ec2/getEvents` and `/ec2/getEventRules` the field `eventCondition` was declared as `object`, while it actually is a `string` containing a JSON document.
      • In the function `/rest/v1/devices/*/bookmarks`, removed the parameters `id` and `deviceId`.
      • In the function `/rest/v1/devices/{deviceId}/bookmarks`, removed the parameter `id`.
      • The General Information section updated to properly reflect the recently introduced `v2` API.
      • In the function `/jsonrpc`, added a missing parameter and response field `jsonrpc`.
      • In the function `/rest/v2/servers/{id}/staticWebContent/upload`, added a missing param `id`.
    • Server HTTP API:
      • The deprecated API function `POST /api/rebuildArchive` is considered insecure, but is enabled by default because it is used in Nx products. It is recommended to use the new API function instead. This API function can be manually disabled for testing purposes by changing `insecureDeprecatedApiInUseEnabled` in System settings (see `/rest/v2/system/settings`) or in Advanced System Settings of the Web Admin.
      • The fields `minArchiveDays` and `maxArchiveDays` have been deprecated in favor of the new fields `minArchivePeriodS` and `maxArchivePeriodS` respectively, in the functions `ec2/saveCameraUserAttributes`, `ec2/getCameraUserAttributes`, `ec2/getCamerasEx`. See API Changelog for the details.
      • In the functions dealing with Bookmarks, from the set of values for the `column` parameter, the value `cameraThenStartTime` has been deleted - it did not work anyway. The following functions are affected:
        • `/rest/v1/devices/{deviceId}/bookmarks/{id}`
        • `/rest/v2/devices/{deviceId}/bookmarks/{id}`
        • `/rest/v1/devices/*/bookmarks`
        • `/rest/v1/devices/{deviceId}/bookmarks`
      • The function `GET /api/createEvent` is now available again - previously, it had been disabled for security reasons. So, its availability is not controlled anymore by the System setting `insecureDeprecatedApiInUseEnabled`.
      • In the response of the functions `/ec2/getCameraUserAttributesList` and `/ec2/getCamerasEx`, deleted the field `licenseUsed`; see the API Changelog for the details.
      • The function `/ec2/getSettings` has been deprecated in favor of `/rest/v1/systemSettings`; see the API Changelog for the details.
      • Added the parameter `_language` to many more `GET` functions.
      • Introduced a new common parameter `_pretty` for many `GET` functions; see the General Information section for the details.
    • Metadata SDK:
      • In Plugin settings, the flag `isActive` is now supported also for the following setting types: `TextField`, `PasswordField`, `SpinBox`, `DoubleSpinBox`.
      • Stub Analytics Plugin: in certain sub-plugins, the verbosity of the console logging is now controlled by the `enableOutput` setting in the sub-plugin's `.ini` file - previously, the logging was verbose all the time. The affected sub-plugins are:
        • `best_shots`
        • `object_detection`
        • `object_streamer`
        • `taxonomy_features`
  • SDK CHANGES BREAKING PLUGIN COMPILATION:
    • N/A
  • SDK CHANGES BREAKING PLUGIN BINARY COMPATIBILITY:
    • N/A
  • REST API BREAKING CHANGES:
    • Fixed an undesired breaking change which had been introduced in the previous Meta release 5.1.0 R1: in the response of the function `/api/getCameraParamManifest`, the field `unique_id` was renamed to `deviceId`; now it is restored.
    • In functions that deal with the Server records, the set of values for the field `flags` has been changed as follows:
      • Added a new flag `SF_OwnerApiForAdmins`.
      • The flags `SD_Has_HDD` and `SF_RequiresEdgeLicense` are now deprecated: they are accepted and ignored by the Clients, and never produced by the Server.
      • There is an errata in the API documentation: among the values, it incorrectly shows `SD_Obsolete_Has_HDD`, `SF_Obsolete_RequiresEdgeLicense` and `SF_Obsolete_AutoSystemName` - these names must be removed from the API documentation.
    • Certain fields have been removed from the responses of certain functions.
      • The functions affected are:
        • `rest/v1/servers/{id}/info`
        • `/rest/v1/servers/*/info`
        • `/api/moduleInformationAuthenticated`
        • `/ec2/discoveredServerChanged`
        • `/ec2/discoveredServersList`
        • `/api/discoveredPeers`
        • `/api/pingSystem`
        • `api/moduleInformation`
      • NOTE: The API Changelog does not mention all these functions; this is an errata in the API Changelog and is planned to be fixed in the next release.
      • The field that existed in 5.0 and was removed:
        • `osInfo`
      • The fields that were introduced in a previous 5.1 Meta Release and were removed, thus not reflected in the API Changelog:
        • `hardwareIds`
        • `osTimeMs`
        • `timeZoneOffsetMs`
        • `timeZoneId`
    • The following functions have been deprecated in favor of their new counterparts; see API Changelog for the details:
      • `/api/recStats` -> `/rest/v2/servers/{id}/recordingStatistics`
      • `/api/cookieLogin` -> `/rest/v2/login/sessions`
      • `/api/cookieLogout` -> `/rest/v2/login/sessions/{token}`
      • `/api/getCurrentUser` -> `/rest/v2/login/sessions/{token}`
      • `/api/getHardwareIds` -> `/rest/v2/servers/{id}/info`
      • `/ec2/getHardwareIdsOfServers` -> `/rest/v2/servers/*/info`
      • `/api/getTime` -> `/rest/v2/servers/{id}/info`
      • `/ec2/getTimeOfServers` -> `/rest/v2/servers/*/info`
      • `/api/configure` -> `/rest/v2/servers/{id}/info`
      • `/api/getCameraParamManifest` -> `/rest/v2/devices/{id}/advanced/*/manifest`
      • `/api/getCameraParam` -> `/rest/v2/devices/{deviceId}/advanced/{id}`
      • `/api/setCameraParam` -> `/rest/v2/devices/{deviceId}/advanced/{id}`
      • `/api/iniConfig` -> `/rest/v2/servers/{id}/iniConfig`
      • `/api/p2pStats` -> `/rest/v2/servers/{id}/p2pStats`
      • `/api/activateLicense` -> `/rest/v2/licenses/{key}`
      • `/api/showLog` -> `/rest/v2/servers/{id}/logArchive`
      • `/api/logLevel` -> `/rest/v2/servers/{id}/logSettings`
      • `/api/metrics` -> `/rest/v2/system/metrics/values`
      • `/ec2/metrics/values` -> `/rest/v2/system/metrics/values`
      • `/ec2/metrics/manifest` -> `/rest/v2/system/metrics/manifest`
      • `/ec2/metrics/alarms` -> `/rest/v2/system/metrics/alarms`
      • `/ec2/metrics/rules` -> `/rest/v2/system/metrics/rules`
      • `/ec2/cameraThumbnail` -> `/rest/v2/devices/{id}/image`
      • `/ec2/activeConnections` -> `/rest/v2/servers/{id}/p2pStats`
      • `/api/rebuildArchive` -> `/rest/v2/servers/{id}/rebuildArchive`
    • In the functions `/rest/v2/servers/{id}/info` and `/rest/v2/servers/{id}/runtimeInfo`, the fields of the Server record have been re-structured.
      • NOTE: This is not reflected in the API Changelog because the `v2` API has been just introduced in 5.1.
    • The following breaking changes were introduced to the `v2` functions (introduced in 5.1), keeping their `v1` counterparts intact, thus not reflected in the API Changelog:
      • In the functions `/rest/v2/devices//searches` and `/rest/v2/devices//searches/{id}`, grouped the parameters and response fields `ip`, `startIp`, and `endIp` into a new parameter/field `target`.
      • In the function `/rest/v2/devices//advanced//manifest`, removed the parameter `id`.
      • In the response of the function `/rest/v2/devices/{id}/advanced/*/manifest`, renamed the field `deviceId` to `pluginUniqueId`.
      • In the function `/rest/v2/devices//advanced//manifest`:
        • Renamed the field `deviceId` to `pluginUniqueId`.
        • Changed the response structure from the list (JSON array) to a map (JSON object).
    • In the function `/rest/v2/servers/*/logSettings`, added the parameter `directory` to the method `PUT` and removed it from the method `PATCH`.
  • KNOWN ISSUES:
    • General:
      • “Setup new system” pop-up window might be empty in the Desktop Client. New system can still be set via Web browser or API request.
    • Mobile Client:
      • Video playback might not work in Mobile Client.
    • Analytics:
      • When searching for an attribute that changes over time, the corresponding bounding box is shown only for the time periods when the attribute value corresponds to the search string. E.g., if we are searching for an object of the type “Car” that was moving with a certain value of the “Speed” text attribute (“60 kmph”, for example), the bounding box for the discovered “Car” object will be shown only for the moments when the value of the “Speed” text attribute was equal to “60 kmph”. No bounding box will be shown for the moments when the same “Car” object had the values of the “Speed” attribute different from "60 kmph".
      • It is impossible to modify DeviceAgent settings when the corresponding device is in Offline state (e.g. there’s currently no stream from the camera).
    • Stub: Object Actions sample plugin:
      • Some of the parameter values do not appear in the plugin-generated messages. Among such parameters are: testCheckBox, testSpinBox and testDoubleSpinBox.

In-Client Upgrade:

Build Number: 35837
Password: 9qgjym

Download Links:

5.1.0.35151 Video Management System
PUBLISHED 14 Jul 2022

Release Notes:

  • The maintenance release of Nx Meta VMS for the upcoming VMS 5.1.
  • For Metadata SDK usage instructions, see readme.md included within Metadata SDK zip.
  • ATTENTION: These Release Notes show changes relative to Nx Meta VMS 5.0.0.35134 R10 - the official 5.0 Release.
  • NEW FEATURES:
    • Metadata SDK:
      • Setting Model (see details in `src/nx/sdk/settings_model.md`):
        • Most settings can be declared with the new `isActive` flag, which allows them to trigger some plugin-defined action (see `IEngine::getSettingsOnActiveSettingChange()` and `IConsumingDeviceAgent::getSettingsOnActiveSettingChange()`) right when they are modified in the GUI, without clicking `Apply`. See `settings_model.md` for the details.
        • New setting types have been added: `PasswordField`, `Link`, `Banner`, `Button`. See `settings_model.md` for the details.
      • Base Library: a new value `Cyan` has been added to the type `Color`.
    • Desktop client webpages JS API:
      • Added new seamless authentication methods.
      • Added option to lock layout.
      • Added option to turn on minimal interface mode. In this mode only the close button is visible and the title bar with the button is hidden when it is not hovered.
      • JS API is now available from webpages, opened from the plugin settings interfaces, and object context actions.
      • JS API documentation is now available only in the form of an example web page in nx_open_integrations repository on GitHub: https://github.com/networkoptix/nx_open_integrations/tree/master/js_api_example
    • Server HTTP API:
      • Some of the deprecated API functions are considered insecure, but are enabled by default because they are used in Nx products. It is recommended to use the new API functions instead. These API functions can be manually disabled for testing purposes by changing `insecureDeprecatedApiInUseEnabled` in System settings (see `/rest/v2/system/settings`) or in Advanced System Settings of the Web Admin. Here is the list:
        • `GET /api/manualCamera/search`
        • `GET /api/rebuildArchive`
        • `POST /api/systemSettings`
        • `POST /ec2/removeAccessRights`
        • `POST /ec2/removeMediaServer`
        • `POST /ec2/removeServerUserAttributes`
        • `POST /ec2/removeUser`
        • `POST /ec2/removeUserRole`
        • `POST /ec2/saveMediaServer`
        • `POST /ec2/saveMediaServerUserAttributes`
        • `POST /ec2/saveMediaServerUserAttributesList`
        • `POST /ec2/saveUser`
        • `POST /ec2/saveUserRole`
        • `POST /ec2/saveUsers`
        • `POST /ec2/setAccessRights`
        • `POST /ec2/setResourceParam` for Users, Servers and unknown Resources
        • `POST /ec2/setResourceParams` for Users, Servers and unknown Resources
      • Introduced the new version of the CRUD API - v2 (`/rest/v2`), which in most cases duplicates and extends `/rest/v1`. It is recommended to use `/rest/v2` only, unless you need to support 5.0 Systems, because `/rest/v1` will be removed in some future version. Please note that some `/rest/v1` functions are incompatible with their `/rest/v2` versions.
        • ATTENTION: The documentation for `v2` is not yet available in the regular "API Documentation" page in the Web Admin, but can be accessed (though in a somewhat different user interface) via the direct URL https://localhost:7001/swagger-ui/index.html (here `localhost` is the Server address, and `7001` is the Server port).
      • In the functions `/ec2/getCameraUserAttributesList` (result), `/ec2/getCamerasEx` (result), `/ec2/saveCameraUserAttributes` (parameters), `/ec2/saveCameraUserAttributesList` (parameters), `/ec2/getFullInfo` (result), `/ec2/getStatisticsReport` (result), the field `licenseUsed` has been deleted, and the field `scheduleTasks.replaceWithId` has been added.
      • In the functions `/ec2/getUserRoles` (result), `/ec2/saveUserRole`, `/ec2/getFullInfo` (result), `/ec2/getStatisticsReport` (result), added the field `parentRoleIds`.
      • In the functions `/ec2/getUsers` (result), `/ec2/saveUser`, `/ec2/saveUsers`, `/ec2/getFullInfo` (result), `/ec2/getStatisticsReport` (result), added the field `userRoleIds`.
      • Added a new function `/ec2/notifyAnalyticsEngineActiveSettingChanged`.
      • Added a new function (endpoint) `/jsonrpc`.
  • IMPROVEMENTS:
    • SDKs, nx_kit:
      • `nx::kit::OutputRedirector` (`nx_kit/src/nx/kit/output_redirector.h`) now can tell whether either one of `stdout` or `stderr` has been redirected.
    • Metadata SDK:
      • Stub Analytics Plugin:
        • From configuration files of all Stub sub-plugins (`stub_analytics_plugin_*.ini`) removed obsolete unused flags `usePluginAsSettingsOrigin` and `sendSettingsModelWithValues`.
        • Removed deprecated sub-plugin `Deprecated Object Detection`.
    • Server HTTP API:
      • The function `/ec2/getFullInfo` has been deprecated in favor of the new functions `/rest/v2/system/databaseData` and `/rest/v2/system/resourceData`.
      • In the response of the function `/ec2/getUserRoles`, and in the function `/ec2/saveUserRole`, new fields have been added: `parentRoleIds` and `isLdap`.
      • In the functions `/ec2/getEvents` and `/api/getEvents`, added a new value to the `actionType` field: `showIntercomInformer`; added a new field `progress` to the `eventParams` inner object.
      • Added new functions `/ec2/notifyAnalyticsEngineActiveSettingChanged` and `/ec2/notifyDeviceAnalyticsActiveSettingChanged` - see the new feature of Active settings in Metadata SDK.
      • In the response of the function `/rest/v1/servers/{id}/info`, added fields `hardwareId`, `osTimeMs`, `timeZoneOffsetMs`, `timeZoneId`.
      • In the response of the function `rest/v1/devices`, added a field `deviceType`, and a value `isIntercom` to the `capabilities` field.
      • In the function `/rest/v1/devices/{id}/footage`, added the parameters `storageLocation` and `includeCloudData`; added the field `serverId` in the response of the function.
      • In the response of the function `/rest/v1/userRoles`, added a field `parentGroupId`.
      • Fixed errata in the Server HTTP API documentation (not changing the API behavior):
        • In the functions `/ec2/saveCameras`, `/ec2/saveStorages`, `/ec2/discoveredServersList`, and `/ec2/removeResources`, the parameters were incorrectly represented as a JSON Object rather than an array of objects.
  • SDK CHANGES BREAKING PLUGIN COMPILATION:
    • Metadata SDK:
      • The file `default_type_library.json` in the SDK root directory has been moved and renamed to `src/nx/sdk/analytics/taxonomy_base_type_library.json`.
  • SDK CHANGES BREAKING PLUGIN BINARY COMPATIBILITY: N/A
  • REST API BREAKING CHANGES:
    • Some of the deprecated API functions are considered insecure and are disabled by default. It is recommended to use the new API functions instead. These API functions can still be enabled by changing `insecureDeprecatedApiEnabled` in System settings (see `/rest/v2/system/settings`) or in Advanced System Settings of the Web Admin. Here is the list:
      • `GET /api/backupDatabase`
      • `GET /api/configure`
      • `GET /api/cookieLogout`
      • `GET /api/createEvent`
      • `GET /api/execute`
      • `GET /api/ptz` except with `?command=Get*`
      • `GET /api/setCameraParam`
      • `GET /api/settime`
      • `GET /api/transmitAudio`
      • `GET /ec2/bookmarks/add`
      • `GET /ec2/bookmarks/delete`
      • `GET /ec2/bookmarks/update`
      • `GET /ec2/dumpDatabase`
      • `GET /ec2/mergeStatus`
      • `GET|POST /api/detachFromSystem`
      • `GET|POST /api/mergeSystems`
      • `GET|POST /api/restart`
      • `GET|POST /api/setupCloudSystem`
      • `GET|POST /api/setupLocalSystem`
      • `POST /api/detachFromCloud`
      • `POST /api/restoreState`
      • `POST /api/saveCloudSystemCredentials`
      • `POST /ec2/restoreDatabase`
    • In the functions `/api/manualCamera/...`, the field `uniqueId` has been renamed to `physicalId`.
    • Removed the redundant `metadataStorageId` field from the functions `ec2/saveMediaServerUserAttributes`, `ec2/saveMediaServerUserAttributesList`, `ec2/getMediaServerUserAttributesList`.
  • KNOWN ISSUES:
    • Server HTTP API:
      • An undesired breaking change has been introduced: in the response of the function `/api/getCameraParamManifest`, the field `unique_id` was renamed to `deviceId`. This is a bug and will be fixed in the next Meta release.
  • [PROPRIETARY]
    • Errata in the Server HTTP API documentation (not in the API behavior):
      • The function `/ec2/getTransactionLog` is marked as deprecated, while it is actually not yet (it is planned to be deprecated when the replacement function becomes documented).
    • Mobile Client:
      • Video playback might not work in Mobile Client.
    • Metadata storage:
      • Metadata storage is not automatically set if the Server only has one local disk. Metadata is not recorded for this Server unless the user connects to the System with Desktop Client and agrees to record the metadata to the system drive by clicking the “OK” button in the corresponding pop-up window.
    • Analytics:
      • When searching for an attribute that changes over time, the corresponding bounding box is shown only for the time periods when the attribute value corresponds to the search string. E.g., if we are searching for an object of the type “Car” that was moving with a certain value of the “Speed” text attribute (“60 kmph”, for example), the bounding box for the discovered “Car” object will be shown only for the moments when the value of the “Speed” text attribute was equal to “60 kmph”. No bounding box will be shown for the moments when the same “Car” object had the values of the “Speed” attribute different from "60 kmph".
      • It is impossible to modify DeviceAgent settings when the corresponding device is in Offline state (e.g. there’s currently no stream from the camera).

In-Client Upgrade:

Build Number: 35151
Password: 59zswc

Download Links:

5.0.0.34968 Video Management System
PUBLISHED 31 May 2022

Release Notes:

  • The release of Nx Meta VMS corresponding to Powered-by-Nx VMS Release Candidate v5.0.0.34969/34970/34971.
  • For Metadata SDK usage instructions, see readme.md included within Metadata SDK zip.
  • These Release Notes describe changes made since Meta VMS 5.0.0.34744 R7.
  • IMPROVEMENTS:
    • Server HTTP API:
      • The function `/ec2/transactionBus` has been deprecated in favor of the new function `/ec2/transactionBus/websocket` (the deprecated function support expires after 5.0).
        • NOTE: Another function, previously undocumented, is now documented: `/ec2/transactionBus/http`.
        • NOTE: The actual bevavior of these three functions was the same in 4.2 - only the documentation is adjusted in 5.0.
    • In the functions `/ec2/getMediaServersEx`, `/ec2/saveMediaServerUserAttributes`, `/ec2/saveMediaServerUserAttributesList`, `/ec2/getFullInfo`, `/ec2/getStatisticsReport`, and in the result of the function `/ec2/getMediaServerUserAttributesList`, added a new field `locationId` to the object describing a Server.
    • In the functions `/api/manualCamera/...`, added a new field `model` to the object describing a camera.
    • Fixed building Metadata SDK and Video Source SDK with GCC 11.
  • SDK CHANGES BREAKING PLUGIN COMPILATION: N/A
  • SDK CHANGES BREAKING PLUGIN BINARY COMPATIBILITY: N/A
  • REST API BREAKING CHANGES: N/A
  • KNOWN ISSUES:
    • Analytics:
      • When searching for an attribute that changes over time, the corresponding bounding box is shown only for the time periods when the attribute value corresponds to the search string. E.g., if we are searching for an object of the type “Car” that was moving with a certain value of the “Speed” text attribute (“60 kmph”, for example), the bounding box for the discovered “Car” object will be shown only for the moments when the value of the “Speed” text attribute was equal to “60 kmph”. No bounding box will be shown for the moments when the same “Car” object had the values of the “Speed” attribute different from "60 kmph".
      • It is impossible to modify DeviceAgent settings when the corresponding device is in Offline state (e.g. there’s currently no stream from the camera).

In-Client Upgrade:

Build Number: 34968
Password: tf2bd5

Download Links:

5.0.0.34744 Video Management System
PUBLISHED 28 Apr 2022

Release Notes:

  • The release of Nx Meta VMS corresponding to Powered-by-Nx VMS beta v5.0.0.34745/34746/34747.
  • For Metadata SDK usage instructions, see readme.md included within Metadata SDK zip.
  • These Release Notes describe changes made since Meta VMS 5.0.0.34326 R6.
  • NEW FEATURES:
    • N/A
  • IMPROVEMENTS:
    • Fixed Server HTTP API documentation (the API behavior remains intact):
      • In the documentation for the functions `/ec2/saveCameraUserAttributesList` and `/ec2/saveCameraUserAttributes`, the parameter `scheduleTasks`, fixed the set of values for the fields `recordingType` and `metadataTypes`.
      • In the documentation for the functions `/ec2/saveUserRole`, `/ec2/saveUsers`, `/ec2/getPredefinedRoles`, added missing values of the `permissions` field.
      • In the documentation for the functions `/ec2/pluginInfo` and `/api/pluginInfo`, fixed the set of values for the response parameters `status` and `errorCode`.
      • In the documentation for the function `/rest/v1/servers/{id}/storages/*/purge`, fixed the set of values for the response parameter `state`.
      • In the documentation for the function `/rest/v1/devices/{deviceId}/bookmarks/{id}`, added missing documentation for the parameters.
    • Extended Server HTTP API:
      • In function `/api/createEvent`, added new optional parameters `event_type`, `eventResourceId`, `reasonCode`, `inputPortId`, `analyticsEngineId`.
  • SDK CHANGES BREAKING PLUGIN COMPILATION:
    • N/A
  • SDK CHANGES BREAKING PLUGIN BINARY COMPATIBILITY:
    • N/A
  • REST API BREAKING CHANGES:
    • N/A
  • KNOWN ISSUES:
    • Metadata SDK:
      • The following warning appears while building Stub Analytics Plugin with GCC11: "__STRICT_ANSI__ seems to have been undefined; this is not supported". This may lead to inability to build the plugin. Older GCC versions work fine.
    • Mobile Client:
      • Release versions of Android and iOS mobile Clients that can be found on Google Play and AppStore are not compatible with this build. Beta versions of mobile Clients can be used instead. To obtain the beta version of Android Client please visit the Nx Mobile app page in Google Play (https://play.google.com/store/apps/details?id=com.networkoptix.nxwitness) and join the beta testing program. Installing the beta of an iOS application is possible after installing the Test Flight app (https://testflight.apple.com/join/HTA5ZB2H).
      • WebAdmin:
      • There are two “API Documentation” hyperlinks in the WebAdmin main page: the one in the page footer and another one is shown in a drop-down that appears when clicking on the name of the System in the page header. The latter link is corrupted.
    • Analytics:
      • When searching for an attribute that changes over time, the corresponding bounding box is shown only for the time periods when the attribute value corresponds to the search string. E.g., if we are searching for an object of the type “Car” that was moving with a certain value of the “Speed” text attribute (“60 kmph”, for example), the bounding box for the discovered “Car” object will be shown only for the moments when the value of the “Speed” text attribute was equal to “60 kmph”. No bounding box will be shown for the moments when the same “Car” object had the values of the “Speed” attribute different from "60 kmph".
      • It is impossible to modify DeviceAgent settings when the corresponding device is in Offline state (e.g. there’s currently no stream from the camera).
    • Server HTTP API documentation:
      • In the documentation for function `/ec2/getCameraUserAttributesList`, the result of the function is incorrectly shown as a single object, while actually it is an array of such objects.
      • In functions returning objects with the information about the users or user roles, the field `permissions` incorrectly lists the possible value `ownerWithFreshSession` which is actually not supported.
      • In the documentation for the function `/ec2/saveCameraUserAttributes`, the parameter `userDefinedGroupName` incorrectly lists a number of values as inner values of the parameter, while it is actually a simple string.

In-Client Upgrade:

Build Number: 34744
Password: he9fu3

Download Links: