I run Frigate with 5 IP cameras (3 Hikvisions, 2 Amcrests) and 1 USB camera. I'm using a USB Coral TPU, which does a good enough job that Frigate can keep up with an average of only 30% CPU usage on an old Dell with 4 core i7-6700.
Frigate's better than anything else I tried, but not perfect. As mentioned in another thread, it has some issues with codecs from some cameras (playing clips from Amcrests is fine, Hikvisions not so much) and therefore you may need to transcode. Also it has no built in option for sending your recorded clips offsite; theoretically you could mirror its storage directory, but as far as I've found it's not organized in a way that you can separate just important events.