Getting Started#
This guide starts VSR NIM for compressed-video workflows: gRPC, RTP/UDP, and Cloud File.
Prerequisites#
Before starting the container, verify that your system meets the requirements in the Support Matrix for compressed video workflows.
You need the following:
NVIDIA Driver 590.33 or later.
CUDA 13.1 or later.
Ada-generation or later NVIDIA GPU.
GPU support for NVENC and NVDEC for the codecs used by your input and output streams.
Docker with NVIDIA Container Toolkit.
NGC access to pull the VSR NIM image.
Authenticate to NGC#
Export your NGC API key and log in to the NVIDIA container registry:
export NGC_API_KEY=<your-ngc-api-key>
echo "$NGC_API_KEY" | docker login nvcr.io --username '$oauthtoken' --password-stdin
Pull the NIM Image#
export VSR_NIM_IMAGE="nvcr.io/nim/nvidia/vsr-nim:1.0.10"
docker pull "${VSR_NIM_IMAGE}"
Start VSR NIM#
For the default streaming setup, run the following command:
docker run -d --name vsr-nim \
--gpus all \
-p 8000:8000 -p 8001:8001 \
-p 6600-6603:6600-6603/udp \
"${VSR_NIM_IMAGE}"
This command exposes the following endpoints:
HTTP health on port
8000.gRPC inference on port
8001.RTP/UDP media ports
6600-6603.
For RTP/UDP with the bundled client on the same Docker host, launch VSR NIM with a client-reachable RTP input address and a host alias for the RTP output path:
docker run -d --name vsr-nim \
--gpus all \
--add-host=host.docker.internal:host-gateway \
-e MY_POD_IP=127.0.0.1 \
-p 8000:8000 -p 8001:8001 \
-p 6600-6603:6600-6603/udp \
"${VSR_NIM_IMAGE}"
MY_POD_IP=127.0.0.1 tells the sample client to send RTP input through the UDP ports published on the host. The default settings in samples/client/vsr/rtp_udp_vsr.json send RTP output to host.docker.internal:8912, which resolves back to the host-side listener created by vsr_client.sh.
For Cloud File mode, use presigned URLs for both input and output. The default streaming launch command is sufficient as long as the VSR NIM container can reach the object storage endpoints over the network.
If you use only gRPC input and output, you can omit the RTP/UDP port mappings:
docker run -d --name vsr-nim \
--gpus all \
-p 8000:8000 -p 8001:8001 \
"${VSR_NIM_IMAGE}"
Caution
Do not override NIM_DISABLE_MODEL_DOWNLOAD or NIM_DISABLE_GRPC_STARTUP when you start the VSR NIM container. These variables are part of the released image configuration. For details, refer to Reserved Environment Variables.
Verify Readiness#
Check the HTTP readiness endpoint:
curl -sf http://localhost:8000/v1/health/ready
Next Steps#
Run an upscale request with the reference client in Running Inference.
Review the runtime and request settings in Configuration.
Review troubleshooting steps in Diagnostics.