I'm planning to do a NVR with a Raspberry Pi 3. I want to record video from 8 IP cameras at 640x480@24fps with motion detection implemented in the Raspberry Pi (using motion or OpenCV probably) so the motion detection will be running for all the 8 cameras at the same time but not the recording.

I will be storing the videos on an external USB HDD. Is the Raspberry Pi 3 capable of this or it's too much? Let's say I want to record the video from the 8 cameras at the same time, how much CPU power do I need?

If the Raspberry Pi 3 is not capable of this, will something like a Banana Pi M2 Ultra do it? Or a A20 Cubietruck? Or maybe some X86 board with an Intel Braswell with an Atom E8000 like the SolidPC Q4?

I would like to know what kind of CPU power I need before spending the money. I know there are commercial NVR solutions that can make this with no problems at all but I'm willing to play with this :)


The Pi3 has more CPU power than the A20 and bit more than the BananaPi. But in order to monitor 8 different cameras, it may not be enough, even if it is only for simple motion detection.

Implementations like OpenCV can run on the CPU, but they can also run on the GPU, so the last part of your question should be expanded to what proper hardware would be able to run this. You need a strong CPU, strong GPU, and plenty of RAM for each (separately), and the RAM needs to be fast, too.

In addition, some cameras have the ability to encode the stream, while others do not, so this will greatly impact your implementation and it's performance.

I've implemented motion detection (using OpenCV) on a BeagleBoneBlack (it has way less power than a Pi3), and although the motion detection was more complex than a simple "is there something in front of the camera", a only running this for a single camera was a struggle, it definitely wasn't real-time.

For an idea on where to start, look at the hardware specs of a commercial NVR solution, but you're probably looking at an entry-level desktop with a dedicated graphics card.

  • 1
    Yeah, I think the OP is really underestimating how much horsepower 8 cameras will require... A decdnt dedicated graphics card is definitely going to be needed. – Jacobm001 Feb 16 '17 at 6:50
  • I see, I underestimating the task, thank you very much for your answer! I will have to use some camera which already provide motion sensing I guess. Recording is not expensive at all if no transcoding is performed. – Andres Feb 16 '17 at 19:14

Have you tried below.. I just came across it and will be giving a try in couple of days..


  • 1
    Please consider expanding this. Link-only answers are generally frowned upon raspberrypi.meta.stackexchange.com/questions/850/… and expanding it will make it more likely to attract up-votes. – Bex Aug 25 '17 at 6:04
  • For those hesitating about clicking that link: this is just the usual basic, vanilla setup with motion (and not even some proper external storage). – Sz. Jun 29 '19 at 13:27

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.