Skip to content

Latest commit

 

History

1 Commit

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 

Repository files navigation

My NVR Setup

This is a self-hosted Network Video Recording System built with Frigate, go2rtc, NVIDIA Hardware Acceleration, and onnx AI Detection

Overview

This documents my journey on setting up my Self-Hosted NVR.

Features

  • 24/7 8 Camera Recording
  • Frigate Detection Recording powered by onnx
  • NVIDIA Hardware Acceleration and AI Processing
  • Dedicated Camera Wall
  • Docker-based Deployment

Archetecture

[Camera Feed] [go2rtc] [Frigate] [NVIDIA GPU] [Recording/Detection] [User Interface]

Hardware

| Component | Hardware |

|---|---|

| CPU | Ryzen 7 5800XT |

| GPU | RTX 5060 Ti |

| RAM | 32 GB |

| OS | Ubuntu |

| Cameras | Hikvision / Northern |

| NVR | Frigate |

| Restreaming | go2rtc |

Installation

  1. Install Ubuntu

  2. Install NVIDIA drivers

  3. Install Docker

  4. Configure NVIDIA Container Toolkit

  5. Deploy Frigate

  6. Configure go2rtc

  7. Add cameras

  8. Configure Home Assistant

  9. Configure kiosk display

Troubleshooting

Laggy Display on Kiosk

Cause

Web browser could not handle displaying all 8 streams concurrently on linux

Diagnosis

Both firefox and chrome bottlednecked when displaying streams even with Hardware Acceleration

Solution

I had AI build me a Kiosk System to display Cameras to remove the bottleneck out of the equation

Too much VRAM USAGE on Kiosk System

Cause

Kiosk System was rerendering main 2k stream feeds and decoding the streams down to 640 x 360

Diagnosis

The kiosk was using to much gpu power to rerender a high quality feed down to a lower quality speed

Solution

I increased the quality of the substream and used the substream feed instead of the main feed which was running at 720p instead of 2k there for lowering vram usage from 6gb to just 1gb

Lessons Learned

Using Substreams for Detections and Kiosk

When detecting objects on your feed it is better to use lower quality feeds so that you do not sacrific compute power on your gpu when only needing to see if a car or person is moving infront of the camera

Also when rendering a 1920x1080 3x3 Kiosk system it is better to downstream a 720p feed than a 2k feed because it uses less processing power without sacraficing quality and reliability.

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors