Metropolis Microservices NVStreamer Tools

From RidgeRun Developer Wiki



Preferred Partner Logo 3




As part of the Microservices release, NVIDIA provides a helpfull tool to generate rtsp streams to test without the need of IP capable cameras. All only by installing it and uploading a test file to it.

Setup

1. Obtain the files from the developer preview, follow this link https://registry.ngc.nvidia.com/orgs/e7ep4mig3lne/teams/release/resources/nvstreamer

2. Then copy the file and decompress it on the Jetson.

3. Increase stream limits on the device:

sudo sysctl -w net.core.wmem_max=2000000
sudo sysctl -w net.core.rmem_max=2000000

4. Go to the decompressed files

5. Start the NVStreamer service

sudo docker compose -f compose_nvstreamer.yaml up -d  --force-recreate

6. After the launch is completed, the NVStreamer UI can be accessed on the URL: http://[JETSON-IP]:31000
You will be greated by the following UI:


NVStreamer main dashboard


Adding a test stream

We can add a file to get a sample RTSP stream. To do so first go to the main NVStreamer dashboard, and click the File Upload tab:

NVStreamer add file menu


Then just drop a video file on the file box and NVStreamer will take it and copy it to the Streamer device and start streaming.
The URL is on the RTSP URLs section:

NVStreamer rtsp link

Linux x86 setup

You can also setup NVStreamer on a Linnux host x86 machine. The process is very similar to the previous one. The setup can be done on a machine with or without GPU:

  • GPU
sudo docker run -e ADAPTOR=streamer -d --restart always --gpus all -v {local video file path}:/home/vst/vst_release/streamer_videos/  -v {nvstream config file path}:/home/vst/vst_release/updated_configs/ --net=host nvcr.io/e7ep4mig3lne/release/vst:nvstreamer_v0.2.22_x86_64 --vstConfigFile /home/vst/vst_release/updated_configs/nvstreamer_config.json
  • Non GPU
sudo docker run -e ADAPTOR=streamer -d --restart always -v {local video file path}:/home/vst/vst_release/streamer_videos/  -v {nvstream config file path}:/home/vst/vst_release/updated_configs/ --net=host nvcr.io/e7ep4mig3lne/release/vst:nvstreamer_v0.2.22_x86_64 --vstConfigFile /home/vst/vst_release/updated_configs/nvstreamer_config.json

Make sure to replace both {nvstream config file path} and {local video file path} according to your setup. And change permissions on the target host folder like:

sudo chmod 777 {local video file path}