This document provides an introduction to the feature Activity Controlled Frame rate (ACF). ACF rate control provides a mechanism for drastically reducing the amount of required storage by significantly reducing the frame rate of the video during periods of inactivity but returning to normal frame rate immediately upon detection of activity.
This document provides an introduction to Activity Controlled Frame rate control (ACF). ACF rate control provides a mechanism for drastically reducing the amount of required storage by significantly reducing the frame rate of the video during periods of inactivity but returning to normal frame rate immediately upon detection of activity.
When selected, ACF automatically controls the frame rate, and consequently the bitrate, of a video stream, based on the amount of activity occurring in front of the camera. During periods of activity, video is streamed using the standard video configuration for the stream. In this case ACF is said to be in an active mode. However, during periods of sustained inactivity ACF significantly reduces the necessary bandwidth and storage requirements by automatically reducing the frame rate. In this case ACF is said to be in a passive mode. The process of determining whether to switch between modes is known as activity detection.
Activity detection is achieved using an Analytics Activity Filter. As such ACF must use a Qualification process as with Analytics. Analytics and Qualification are discussed in much greater detail in [1].
This document refers to the IndigoVision 2.12.0 8000 release firmware.
This section provides a quick guide to configuring ACF. However, for best results and more detailed configuration information further reading is recommended.
Assuming that Control Center has been installed and configured, and that the transmitter has been configured for normal video operation:
1. Select Site Setup in Control Center and select transmitter to configure
2. Click on the Configure tab
3. Select Video to access the Video Configuration page
4. Choose stream for which you wish to use ACF e.g. “Stream 1”
5. Select “ACF-Filter1” from the Rate Control drop-down menu and Submit
6. In Control Center view this stream from transmitter in a Live Video pane
7. Right-click in the video pane and select Show Stream Statistics
8. Ensure no activity occurs in front of the camera for at least 20 seconds
9. Check frame rate has dropped to 1fps.
10. Check that when activity occurs video returns to normal frame rate
If the frame rate fails to drop to 1 fps, or trips back to normal frame rate for no apparent reason, you need to tune ACF for your particular application. Failure to drop to 1fps can be due to a number of factors including camera noise, vibrations, and other environmental factors. To reduce the effect of these factors:
11. Return to the Configure tab in Control Center Site Setup
12. Select Analytics to access the Analytics Configuration page
13. Optionally, use the Region Of Interest editor to remove areas with unwanted activity, such as PC monitors, trees, external windows etc..
14. For “Filter 1” lower the sensitivity value to reduce sensitivity and Submit
15. Repeat 8 through 10
For 8000 2.11.0 firmware or later combined with Control Center 2.8 or later:
1. Select Embed analytics data from the Video Configuration page and Submit.
2. Right-click on video pane in Control Center and select Show Video Analysis
3. Use the current activity level indicated by the bar marked ‘1’ (Filter 1) to aid adjustment of the sensitivity level in step 14. The horizontal white line across the vertical activity level indicator is controlled by the sensitivity value and represents the threshold over which sustained activity will cause ACF to trip from passive to active mode i.e. return to normal frame rate.
ACF is an intelligent bit rate control algorithm. It uses built-in video analytics technology to significantly reduce the required bandwidth and storage requirements during large periods of inactivity, typical in applications such as CCTV.
There are a number of distinct advantages to ACF:
ACF has two modes: active and passive. In active mode the transmitter uses the standard configuration provided by the installer exactly as shown on the Video Configuration page, an example of which is shown in Figure 2. In passive mode the transmitter uses its own internal configuration designed to reduce both required storage and network bandwidth.
Table 2 shows the values that differ between passive and active modes – the values in brackets are examples from the web page shown in Figure 2. All other parameters, such as resolution, are unaffected by ACF mode.
Parameter |
Passive mode |
Active mode |
Target Bit-Rate |
Reduced*1 (164/136) |
As per web page (4096) |
Rate Control |
Capped |
Capped |
Frame rate divisor |
25/30 on PAL/NTSC |
As per web page (1) |
I-frame Interval |
20000 |
As per web page (4000) |
Reducing the frame rate in passive mode reduces all the overhead of encoding every frame when it is simply not necessary due to the lack of activity.
Reducing the target bitrate in passive mode implies that the target number of bits per frame of video remains the same. This means that the video quality of each frame remains largely independent of the frame rate.
Increasing the I-frame interval in passive mode reduces the number of large I-frames in the stream. Although I-frames are used as access points during playback, random access at these times is less important due to the lack of activity.
The graph in Figure 1 clearly shows the benefit of ACF in storage, in which we compare the storage requirements for 4Mbps CBR stream over a 4Mbps ACF stream over the period of 1 hour. It is clear that activity is detected both after 20 and 40 minutes, with the activity lasting for several minutes in each case.

Activity detection is used to control the switching between passive and active modes and is achieved using the output from an Analytics filter. In this version of firmware this is restricted to a simple Activity Filter. ACF switches from passive to active mode when the level of activity determined by the Activity Filter exceeds a threshold level. ACF switches from active to passive mode when the Activity Filter has reported no activity for at least 20 seconds.
*1 Bitrate is reduced is by the same ratio as the frame rate divisor. For example, in Figure 2, passive mode uses 4096*1/25 for PAL or 4096*1/30 for NTSC.
Estimating the potential savings with a particular application can be calculated using the Storage Calculator provided on the IndigoVision website, or empirically using Control Center which shows the average bitrate for a camera.
In order to use ACF rate control select the “ACF–Filter 1” option in the Rate Control drop-down menu on the Video Configuration page, as shown in Figure 2. In this example the first video stream, “Stream 1” has been configured to use ACF using the Analytics Activity Filter, “Filter 1”. Figure 2: Selecting ACF rate control Once ACF has been selected and submitted check the result by viewing the video in Control Center. Of course it should be very hard to discern whether ACF is actually in active or passive mode by simply looking at the video, so instead select Show
In firmware 2.12.0 it is only possible to select Analytics Filter 1 with ACF.

Once ACF has been selected and submitted check the result by viewing the video in Control Center. Of course it should be very hard to discern whether ACF is actually in active or passive mode by simply looking at the video, so instead select Show
Stream Statistics from the Live Video drop-down menu option in Control Center. Figure 3 shows a video stream that has successfully switched into passive mode.

As with all analytics-based systems there are possibilities of false alarms. A false alarm, in the case of ACF, causes the switching from passive to active mode when no discernable activity has seemed to occur in the video. False alarms can come from a number of sources, such as trees, shadows, camera noise etc.. False alarms and Analytics are covered in far more detail in “Understanding Analytics” [1].
If having selected ACF the stream fails to switch into passive mode you can tune the Analytics Activity Filter (Filter 1) via the Analytics Configuration page, as shown in Figure 4.

In order to remove potential false alarm sources you should make use the Region of Interest editor. Click on the Edit button on the Analytics Configuration page. This will bring up the Region of Interest Editor, as shown in Figure 5.

In the example shown in Figure 5 the trees and building in the background are now ignored by the Activity Filter – always remove areas in which you are not interested as not to give it a chance to generate a potential false alarm, even though one may not be obvious at the time when you configure. In this case lights being switched on in the building opposite may trigger activity to be detected. Also notice that the bushes have been removed. These may cause false alarms with high winds.
Once you have configured and submitted a region-of-interest check to see if ACF has successfully dropped to 1fps, or remains too sensitive. If ACF remains too sensitive you can adjust the sensitivity level for “Filter 1” back on the Analytics Configuration page. See Figure 4. If ACF is too sensitive you should decrease the sensitivity value for Filter 1. Continue to adjust the sensitivity until a satisfactory level of performance is achieved.
Finally, run the system for at least 24 hours and review the results, checking for changes in behaviour, for example at night or in low light.
For 2.11.0 firmware or later (requires Control Center 2.8 or later):
In order to aid the process of configuration you can embed important configuration information in a video stream via the Video Configuration page. Figure 6 shows that “Stream 1” has this feature enabled.

To view this configuration information select the Show Video Analysis option in the Control Center video pane displaying “Stream 1”. Two level indicators will appear, as shown in Figure 7, representing the two Analytics filters, “Filter 1” and “Filter 2”. ACF uses “Filter 1” and the level indicator is marked with the numeral “1”.

