[HN Gopher] Frigate: Open-source network video recorder with rea...
___________________________________________________________________
Frigate: Open-source network video recorder with real-time AI
object detection
Author : thunderbong
Score : 262 points
Date : 2023-11-18 16:44 UTC (6 hours ago)
(HTM) web link (frigate.video)
(TXT) w3m dump (frigate.video)
| qmarchi wrote:
| What's people's opinions on Frigate+?
|
| For anyone that uses it, can you prove since details on value?
| bitwidget wrote:
| Besides upload and annotate [1], you can technically create
| your own models and use that within the Frigate configs already
| for free
| (https://docs.frigate.video/configuration/objects/#custom-
| mod...).
|
| [1]You could always mount a cloud drive within Frigate's Docker
| config to have frigate upload camera footage to a cloud server.
| nickm_27 wrote:
| A number of users have posted their experiences so far on the
| GitHub discussion
|
| -
| https://github.com/blakeblackshear/frigate/discussions/7932#...
| -
| https://github.com/blakeblackshear/frigate/discussions/7932#...
| -
| https://github.com/blakeblackshear/frigate/discussions/7932#...
| -
| https://github.com/blakeblackshear/frigate/discussions/7932#...
|
| I have found my frigate+ model to be much more accurate and
| crazy good even at night. Will be curious how things change
| when it snows here more often, since I've not submitted any
| examples of winter at this house yet.
| jcrawfordor wrote:
| Frigate seems like one of the most promising new NVR/VMS products
| out there, but still lacks the feature-completeness to replace
| Blue Iris. The biggest gap right now in my mind is Frigate's poor
| feature set for continuous recording, which seems like very basic
| functionality but ends up as a low priority for a lot of these
| "event-first" products that are more patterned off of consumer
| products.
| pkulak wrote:
| Wait, what now? I have mine set to retain 3 full days of
| continuous.
| jcrawfordor wrote:
| Perhaps this has improved, but when I tried it out a few
| months ago I found that the playback for continuous recording
| was extremely basic and didn't have features like easy-to-use
| variable speed scrub to make it practical to search for
| things. I might try it out again today because I would like
| to go to something that doesn't have to run on Windows, but
| my use case is more around continuous recording with around a
| month of history than event detection.
|
| Space management for rolling retention is also a new feature
| in Frigate and very basic, I don't think it has a way to do
| different retention policies by camera group and alarm.
| Thews wrote:
| I believe you can trigger recording with mqtt, so you could
| make an automation for it. You could try to bump this https
| ://github.com/blakeblackshear/frigate/issues/2590#issue....
| You could even try to use ai to write the feature.
|
| There's only been one incident where I would have liked
| continuous, I've tweaked events to be more than enough.
| pkulak wrote:
| Ah yes, you are right. I'll never actually look at the
| continuous unless I'm robbed, so it doesn't bother me.
| Person and animal detection is really good, so you'd have
| to be very motivated to want to slop around in the space
| between.
| nickm_27 wrote:
| A better UI for recordings viewing and seeing times of
| activity are coming in the future.
|
| Frigate already supports customizing recording retention
| per camera for 24/7 and event based recordings.
|
| You can also set different retention periods based on the
| type of objects that were detected.
| MadnessASAP wrote:
| I've been using it for continuous recording of my cameras. It
| would be working flawlessly except for the piss poor firmware
| of my Reolink cameras firmware causing their rtsp server to
| choke.
| dementik wrote:
| Have you tried Neolink to make Reolink RTSP little better?
| milofeynman wrote:
| I use blueiris which barely works because I'm overloading it
| with 9 reolinks at 4k. I'd like to figure out my bottleneck
| but it works enough barely that it's not worth mucking with
| it.
| nirav72 wrote:
| Curious - does having 4k (compared to 2k or 1080p) make a
| huge difference for security cameras for surveillance on a
| property like a home?
| gh02t wrote:
| It depends on the application. 4K on a camera that's high
| up and covers a lot of area is good because you see more
| pixels on objects. Also stuff like identifying people's
| faces or license plates. 4K for a camera that is close
| up, like say a doorbell, is IMO less useful.
| j45 wrote:
| 4K to FHD is the difference difference being able to see
| someone's face, or not. Or being able to read a license
| plate, or to.
|
| Digital zoom also can be more useful.
|
| What I've learned from clients is to get the best
| resolution cameras you can and PoE cameras only if the
| use case remotely is safety or security.
| dylan604 wrote:
| >which seems like very basic functionality but ends up as a low
| priority for a lot of these
|
| for security based purposes, why would you want to save all of
| that data that is not changing? you'll just end up fast-
| forwarding to the interesting bits anyways if you have to go to
| the footage.
| Zuiii wrote:
| Because sometimes these systems don't detect those changes.
| Continuous recording with object detection and tagging solves
| this problem.
| jcrawfordor wrote:
| Neither motion or object detection are really that reliable,
| in any system I've worked with. The norm in commercial
| systems has long been to record continuously and use
| motion/object detection/other classifiers to annotate the
| recording. That gives you the opportunity to search for
| events, like thefts, that may not have been detected by
| classification. You also have access to footage well before
| and after the detected event, which is often absolutely
| critical to answering useful questions (e.g. how did someone
| get past the fence?). Common patterns like 10 seconds
| before/30 seconds after just aren't always sufficient.
|
| Unfortunately consumer devices are almost always cloud-based,
| where storage but especially upstream bandwidth are much more
| costly considerations, so recording only on detection has
| become the norm in the consumer world.
|
| External triggers are also an important feature in commercial
| systems that a lot of open source projects miss---but Frigate
| isn't guilty of this one, it can receive triggers by MQTT,
| which is the same thing I do right now with Blue Iris. That's
| the big thing that has me optimistic about Frigate going
| forward. Because motion and object detection are so
| inconsistent, triggering VMS events based on access control
| systems and intrusion sensors is often a much more reliable
| (and even easier to maintain) approach.
| invalidator wrote:
| One of the niftiest ways I've seen this done was some
| software I used circa 2000 (I don't remember the name). It
| would create a variable-rate timelapse by saving a frame
| every time the image changed more than $x percent,
| calculated as the sum of differences of pixels from the
| previous frame, or thereabouts.
|
| If someone was walking across the yard it would save every
| frame. The movement of the sun would move shadows enough to
| trigger a new image every few minutes. A bug flying past
| was small enough that it wouldn't trigger anything. The
| result was you could get a short video of everything
| interesting that happened through the day: shadows of trees
| sliding over the ground, every frame of the car pulling out
| of the driveway, shadows sliding over the ground some more,
| cat walks across the yard then lays down, shadows pan
| around more while the cat sits still, cat gets up and walks
| away, shadows pan around until the delivery guy comes...
|
| It was an incredibly low-CPU way to see everything that
| happened without missing anything, and without having to
| fine-tune the motion detection very much. You just mask out
| any areas with constant motion, then adjust the slider for
| how much change triggered the next frame, which would let
| you adjust how fast the timelapse would go during the
| boring parts.
|
| I've always wondered why the technique never became
| widespread.
| moandcompany wrote:
| My solution for this at the moment is to run a a separate NVR
| using continuous recording in parallel with a Frigate instance.
|
| - Redundant disks/mirroring on the NVR
|
| - Replication of Frigate's Event Database and Recordings to
| remote network storage
|
| I primarily use Frigate as a general event index, with 'active-
| objects' as its recording criteria, and look at the NVR when
| there may be gaps in Frigate's coverage.
|
| I've also been writing my own software to integrate with
| Frigate to help make better sense of activity and events at a
| macro level, compared to its current user interface.
| bitwidget wrote:
| I'm currently using Frigate for continuous recording and it's
| great and I don't feel like I'm missing any features. What are
| some features that are missing?
| rahimnathwani wrote:
| It seems like for a basic setup I need:
|
| - an intel-based PC (can be a minipc, doesn't need a powerful
| CPU)
|
| - a USB Coral TPU ($60)
|
| - some wired PoE cameras (from $60 each)
|
| My question: what do people typically use to power the cameras? A
| single PoE switch, or multiple PoE injectors?
|
| My Arlo Pro 2 cameras are apparently EOL and might stop receiving
| free cloud services in a couple of months. So this seems like a
| good time to upgrade to higher resolution cameras.
|
| (The Frigate docs advise against using Wi-Fi cameras, which would
| otherwise be my preference.)
| syntaxing wrote:
| Doesn't have to be PoE cameras. I use wifi cameras too, pretty
| much any camera with rtsp/onvif would work.
|
| Chances are, a single switch is more cost effective than
| multiple injectors. But you also need Ethernet routed
| throughout your house. One alternative is to have the G.hn
| (powerline) adapter with PoE. This way, you can be both network
| and power with one plug without wiring your house.
| rahimnathwani wrote:
| If you're happy with your wifi cameras' performance with
| Frigate, I'd love a recommendation.
| syntaxing wrote:
| I have a mix of reolink and amcrest ones, I can grab the
| models later tonight when I'm at my computer
| VTimofeenko wrote:
| Please do, also looking for recommendations :)
| eddyg wrote:
| Wi-Fi cameras are not a great idea. Sure, they are
| convenient, but Wi-Fi is a shared access medium (every device
| on, say, channel 11, has to "cooperate" with all the other
| devices about when it can transmit, including devices on
| neighboring SSIDs) and something that is constantly streaming
| video (or worse, multiple devices!) is going to quickly
| consume available bandwidth and offer a poor Wi-Fi
| experience. (But most people only care about convenience.)
| Plus, Wi-Fi is _easily_ jammed, which is not great from a
| security perspective.
| syntaxing wrote:
| Ehh, I have a mix of 4K and 2K cameras, it hasn't been much
| of an issue. I run OPNsense with a single EAP670 and there
| hasn't been much performance degradation. PoE is definitely
| ideal but not an option for many, including me since I
| rent. I think the G.hn plugs are probably my best option
| for PoE if I really needed it.
|
| Edit: not sure why you're being downvoted
| social_quotient wrote:
| I have a single PoE switch for my ubiquiti cameras and polycom
| voip phones. My original need for the PoE switch was actually
| the access points and not the cameras but I slowly converted
| from nest to these.
| pkulak wrote:
| I just have a PoE switch. It's actually easier to run ethernet
| than power, especially outside. Clogging up your WiFi spectrum
| with megabits of constant video seems like a terrible idea.
| rahimnathwani wrote:
| > Clogging up your WiFi spectrum with megabits of constant
| video seems like a terrible idea.
|
| Yes, that's the thing I like about the Arlo system I have
| now: it has its own wifi network so, even if it's using
| spectrum, it's probably not affecting my LAN throughput.
|
| > It's actually easier to run ethernet than power, especially
| outside.
|
| This is true, but the house where I live already has power
| available everywhere I might need a camera. The thing I don't
| like about running new cables is the need to drill holes
| through exterior walls.
| kiallmacinnes wrote:
| Your LAN can handle it :)
|
| If the current setup can't, plugging the cameras and the
| NVR into a separate switch and none of that traffic will go
| near the rest of your LAN.
|
| Wifi on the other hand, there's really no (practical)
| segregation to speak of - the spectrum has limited
| bandwidth, it doesn't matter if it's a different SSID /
| wifi network, it'll affect your Wifi!
| Karrot_Kream wrote:
| > Yes, that's the thing I like about the Arlo system I have
| now: it has its own wifi network so, even if it's using
| spectrum, it's probably not affecting my LAN throughput.
|
| Wifi6 is changing a lot of this, but generally speaking
| Wifi performance is not optimized for media style traffic.
| Media traffic does best with low jitter (variance of
| latency) as this tends to keep buffer sizes low and avoids
| dropping frames. Wifi is not very good at low jitter, and
| though Wifi6 is a lot better than previous Wifi standards,
| it's still much harder to keep jitter low on Wifi than it
| is on a LAN. On top of that, as the sibling commenter says,
| even if you have a separate Wifi network, spectrum doesn't
| segment that neatly. Wireless traffic uses multiplexing
| methods (there are several and if you're interested, the
| methods are fascinating [1]) to roughly use the same
| spectrum. These multiplexing methods obviously need to do
| more work the more traffic there is on the spectrum.
|
| If you can route your media traffic through LAN do it.
| Obviously as you say, running new cable is a lot of work so
| it's understandable why you use Wifi. But LAN is just so
| much better that if you have the time/money (doing it
| yourself/hiring someone) to do it, I highly recommend you
| do.
|
| [1]: https://www.intechopen.com/chapters/66562
| j45 wrote:
| Not just that but if a thief is going to break into your
| home, a wifi hammer will render a lot of smarthome gear
| including cameras useless.
| px43 wrote:
| Did you mean "jammer" or is there something new called a
| "wifi hammer"? If so, it sounds interesting.
| acidburnNSA wrote:
| I have a variety of PoE power supplies based on where all my
| wires are running. I have one PoE switch near my main router
| that goes directly to a few cams. I have a second PoE switch in
| my living room that hooks into one in-house ethernet port and
| splits/powers two outdoor cams. Then I have a number of WiFi
| cams still where it wasn't convenient to get ethernet.
| chromakode wrote:
| Single PoE switch with cameras on a VLAN (so they don't have
| internet access). I use my old framework main board (yay for
| reuse!). Started with a USB Coral but switched to NVMe, which
| is more reliable passing through to a VM.
|
| Frigate links some Dahua camera recommendations in their
| documentation: https://docs.frigate.video/frigate/hardware/
|
| I installed them and they've been rock solid. Low light
| performance is excellent. The turret form factor is nice and
| unobtrusive.
| jaktet wrote:
| Last time I looked at this the Coral devices were out of
| stock and price gouged. Looks like I can at least order now
| with a lead time of 22 weeks from mouser.
|
| https://coral.ai/products/m2-accelerator-dual-edgetpu/
| rainbowzootsuit wrote:
| Depends on the version. They have thousands of m.2 in
| stock.
|
| https://www.mouser.com/c/?q=coral
| jaktet wrote:
| Whoops I misread the factory lead time as the estimate
| time :)
| dementik wrote:
| I am using it all: PoE switch, then couple injectors where it
| is needed for some specific reason and then also PoE splitters
| (one cable leaving from PoE switch, going to splitter and then
| to 4 different PoE cameras, powering everything with one PoE
| output from switch).
|
| I would not use WiFi cameras. Standard RTSP PoE h264 is the way
| to go.
| graphe wrote:
| Check out the Nvidia Tesla P4. It's basically an uncooled low
| profile 1080 8GB.
| ThatPlayer wrote:
| If you have a newer intel-based PC, you might not even need the
| Coral. Frigate added support for Intel's OpenVINO. They're also
| adding support for the RK3588's rockchip npu, but it's still
| newer so I wouldn't recommend unless you like tinkering.
|
| For PoE, I'd just do whatever is convenient. I've done setups
| with 2 PoE switches before so I could just run one cable
| between the front/back and then branch out from there.
| j45 wrote:
| Single PoE switch works well, they are inexpensive. If you have
| Poe injectors that can work too.
|
| Wifi cameras are more for convenience than reliability or
| dependancy.
| adamsb6 wrote:
| PoE switch with a big UPS so that recording does not stop in
| case of power outages.
| giobox wrote:
| > what do people typically use to power the cameras? A single
| PoE switch, or multiple PoE injectors?
|
| It basically doesn't matter at all - I have a mixture of both
| in my home, multiple PoE switches and multiple PoE injectors
| for things like cameras, wireless APs etc. Use whatever fits
| needs/budget/location, you don't have to go nuts buying a
| single high end PoE switch. There's often good deals to be had
| on used PoE switches on ebay etc too if really budget
| conscious.
|
| The only real advantage of going with a single or fewer PoE
| switches is you have less things to put on a UPS, if you
| require the system to still work when power goes down. A UPS
| that can run say 4 cameras, the PoE switch and a system running
| Frigate for more than a few hours can get pretty expensive too,
| in my experience - most cheap UPSes are designed to get you
| enough power to save some files and shutdown a PC in a matter
| of minutes, not hours.
|
| Cheap intel box with a Coral runs Frigate fantastically, and if
| a tower build plenty of room for internal storage drives.
| orangepurple wrote:
| Consider checking if you can compute everything on a single
| Orange Pi 5 first. It seems that preliminary support has been
| merged!
|
| https://github.com/blakeblackshear/frigate/pull/8382
| nagisa wrote:
| I am testing Frigate for a couple months now. It is a very
| ambitious project and I would love to see it succeed.
|
| Here are the observations:
|
| * You don't actually _need_ hardware decoding or a Coral, but
| they do help. You will of course need to provision more CPU
| horse-power for NVR. * Motion detection uses the usual
| implementation from OpenCV. Unfortunately this algorithm is not
| very good in my experience. Many things I would consider as
| motion are missed (false negative), many things I would not
| consider motion are being detected (false positive). These
| factors mean that one is tempted to go ham on masking to filter
| out false positives, which then leads to further false negatives.
| I'm genuinely surprised the motion algorithm that's implemented
| in OpenCV is still the state of art of what's available openly. *
| Object detection is somewhat knee-capped by the models available
| publicly. They are not very good either. Frigate has built its
| behaviour around these models with an assumption that these
| models are largely pretty accurate, which in my experience has
| ended up with quite a few missed recordings for important events,
| which led me to switch to create recordings based on motion (I'm
| not in a very densely populated area and reviewing the recordings
| isn't too onerous.) * Support for coral is... shaky at best.
| There are some indications that the production of these devices
| has largely stopped (and finding them to purchase is hard and
| expensive,) and maintenance of the drivers and libraries to
| interface with coral seems to be minimal or non-existent to the
| point where some Linux distributions have started dropping the
| relevant packages from their repositories. On the upside, running
| these models on the CPU isn't _that_ expensive, especially
| considering that the models are invoked very sparingly.
|
| I'm currently thinking of moving over to continuous recording,
| perhaps trying out moonfire-nvr or mayhaps handwriting a
| gstreamer pipeline. Simple software -> fewer failure modes.
|
| (NB: I worked at a computer vision startup in the past, my views
| are naturally influenced by that experience.)
| englishspot wrote:
| > Support for coral is... shaky at best. There are some
| indications that the production of these devices has largely
| stopped (and finding them to purchase is hard and expensive,)
| and maintenance of the drivers and libraries to interface with
| coral seems to be minimal or non-existent to the point where
| some Linux distributions have started dropping the relevant
| packages from their repositories.
|
| I've recently gone through the process of trying to install
| pycoral on Rocky Linux 9. I had to build from source, and there
| was some challenge because documentation for the build process
| was sparse. There was some conflicting information about files
| I had to edit, values I had to set, what was supported and what
| wasn't.
| scottlamb wrote:
| > I'm currently thinking of moving over to continuous
| recording, perhaps trying out moonfire-nvr or mayhaps
| handwriting a gstreamer pipeline. Simple software -> fewer
| failure modes.
|
| Moonfire's author here. Please do give it a try! Right now it's
| a little _too_ simple even for me, lacking any real support for
| motion or events. [1] But I 'd like to keep that simple server
| core that just handles the recording and database
| functionality, while allowing separate processes to handle
| Frigate-like computer vision stuff or even just on-camera
| motion detection, and enhance the UI and add stuff like MQTT/HA
| integration to support that well. I'd definitely welcome help
| with those areas. (And UI is really not an area of expertise of
| mine, as you can see from e.g. this bug:
| <https://github.com/scottlamb/moonfire-nvr/issues/286>.)
|
| For now I actually run Moonfire and Frigate side-by-side.
| They're almost complete opposites in terms of what they
| support, but I find both are useful.
|
| [1] The database schema has the concept of "signals"
| (timeseriesed enums like motion/still/unknown or door open/door
| closed/unknown), but my code to populate that based on camera
| or alarm system events is in my separate "playground" of half-
| finished stuff, and the crappy UI for it is rotting in one of
| my working copies. I'd like Moonfire's database/API layer to
| also have a more Frigate-like concept of "events" and one of
| "object tracks".
| pinetroey wrote:
| I've been following the project from a distance. I'm waiting for
| proper nix support to test it.
| preek wrote:
| I've been using Frigate for six months on a raspberry pi 4 with a
| Google Coral TPU. It's connected to 2 network cameras streaming
| in 2mp each.
|
| Frigate standalone works super smooth with no hiccups at all. I
| am using object detection for people and have not yet had a false
| positive or false negative. Additionally, I record not only the
| events, but but also a 24/7 video. Frigate takes care of garbage
| collecting old assets.
|
| I have it hooked up to my Home Assistant running on the same
| raspberry pi. From there, I get notifications to my phone which
| include a live video, snapshot and video recording. The UX and
| configuration options are way better than any commercial end user
| product I have found.
|
| It's been a literal lifesaver, also fun and easy to use. Would
| recommend 10 of 10. I have no affiliation with the maintainers.
| giobox wrote:
| I've also used the same solution, although I ended up scaling
| from a Pi to a larger 13th gen Intel box with two USB Corals
| due to number of cameras. It's been ridiculously reliable
| running from a docker compose stack for years now, including
| using Watchtower to auto-upgrade the Frigate container. It's
| really easy to map the corals via docker compose as well.
|
| It's nuts how cheaply you can make such a good system with AI-
| detection features, its more than paid for itself vs commercial
| options with monthly fees. High quality weatherproof PoE
| cameras are crazy affordable now too, and you can VLAN them off
| your home network with no connection to the internet to further
| harden the system.
| nyargh wrote:
| I have almost exactly the same setup, except using the intel
| gpu for accelerated inference with an OpenVINO Yolo model and
| HA for notifications. Super reliable.
| chrisweekly wrote:
| "literal lifesaver" what did it actually do?
| wrboyce wrote:
| Yeah, I agree Frigate is brilliant but I would love to hear
| how it has literally saved OP's life! There must be a story
| behind that.
| massung wrote:
| It looks awesome and I look forward to trying it out.
|
| Curious how you claim zero false negatives though (as in
| missing a person it should have detected), unless you're
| reviewing all the data or have another system hooked up to it
| verifying? Or perhaps you simply mean to imply nothing bad has
| happened due to a missed detection?
|
| In curious hope it did during Halloween with all the costumes?
| Are you able to have it pre alert you that kids are coming to
| the door?
| nyargh wrote:
| Really the best NVR / motion detection out there. Incredibly good
| camera support through go2rtc and ffmpeg. Supports accelerated
| video codecs via ffmpeg. You can use your own Yolo weights and
| models for object detection. There are some that are trained for
| high angle person detection that are great for surveillance
| cameras, for example.
|
| Frigate also has pretty solid OpenVINO support now which means
| accelerated inference on modern-ish intel cpu/gpus, which is a
| game changer when you have several cameras.
|
| Great docs, too.
| yobid20 wrote:
| How does this compare to Blueiris?
| wiktor-k wrote:
| I wonder if Frigate runs on Arm SBCs such as
| https://www.hardkernel.com/shop/odroid-m1s-with-8gbyte-ram/ ?
| xrd wrote:
| OK. I have a bunch of ring cameras and cannot get them connected
| to Amazon anymore. The person that sold the house didn't leave
| the packaging, and the Amazon app does not allow connection to
| the temp wifi; you must scan the QR code or enter the serial
| number? I've never been able to get them reconnected since the
| Hurricane last year.
|
| Can I somehow use these with Frigate? Is there a way to root
| these Ring cameras and use them?
|
| I never liked the idea of paying a service fee, nor having Amazon
| pull the videos into their free neighborhood watch program.
|
| Any suggestions on using them now?
___________________________________________________________________
(page generated 2023-11-18 23:00 UTC)