I spend some hours this morning answering your questions.
So what to do? Many things can be tested, but finally it will depend on what you can accept in quality of the recorded files.
We use the system to record. in the morning we review all motion. There are a few alert that we need setup to text/email when movement is detected. We do need to be able to watch live streams however this is not used for that as it primary purpose. Recordings are important to be able to be high enough resolution to zoom in and see something.
-what camera is it?
They are ALL Amcrest camera purcahsed in 2017 they are a mixture of ProHD, UltraHD some are bullet cams and some PTZ here are all the ones I use
Amcrest ProHD Outdoor 1080P IP2M-844E (qty 3)
**Amcrest ProHD Outdoor 3 Megapixel IP3M-956E **
Amcrest UltraHD 2K (3MP/2304TVL) IP3M-941B (PTZ)
Amcrest ProHD Outdoor 4 Megapixel POE IP4M-1025E
Amcrest ProHD 1080P POE IP2M-841EW (PTZ)
**Amcrest ProHD 1080P POE IP2M-841EB (PTZ) **
**Amcrest ProHD Outdoor 3 Megapixel IP3M-954E **
**Amcrest ProHD Outdoor 3-Megapixel (2304 x 1296P) IP3M-943B **
Amcrest UltraHD Shield 2K IP3M-HX2
Amcrest HDSeries 720P IPM-721 (PTZ)
Amcrest ProHD 1080P IP2M-841B (PTZ)
-how many FPS do the cameras deliver?
I can set them from 1 to 30 fps All of the cams are set to either 15 to 25 FPS on both Channel (primary) and Channel 2 (Secondary)
You can set them Look at the bottom right on the video where the FPS can be seen. Is it rather constant or varying a lot?
when not recording (no motion or audio setting on they are all between 1-5 fps when I turn on motion detection on any of them it goes to about 15 fps (Fluctuates 1 or 2 FPS) if there are any movement in the camera view the FPS goes to about 18 to 20 fps
-run all cams as above in motion detection. Disable the cameras one by one and see what happens with the cpu load and when it is down to around 90% how many cameras are enabled.
It varies a little depending on any current movement but it looks like 12 cameras will put the total CPU load about 80% 13 cameras takes it to 85%
-is full HD necessary on all cameras?
No, however I would like to have a high as I can. With BlueIris, nearly all recordings are HD without any issues
-you use 126 Mbps for all cameras which makes 6 Mbits/camera. In the config of the camera it is usually possible to have a constant bit rate or variable with motion in the view. If constant is selected reduce the bitrate or use variable. Maybe more important is to reduce the FPS for the camera.
Not sure I understand what you are suggesting I test/try. The Configure features on all are turned off except for the PTZ cameras
-can you run some of the cameras in MJPEG? RTSP use h.264 for compression which use more processor power.
I have tested a few cameras in MPEG mode and the resolution is horrible, very pixilated and hard to make out anything.
-in NCS Client Settings: disable High Quality Rendering.
I did and it makes no difference
-go low on Single View Refresh Rate.
Single is set to 10 and Multi 5 (No difference in performance)
-in Recording Settings use 10 FPS which is usually enough.
Set at 15 (If I set to 10 I can run 16 cameras before the CPU hits 95%
-use Ultra fast.
( have "Preset in the recordings tab set to “UltraFast” the slider all the way to the left)
-in Decoding/Encoding Settings experiment if Hardware acceleration will help.
Hardware_DXVA2 (Works but no differnce in performance)
Hardware_QuickSync (Causes cameras not to connect)
-test if enable Multi Threading helps.
I have had Multi-threading enabled since the first started
-on the server is memory usage rather high. Is something else running or loaded?
I had some Chrome Tabs open without Chrome and IE open the memory is around 25% NCS uses about 2GB