The level achieved by the “Filter 1” indicator represents the current level of activity that has been detected by “Filter 1” – the Analytics Activity Filter. The white horizontal line that crosses the level indicator, about two-thirds the way up, represents the threshold over which ACF will switch between passive and active mode. Adjusting the “Filter 1” sensitivity value adjusts this threshold - the lower the sensitivity, the higher the threshold that activity must exceed to cause a mode switch. Note: ACF is robust to very short bursts of activity that exceeds the threshold.
TIP #1: |
The level indicators are updated at the frame rate of the incoming video stream, so try adjusting the “Filter 1” sensitivity in standard “CBR” mode before selecting “ACF-Filter 1” rate control. |
TIP #1: |
To help with reviewing a 24-hour ACF test, record the video stream with the Embed analytics data feature enabled. You can also use the Show Video Analysis in Control Center playback when reviewing overnight footage. |
TIP #3: |
A night poorly lit scenes can generate very high levels of noise from the camera sensor. Significant improvements in ACF performance can be achieved by removing unlit areas with the ROI editor and by simply reducing the bitrate, using the day/night option. For example, using 4Mbps 4CIF during the day, and 1Mbps 4CIF at night. |
TIP #4: |
Once you have successfully configured ACF turn off the Embed analytics data feature for the video stream, unless required, as it consumes a small overhead in bandwidth and storage. |
Analytics is the process within the 8000 transmitter of analysing the incoming video stream from the camera using various statistical techniques. This statistical information is then processed further by a set of Analytics Filters, which can be configured to perform certain tasks.
This version of 8000 firmware comes with two in-built Analytics Filters: “Filter 1” and “Filter 2”. The filter outputs are currently hard-coded to perform certain tasks.
ACF and events can be used completely independently, making it possible to configure a transmitter to use either ACF or generate events or both. Analytics generated events are covered in detail in “Understanding Analytics” [1].
When both ACF and event-generation are used in combination it is possible to configure the transmitter such that video switches from passive to active mode before an analytics event, providing all-important pre-alarm video data. This is demonstrated in Figure 8 and Figure 9.

In Figure 8 activity is detected at 18:30:08 as the door starts to open. ACF immediately switches to active mode and starts streaming high quality full frame rate video. One second later the person that started to open the door has now entered the room and consequently generated an analytics event.

Figure 9 demonstrates a similar scenario. However, in this case the person has started but not actually entered the room. As such, this correctly does not trigger an analytics event. In this case the activity has simply switched ACF into active mode, such that the incident can perhaps be examined later in detail (as running at full frame rate) when for example a motion search is run on the recording.
1. Can events be generated from Filter 1?
No. Only Filter 2 can generate events at this time.
2. Can you generate analytics-based events at the same time as using ACF?
Yes. In fact they are designed to work in parallel. See Section 5.
3. Are the passive mode ACF configuration parameters modifiable?
No. These parameters are hard-coded into the transmitter.
4. What active mode bitrate should I select?
Choose a bitrate that provides the video quality you wish to see when there
is activity. ACF will attempt to maintain the quality, at a lower frame rate.
5. Why is motion outside the ROI is of poor quality?
If significant motion does occur outside the region of interest it will be
encoded less efficiently and consequently at lower quality. As motion out with
this region is not of interest low quality video is deemed acceptable.
6. I have selected a small region-of-interest in order to exclude some constant
significant motion. Though activity is correctly detected in my ROI the
savings made with ACF are not as much as I’d hoped?
The reduced frame rate applies to all video, and not just the video in the ROI,
meaning motion outside the ROI is also encoded at a low frame rate. At low
frame rates the MPEG-4 encoder is less efficient at encoding significant
motion. As such, it is not recommended to use ACF in situations where there
is significant motion outside the ROI but within the field of view.
7. I can’t get ACF to go into passive mode?
Check that the region-of-interest has been configured correctly and the
sensitivity level for Filter 1 adjusted. See Section 4.
8. What is the smallest region-of-interest I can set?
Theoretically, it is possible to set a region of interest with only a single
detection cell. However, this is not recommended. A ROI greater than onethird
the total field of view is recommended.
9. What is the recommended minimum active mode I-frame interval?
It is recommended that the I-frame interval be left at the default of 4000ms,
though it can be lowered to 1000ms. ACF will not work on an I-frame only
bitstream.
10. Should I use ACF even when running at low frame rates in active mode?
Yes. However, the advantage of ACF at these lower frame rates is reduced.
[1] “Understanding Analytics”, IC-COD-REP017-4.3, 27 July 2006.
Term |
Definition |
ACF |
Activity Controlled Frame rate |
Active mode |
Video transmitted at normal frame rate due to activity |
CBR |
Capped Bit Rate |
False alarm |
A spurious or unwanted detection generated by a filter. |
FAR |
False Alarm Rate. Number of false alarms over set time period. |
Passive mode |
Video transmitted at reduced frame rate due to inactivity |
ROI |
Region Of Interest |