HDD/SSD usage and size recommendations

reddshack

n3wb
Joined
Aug 15, 2017
Messages
6
Reaction score
3
Finally got my setup started by buying a refurb OptiPlex 7050. I'm going to add a SSD/NVMe and WD Purple HDD for BI and its clips. I'll be running ~8 cameras at 8MP each. I'm not sure what my retention will be yet.

What is your experience for data usage per drive type? And how big of drives would you recommend for the WD Purple for recording and SSD for BI clips?
 

reddshack

n3wb
Joined
Aug 15, 2017
Messages
6
Reaction score
3
Thanks for the link, that's super helpful in determining the HDD storage. Looks like I'll be cutting back on megapixels to something a little more reasonable for usage.
 

bp2008

Staff member
Joined
Mar 10, 2014
Messages
12,681
Reaction score
14,043
Location
USA
Ack, no, don't use specialized calculators for this. They are terrible. Learn the basics and calculate it for yourself.

For example using the WD calculator linked above, I put in 1 camera, 1 day of storage, H.264, at 4K resolution and 10 FPS. It said you will need 0.363 TB (or 363 GB). That is so far off it is crazy. I did the math. You'd have to be recording at a bit rate of 33.6 Mbps for that to be accurate. (0.363 TB / 24 hours) to Mbps - Google Search

Increase the frame rate in their calculator to 30 FPS and now they recommend 1.089 TB, which means a bit rate of 100.8 Mbps. That is just astoundingly unrealistic for an IP surveillance camera.

I give Western Digital a solid F on their surveillance storage calculator.

So. Here is how to do it right.

To calculate required storage space, you only need to know two things: The average bit rate, and the amount of time. Then multiply them together with Google, being careful to use the correct units. When describing streaming bit rates and network speed, we typically use "bits" per second. Bits is represented by a lower case 'b'. Hard drive capacity is usually discussed in "bytes" abbreviated with a capital 'B'. Don't confuse them. People get this wrong all the time. Even internet providers.

Mbps = megabits per second. Typically used for describing internet and LAN speeds or audio and video bit rates.

MB/s = megabytes per second. Typically used for describing hard drive or SSD speed and file transfer rates.

MB = megabyte (1 million bytes)
Mb = megabit (1 million bits)

1 byte = 8 bits

Anyway,

One 8MP camera at, say, 15 FPS, is going to do just fine between 8 and 16 Mbps bit rate. In fact you might be limited by the camera's encoder and not be able to reach 16 Mbps. Lets assume you use a bit rate of 8 Mbps. Punch that into google and it conveniently gives you the answer in gigabytes.

Correct calculation: 8 Mbps * 1 day

Incorrect calculation: 8 MBps * 1 day

Now you said you are going to use 8 cameras. You can just multiply by 8 to get results for 8 cameras. 8 Mbps * 1 day * 8

Of course 1 day isn't very long. Lets assume you want to record for a week. 8 Mbps * 1 week * 8

You can do other neat things too, like take a hard drive size and divide by a bit rate. Lets assume you have a 6 TB drive.

6 TB / (8 Mbps * 8) = 8.68 days

Of course we all know that formatted, usable capacity is always lower than the advertised capacity. You usually get to store around 90% of the advertised capacity. So we can improve the accuracy of the calculation:

(6 TB * .9) / (8 Mbps * 8) = 7.81 days
 
Last edited:
Joined
Apr 26, 2016
Messages
1,090
Reaction score
852
Location
Colorado
@bp2008 Is there an easy way to determine the "average bit rate", as I believe it must vary based on scene and effectiveness of compression against the scene?

I took your calculation, and I conveniently have a remote camera on a router so over a long period of time I have the average (42.30KBps) for that one remote camera with minimal overhead. Google gives the result of: 42.24KBps * 24 hours as 3.649 GB and I can confirm that my recordings from that camera take up 1.02 to 1.09GB per 8-hour period so that value is ultra close.

My question is in a complicated configuration without the benefit of a meter to give you the average, and lacking years of install experience, what is the best way for the novice to get an approximate range for that average bit rate number (either per camera or total bitrate). Right now I just record for a day, and multiply the total files * number of days I want to keep, if I make a change up/down on FPS or "Encode Quality" I have to rinse and repeat.
 

bp2008

Staff member
Joined
Mar 10, 2014
Messages
12,681
Reaction score
14,043
Location
USA
When using constant bit rate (CBR) encoding, it is easy, since the specified bit rate is the average (more or less).

With variable bit rate (VBR) however there is no easy answer. If you want to know the average you have no choice but to measure what the camera actually produces, and that will likely change over time, day to night, season to season. At least with VBR you still set a maximum bit rate so you can use that in your calculations to figure out how much storage you need in the worst-case scenario.
 

reddshack

n3wb
Joined
Aug 15, 2017
Messages
6
Reaction score
3
thanks @bp2008!

Anyone have thoughts on the SSD size for OS and BI clips? I'm wondering if I can get by on 128gb or if I should splurge and get 256gb - 512gb.
 

bp2008

Staff member
Joined
Mar 10, 2014
Messages
12,681
Reaction score
14,043
Location
USA
You don't need an SSD for the clips. Mechanical hard drives are a lot more cost-effective. Seagate SkyHawk or Western Digital Purple are designed specifically for surveillance video recording workloads.

You don't need an SSD for the OS either. SSDs mostly help with boot times and application start times, but that is inconsequential for an always-on Blue Iris server.

Blue Iris recommends putting its clip database on your fastest drive (e.g. SSD), but if I'm being honest I never notice a difference.

If you decide to put the OS + BI's clip database on an SSD anyway, 128GB will be more than large enough.
 

xtropodx

Getting the hang of it
Joined
Apr 30, 2017
Messages
139
Reaction score
40
To calculate required storage space, you only need to know two things: The average bit rate, and the amount of time.

One 8MP camera at, say, 15 FPS, is going to do just fine between 8 and 16 Mbps bit rate. In fact you might be limited by the camera's encoder and not be able to reach 16 Mbps. Lets assume you use a bit rate of 8 Mbps.
Great write up. Had to re-read this a few times though as I was mixing up your use of 8MP with 8Mpbs, & I don't understand how/where you got 8-16Mbps figure from.
For a novice, where/how do you find, locate or calculate the Mbps?

EDIT: nvr, it's in the camera settings lol ie :facepalm:
Max. Bitrate: 4096 Kbps so4096 Kbps * 1week * 8 cameras:D
 
Last edited:
Top