Seeed-Jetson-DevelopTool / ai-nvr
CLAUDE.md57 starsChanged 4 months agoMITView on GitHub
Deploy a local AI NVR (Network Video Recorder) on Jetson Orin using NVIDIA VST and Jetson Platform Services with DeepStream pedestrian detection. Requires Jetson Orin with JetPack 6.0 and an IP camera.
- Installs packages
In this repository297 other files it gives its agents.
- AGENTS.mdAGENTS.md
- ai-nvrAGENTS.md
- allxon-ota-updateAGENTS.md
- allxon-setupAGENTS.md
- alwaysai-setupAGENTS.md
- backup-restoreAGENTS.md
- bsp-source-buildAGENTS.md
- clawdbot-developmentAGENTS.md
- cochl-sense-setupAGENTS.md
- cvedia-setupAGENTS.md
- dashcamnet-xavier-nx-multicameraAGENTS.md
- deciai-setupAGENTS.md
- deepseek-quick-deployAGENTS.md
- deploy-deepseek-mlcAGENTS.md
- deploy-depth-anything-v3AGENTS.md
- deploy-diaAGENTS.md
- deploy-efficient-vision-engineAGENTS.md
- deploy-frigateAGENTS.md
- deploy-live-vlm-webuiAGENTS.md
- deploy-nvbloxAGENTS.md
- deploy-ollama-anythingllmAGENTS.md
- deploy-riva-llama2AGENTS.md
- developtool-deviceAGENTS.md
- disk-encryptionAGENTS.md
- diy-bsp-buildAGENTS.md
- ethercat-communicationAGENTS.md
- ethercat-setupAGENTS.md
- finetune-llm-llama-factoryAGENTS.md
- fix-browser-snap-jetsonAGENTS.md
- gapi-setupAGENTS.md
- generative-ai-introAGENTS.md
- gpt-oss-liveAGENTS.md
- gr00t-n1-5-deploy-thorAGENTS.md
- gr00t-n1-6-deploy-agxAGENTS.md
- hardhat-setupAGENTS.md
- hybrid-bsp-dk-to-recomputerAGENTS.md
- imx477-a603-setupAGENTS.md
- j501-viola-fruit-sortingAGENTS.md
- jetpack5-ssd-boot-fixAGENTS.md
- jetpack-flash-wsl2AGENTS.md
- jetpack-jetson-overviewAGENTS.md
- jetpack-ota-updateAGENTS.md
- jetson-ai-toolsAGENTS.md
- jetson-docker-setupAGENTS.md
- jetson-faqAGENTS.md
- jetson-pc-wired-shareAGENTS.md
- jetson-project-galleryAGENTS.md
- jetson-resource-indexAGENTS.md
- jetson-tutorial-exercisesAGENTS.md
- ko-module-buildAGENTS.md
- l4t-differencesAGENTS.md
- langchain-output-formattingAGENTS.md
- lerobot-env-setupAGENTS.md
- llama-cpp-rpc-distributedAGENTS.md
- llm-interface-controlAGENTS.md
- local-chatbot-multimodalAGENTS.md
- local-chatbot-physicalAGENTS.md
- local-llm-text-to-imageAGENTS.md
- local-rag-llamaindexAGENTS.md
- lumeo-setupAGENTS.md
- The first 60 shown.
The file
We split this CLAUDE.md into the rules it gives an agent
11 rules. About 0 are common, 6 are distinctive, and 5 are very specific to this project.
≈0
Common · estimate
Many files like this have a rule of this kind.
≈6
Distinctive · estimate
This author's own choices. Worth a look.
5
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Distinctive: line 19
Run one phase at a time. After each phase:
- Very specific: line 20
If output contains [STOP] → stop immediately, consult the failure decision tree
- Very specific: line 21
If output ends with [OK] → tell the user "Phase N complete" and proceed
- Distinctive: line 50
Verify services are available:
- Distinctive: line 62
Create the AI NVR nginx config:
- Distinctive: line 103
Verify containers are running:
- Very specific: line 108
Verify web UI is accessible at http://<JETSON_IP>:81/
- Very specific: line 132
Add RTSP sink to the DeepStream YAML (replace the existing sink section with nvrtspoutsinkbin on port 8555).
- Distinctive: line 134
Add the WDM environment variable in the compose file:
- Distinctive: line 159
Verify all containers are running:
- Very specific: line 174
Add DeepStream output stream: rtsp://<JETSON_IP>:8555/ds-test (camera name MUST contain the word "deepstream")
≈ “Common” is an estimate: at least 1 in 5 of the 26,980 CLAUDE.md files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
AI NVR with Jetson Orin
Deploys a local AI NVR using NVIDIA VST and Jetson Platform Services. DeepStream performs pedestrian detection; results display alongside the original video stream on the VST video wall.
Hardware: Jetson Orin device (e.g. reServer Industrial J4012), IP camera, network Software: JetPack 6.0 (L4T r36.3)
Execution model
Run one phase at a time. After each phase:
- If output contains
[STOP]→ stop immediately, consult the failure decision tree - If output ends with
[OK]→ tell the user "Phase N complete" and proceed
Phase 1 — prerequisites check (~30 s)
Confirm JetPack 6.0:
cat /etc/nv_tegra_release
# Expected: R36 (release), REVISION: 3.0Confirm IP camera is reachable:
ping -c 2 <CAMERA_IP>[OK] when JetPack 6.0 confirmed and camera responds.
[STOP] if JetPack version is wrong or camera unreachable.
Phase 2 — install Jetson Platform Services (~2 min)
sudo apt update
sudo apt install -y nvidia-jetson-servicesVerify services are available:
ls /opt/nvidia/jetson/services/Expected: directories including ingress/, vst/, etc.
[OK]
Phase 3 — configure ingress & storage (~1 min)
Create the AI NVR nginx config:
sudo tee /opt/nvidia/jetson/services/ingress/config/ai-nvr-nginx.conf > /dev/null << 'EOF'
location /emdx/ {
rewrite ^/emdx/?(.*)$ /$1 break;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
access_log /var/log/nginx/access.log timed_combined;
proxy_pass http://emdx_api;
}
location /ws-emdx/ {
rewrite ^/ws-emdx/?(.*)$ /$1 break;
proxy_set_header Host $host;
proxy_pass http://emdx_websocket;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
}
EOF(Optional) Modify VST storage path:
sudo nano /opt/nvidia/jetson/services/vst/config/vst_storage.json
# Change data_path and video_path as needed[OK]
Phase 4 — start VST services (~1 min)
sudo systemctl start jetson-redis
sudo systemctl start jetson-ingress
sudo systemctl start jetson-vstVerify containers are running:
sudo docker psVerify web UI is accessible at http://<JETSON_IP>:81/
[OK] when VST web UI loads.
Phase 5 — download & configure AI NVR (~5 min)
Download the AI NVR package from NGC: https://catalog.ngc.nvidia.com/orgs/nvidia/teams/jps/resources/reference-workflow-and-resources
Extract:
cd <DOWNLOAD_PATH>
unzip files.zip
cd files
tar -xvf ai_nvr-1.1.0.tar.gz
cd ai_nvrModify DeepStream config for RTSP output. Select the correct config for your module:
- Orin NX 16GB:
config/deepstream/pn26/service-maker/ds-config-0_nx16.yaml - Orin AGX / NX8 / Nano: use the corresponding file
Add RTSP sink to the DeepStream YAML (replace the existing sink section with nvrtspoutsinkbin on port 8555).
Add the WDM environment variable in the compose file:
WDM_WL_NAME_IGNORE_REGEX: ".*deepstream.*"[OK] when config files are modified.
Phase 6 — launch AI NVR (~3 min)
Select the correct compose file for your Jetson module:
cd <DOWNLOAD_PATH>/files/ai_nvr
# Orin AGX:
# sudo docker compose -f compose_agx.yaml up -d --force-recreate
# Orin NX 16GB:
sudo docker compose -f compose_nx16.yaml up -d --force-recreate
# Orin NX 8GB:
# sudo docker compose -f compose_nx8.yaml up -d --force-recreate
# Orin Nano:
# sudo docker compose -f compose_nano.yaml up -d --force-recreateVerify all containers are running:
sudo docker ps[OK] when DeepStream and other AI NVR containers appear.
Phase 7 — configure cameras via web UI (~2 min)
Open browser: http://<JETSON_IP>:30080/vst/
Add cameras manually:
- Sensor Management → Add device manually → enter IP camera RTSP URL → Submit
- Add DeepStream output stream:
rtsp://<JETSON_IP>:8555/ds-test(camera name MUST contain the word "deepstream")
View results: Video Wall → Select All → Start
[OK] when video wall shows camera feeds with AI detection overlays.
Shutdown
cd <DOWNLOAD_PATH>/files/ai_nvr
sudo docker compose -f compose_nx16.yaml down --remove-orphans
sudo systemctl stop jetson-vst
sudo systemctl stop jetson-ingress
sudo systemctl stop jetson-redisFailure decision tree
| Symptom | Action |
apt install nvidia-jetson-services fails | Confirm JetPack 6.0 is installed. Run sudo apt update first. |
| VST web UI not loading on port 81 | Check sudo systemctl status jetson-vst. Verify firewall allows port 81. |
| Docker compose fails | Verify Docker + nvidia-container-runtime installed. Check disk space. |
| DeepStream container exits immediately | Check sudo docker logs <container>. Verify correct compose file for your module. |
| No detection overlay on video wall | Confirm DeepStream config has RTSP sink on port 8555. Camera name must contain "deepstream". |
| Camera not visible in VST | Verify camera RTSP URL is correct and reachable from Jetson. |
Reference files
references/source.body.md— Original Seeed wiki with screenshots and detailed config examples
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

