This guide covers the integration of Intel® SceneScape with Smart NVR for enhanced traffic monitoring using live data from smart intersection application.
Smart NVR system integrates with Intel® SceneScape to enable:
- Real-time object counting and tracking (vehicles, pedestrians)
- Traffic flow analysis
- Automated event routing based on count thresholds
- Enhanced surveillance for smart intersection management
Smart Intersection Reference Implementation: We will use the Smart Intersection application to showcase the integration with Intel® SceneScape.
-
Set up the Smart Intersection application.
# Clone smart intersection repository inside smart nvr directory if not already done git clone https://github.com/open-edge-platform/edge-ai-suites.git -b v1.2.0 # From the Smart NVR directory, copy the DL Streamer configuration (enables RTSP streaming) cp ./resources/si-rtsp-config.json edge-ai-suites/metro-ai-suite/metro-vision-ai-app-recipe/smart-intersection/src/dlstreamer-pipeline-server/config.json # Copy the SceneScape compose configuration cp ./resources/compose-scenescape-rtsp.yml edge-ai-suites/metro-ai-suite/metro-vision-ai-app-recipe/compose-scenescape.yml
-
After copying the files, start the Smart Intersection application:
# Navigate to metro-vision-ai-app-recipe directory cd edge-ai-suites/metro-ai-suite/metro-vision-ai-app-recipe/ # Start Smart Intersection ./install.sh smart-intersection docker compose up -d # Navigate back to Smart NVR cd ../../../../smart-nvr
The files provide:
- RTSP streaming support in the DL Streamer pipeline,
- Intel® SceneScape-specific Docker Compose settings.
# Get MQTT credentials from Smart Intersection
cat edge-ai-suites/metro-ai-suite/metro-vision-ai-app-recipe/smart-intersection/src/secrets/browser.auth
# Expected: {"user": "<user>", "password": "<password>"}# Enable SceneScape Integration
export NVR_SCENESCAPE=true
# MQTT Configuration (from browser.auth JSON)
export SCENESCAPE_MQTT_USER="<user>"
export SCENESCAPE_MQTT_PASSWORD="<password>"
export SCENESCAPE_THROTTLE_INTERVAL=2.0 # Optional: throttle interval in seconds# Start the application
./setup.sh start
# Or restart with new configuration
./setup.sh restartNote: The setup script automatically copies Intel® SceneScape certificates from Smart Intersection if available. If certificates are missing, setup will fail with an error message.
Check logs to confirm Intel® SceneScape connection:
docker logs nvr-event-router -f
# Look for: "SceneScape MQTT client started"When Intel® SceneScape is enabled (NVR_SCENESCAPE=true) and "scenescape" source is selected:
- Source dropdown shows both "frigate" and "scenescape" options
- Count field becomes visible and editable
- Users can set minimum count threshold for rule triggering (e.g., 5, 10, 15)
- Rules table includes "Count" column for tracking thresholds
- Count validation ensures non-negative integers only
When Intel® SceneScape is enabled but Frigate source is selected:
- Currently Frigate object detection is disabled in this mode
- Source dropdown still shows both "frigate" and "scenescape" options
- Count field is automatically hidden (not applicable for Frigate)
- Standard Frigate rule configuration with detection labels
- Rules table shows "Count" column but displays "-" for Frigate rules
- Full Frigate functionality remains available
Steps (both sources):
- Navigate to Auto-Route Events tab
- Select Source: "scenescape" or "frigate"
- Set Count: (SceneScape only) Define minimum threshold (e.g., 5)
- Select Camera: Choose target camera
- Choose Detection Label: Select object type
- Select Action: "Summarize" or "Add to Search"
- Click Add Rule
Key Differences:
- SceneScape: Count field visible when selected
- Frigate: Count field hidden
SceneScape Rule Example:
Source: scenescape
Camera: camera1
Count: 5
Label: vehicle
Action: Summarize
Triggers video summarization when 5+ vehicles detected in camera1
Frigate Rule Example:
Source: frigate
Camera: livingroom
Label: person
Action: Add to Search
Adds person detection events to search index for livingroom camera
SceneScape features not visible:
# Check and set environment variable
echo $NVR_SCENESCAPE # Should show 'true'
export NVR_SCENESCAPE=true
./setup.sh restart
# Refresh browser (Ctrl+F5)No SceneScape events received:
# Check MQTT connection
docker logs nvr-event-router | grep -i scenescape# Check environment variables
env | grep NVR_SCENESCAPE
env | grep SCENESCAPE
# Monitor MQTT messages
docker logs nvr-event-router -f | grep "scenescape"
# Check UI logs
docker logs nvr-event-router-ui -f
# Verify SceneScape MQTT connection
docker logs nvr-event-router | grep "Scenescape MQTT client"# Check system CPU usage and load
cat /proc/loadavg && docker stats --no-stream --format "table {{.Name}}\t{{.CPUPerc}}\t{{.MemUsage}}"For Intel® SceneScape integration issues:
- Certificate Error: Ensure Smart Intersection application is running and has generated certificates
- Environment Variables: Verify
NVR_SCENESCAPE=trueand MQTT credentials are set - MQTT Connection: Check logs for "Scenescape MQTT client started" message
- Smart Intersection: Confirm Smart Intersection application is accessible at expected path
- Performance Issues: Run
cat /proc/loadavg && docker stats --no-streamto check CPU usage and system load - High Resource Usage: If load average >10 or containers show >500% CPU, restart high-usage containers
- Review logs using debug commands above and contact support with relevant excerpts
For general Smart NVR issues, see the Troubleshooting Guide.

