Metropolis Microservices NVStreamer Tools
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:
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:
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:
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}