30 ms·
Show HN: CheapSecurity – Lightweight, Self-Hosted CCTV for Linux SBCs
- ibejoeb 2mo agoAnyone have camera suggestions? I've got 2 spare raspi 5s that would probably be a good base.
- ranger_danger 2mo agoIn my experience, budget USB cameras are not reliable as a long-term solution because they randomly stop working in different ways after days of use and must be power-cycled. Instead I would suggest either a direct CSI connection or an external GigE camera.
- fy20 2mo agoI'd just bite the bullet and get proper security cameras. I got a few 4K something or other from Ankke (rebranded HikVision) 5 years ago and they still work fine. They were about €100 each.
- ranger_danger 2mo agoFor those that don't know, Hikvision is banned in several countries now due to both cybersecurity reasons and human rights violations: https://ipvm.com/reports/hikua-bans https://ipvm.com/reports/hikua-bans I have also tried many other IP camera brands over the years, but it seems none of them have figured out how to output fully compliant RTP/RTMP/etc. streams so I end up always having strange and random problems receiving fluid streams from them into a central server. Coupled with the fact that many brands are just using the same recycled white-label Chinese firmware, I'm not surprised. Would love better recommendations though if any exist.
- Namidairo 2mo ago> I have also tried many other IP camera brands over the years, but it seems none of them have figured out how to output fully compliant RTP/RTMP/etc. streams so I end up always having strange and random problems receiving fluid streams from them into a central server. Another issue is semi-compliant ONVIF implementations for PTZ cameras and/or not having relative movement implemented. Or you know, just lacking RTSP and ONVIF entirely. > Coupled with the fact that many brands are just using the same recycled white-label Chinese firmware, I'm not surprised. SDKs for many of the SoCs not being available is really annoying as well. Some of the Ingenic, Sigmastar, Goke etc. are available, but I think many were just leaks from customers rather than intentional releases.
- Fabricio20 2mo agoI've had some great success with Reolink. Decent video quality and the software is made with RTSP/RTMP support in mind, including a proper web portal on the camera so you don't even need the phone app for setup. Not too sure if you are looking for non Chinese manufactured though, down here anything else is just way too expensive and lower quality anyway!
- zeldone 2mo agoI was able to keep everything running without a reboot for more than 3 weeks.
- dvno42 2mo agoOld Axis cams show up on eBay. Those are pretty standards oriented and easy to work with. Most hanwah and some Samsung are fine too.
- kotaKat 2mo agoArecont Vision cameras are fun too. Casino mode, anyone? "This feature ensures continuous full-motion recording at 30 frames per second (fps) to comply with gaming industry regulations. Casino Mode guarantees that the frame rate will not dip below 30 fps by forcing automatic bit rate and exposure control to maintain specific predetermined settings." [1] https://www.retailitinsights.com/doc/arecont-vision-adds-casino-mode-to-full-hd-0001 https://www.retailitinsights.com/doc/arecont-vision-adds-cas...
- npodbielski 2mo agoI always wonder why author of such software will not add some screenshot or gif showing UI and how it does work? In features there is mention of web interface.
- zeldone 2mo agoUpdated. You have a gif now that shows a preview of the interface.
- mattlondon 2mo agoHow does this handle motion detection? Anyone tried it? I have a bunch of Nest cameras and some cheaper Tapo cameras. The "motion detection" is night and day different. The Tapo does some basic frame-diffing and it's awful. Shadows? DING DING DiNG MOTION DETECTED! gust of wind made some blades of grass move? Motion! Spider? Motion motion motion! Turn down the sensitivity a notch or two and it won't notice a human walk across the frame 2 meters away. The Tapo ones claim to be smart but twigs and leaves still trigger pet/person/motion alerts. It makes them essentially useless. The Nest cameras are so much better and their "human" detected is usually zero-false-negatives at the cost of one or two false-positives perhaps once every 3 or 4 months, and their app is superior (tapo one frequently needs to be false-killed to load clips). Yes I am aware that the nest ones are streaming back to google 24/7. Tldr: naive frame-diffing sucks for this sort of thing if used outside. An open source implementation that has accurate and reliable "human detection" would be amazing. Doesn't need to be "AI" - I would hope that there is some sort of computationally reasonable OpenCV way of doing person detection. Perhaps wait for frame-diffing to flag motion then feed it to a more expensive algorithm?
- genericacct 2mo agoTry the motion Linux package, it can connect to tapos over SDP and then you can run Yolo or any other solution on the output
- atmosx 2mo agoSeriously… how hard is it to setup an RPi with a camera and offload the detection to some open source software? Last time I checked there projects performing animal, face and even license plates reckon, extraction and db recording of “who”, “when”, “what” using cheap cameras and an RPi.
- Fabricio20 2mo agoIt's actually pretty darn easy nowadays and i'm so glad its the case! Frigate is amazing and the detection package is of your choosing (hardware dependant) and everything is customizable too.
- drnick1 2mo agoWhat is the difference between this and Frigate? Before clicking the link, I thought this would be a hardware solution (build you own camera from open components).
- acidburnNSA 2mo agoFrigate is so amazing. The lightweight object detectors plus home assistant automations and notifications are way too fun and powerful. I keep setting up new systems for family members after they see mine.
- dns_snek 2mo agoWhich cameras do you use with it? Frigate + Thingino has been a constant source of stability issues for me, I've given up on it. Finding the right combination of parameters that had <2s latency, working audio, and didn't cause the stream to crash constantly seemed impossible.
- zeldone 2mo agoThe difference is that you have a spare board.... a webcam lying around somewhere, and you put them together to run some CCTV. That's all :)
- serf 2mo ago`motion` is in the big hall of fame for 'software other things are based on' next to imagemagick and curl.
- ripe 2mo agoFor those (like me) who don't know what "motion" refers to here, it's Motion Project, an open-source program to monitor multiple cameras and trigger real-time hooks based on motion detection, etc.: https://motion-project.github.io/index.html https://motion-project.github.io/index.html
- kube-system 2mo agoMy question about this project and the numerous similar projects: where do I get a usb camera suitable for this? Webcams typically have unsuitable enclosures, focus behavior, and low light performance.
- drnick1 2mo agoI am not familiar with this particular project, but generally speaking, you don't want a USB camera for CCTV. You want an IP camera with POE and RTSP support.
- wildzzz 2mo agoWith the price of SBCs nowadays, you'll probably save some money just buying an ip camera. In 2018, I had a project where I needed to capture live video of some test equipment that was in an area off limits to humans. I could get measurements remotely but just not fast enough to stop the test if something went wrong. We also had no idea what to expect if something went wrong so there was no way to setup a trigger for a screengrab. We had zero funds for buying anything, PM told me to beg, borrow, or steal what I needed. I got a couple of old laptops and webcams from IT and built my own version of this using a slick ffmpeg one-liner to record locally and stream to another laptop outside the off limits area. I did have to buy a USB 3.0 ExpressCard, which I kept, because turns out you can't run multiple webcams through the single USB hub every port branched off from (even the docking station ports). It worked great.
- dspillett 2mo ago> With the price of SBCs nowadays, you'll probably save some money just buying an ip camera. The post you replied to very specifically mentioned using an IP camera. Unless you are paying “proper” money per camera, these days most of them are limited out-of-the-box in ways that are intended to drive you to paying a subscription service to have the recordings stored and processed (and presumably used for AI training whether you agree or not) on someone else's server. The point of this, and other similar projects, is to host that target server yourself to maintain control and privacy. Where it says “such as […] a USB webcam” I assume it is using the same components and libraries that other options do and so will support common IP camera outputs easily too (assuming your camera doesn't protect its feed, or protects it badly, or you can flash it with alternate firmware that doesn't try to lock you in that way), and where it says “such as a spare Linux board …” spare here implies the target audience is people who are likely to have a spare board/box (or resource spare on their home-lab to host an extra container/VM) available so don't need to buy one at current prices.
- lormayna 2mo agoWhat are the difference with systems like Motion (https://motion-project.github.io/4.0/motion_guide.html https://motion-project.github.io/4.0/motion_guide.html) ?
- zeldone 2mo agoMotion is a great software and it overlaps with CheapSecurity. However this software pretend to be: 1. a single-camera-per-instance CCTV with a web dashboard and Telegram bot (motion is a full-featured NVR/motion daemon: multi-camera, masks, timelapse, SQL logging, external triggers, etc...) 2. One independent process per camera; multi-camera is done by running multiple instances. (motion is multi-camera support in one process) 3. Small Flask dashboard with live stream, settings toggles, and bulk actions on recordings. (motion is functional stream/status pages) 4. Specifically optimized for low-power ARM boards like the Odroid XU4 5. Last but not least small Python/Flask/OpenCV codebase, easy to hack on... That's it
- ashish01 2mo ago[dead]
- synergy20 2mo agoV4L2 (MJPG) -> cap.read() -> CLAHE(night) -> imencode -> _current_frame (web MJPEG) -> resize .25 -> gray -> blur -> absdiff -> contours -> motion? -> motion? VideoWriter.write() : pre_buffer.append(jpeg) -> on stop: ffmpeg remux fps fix -> Telegram/email a mjpeg system basically, all in python but does need opencv
- madduci 2mo agoPorting it to C++ should bring also a lot of improvements in terms of.performance
- zeldone 2mo agoCorrect! But I have to be honest... I do not like the night vision since with a consumer webcam is not working very well... I will test with a cheap camera that support by default night vision... I will keep you posted!
- zeldone 2mo agoCorrect! But I have to be honest... I do not like the night vision since with a consumer webcam is not working very well... I will test with a cheap camera that support by default night vision... I will keep you posted!
- deleted 2mo ago[deleted]