Nimble ConfigurationΒΆ

Nimble is controlled by a configuration file or configuration zmq port. The configuration files are in JSON format and needs to be named config.json in the root directory. The configuration port needs to be sent data in JSON format. Upon starting the docker container the config.json is mounted into the container and is monitored by the nimble application or the configuration port is monitored for new configuration data. Changes to the configuration file or new data pushed to the configuration port will dynamically be deployed by nimble at runtime. For an example of the ZMQ deployment method please refer to Deployer Example.

The configuration file and configuration port both follow the same schema:

[
    {
        "sources" : [
            {
                "address" : "string : url",
                "rate" : "integer desired input rate",
                "type" : "string : video/youtube/inf",
                "timeout" :"integer if source is disconnected try to reconnect for this many minutes, -1 is try indefinitely",
                "proxy": "bool"
            },
            { "...More than one source": "can be define...." }
        ],
        "sinks" : [
            {
                "address" : "string : url/path",
                "filter" : "*, integer or list of integers : channels to filter on"
                "type" : "string : video/zmq/inf"
            }
        ],
        "pipeline" : [
                "pipeline element", "pipeline element"
        ]
        "configuration" : [
            {
                "address" : "string : url",
                "message" : "string: anything"
            }
        ]
    },
    { "...Define another": "stream...." }
]

Samples for the different supported uses cases are provided in the samples directory. A detailed description of each sample can be found here:

Each json element in the config is explained in this section:

Instructions to add custom models is explained in this section:

Add Custom Model:

Instructions to add custom pipeline stages is explained in this section:

Add Custom Pipeline Stage: