IDS peak AFL v1.8.0
Loading...
Searching...
No Matches

Frame processing optimization by skipping frames to reduce computational load. More...

Functions

PEAK_AFL_API_STATUS peak_afl_AutoController_SkipFrames_IsSupported (peak_afl_controller_handle controller, peak_afl_BOOL8 *supported)
 Check if skip frames feature is supported for a controller.
 
PEAK_AFL_API_STATUS peak_afl_AutoController_SkipFrames_Set (peak_afl_controller_handle controller, uint32_t count)
 Set number of frames to skip for a controller.
 
PEAK_AFL_API_STATUS peak_afl_AutoController_SkipFrames_Get (peak_afl_controller_handle controller, uint32_t *count)
 Get the current skip frames count for a controller.
 
PEAK_AFL_API_STATUS peak_afl_AutoController_SkipFrames_GetRange (peak_afl_controller_handle controller, uint32_t *min, uint32_t *max, uint32_t *inc)
 Get the valid range for skip frames count.
 

Detailed Description

Frame processing optimization by skipping frames to reduce computational load.

The Skip frames setting defines how many frames should be skipped between processing operations. This parameter strongly influences both control speed and system stability.

How Skip Frames Works

When skip frames is set to N, the controller will:

Example: Skip frames = 3 means process every 4th frame (process 1, skip 3, process 1, skip 3...)

Dynamic Adjustment

Skip frames can be adjusted dynamically based on conditions:

Note
For higher frame rates, a larger value should be used for the Skip frames parameter. This reduces the number of automatic adjustments and improves system stability.
Different controllers can have different skip frame settings optimized for their specific requirements.

Function Documentation

◆ peak_afl_AutoController_SkipFrames_Get()

PEAK_AFL_API_STATUS peak_afl_AutoController_SkipFrames_Get ( peak_afl_controller_handle controller,
uint32_t * count )

Get the current skip frames count for a controller.

Retrieves the current skip frames configuration for the specified controller. This value determines how many frames the controller skips between processed frames. For example, a count of 2 means the controller processes every 3rd frame (skipping 2 frames). A count of 0 means no frames are skipped (every frame is processed).

Parameters
[in]controllerController handle to query for skip frames count
[out]countPointer to receive the current number of frames skipped between processed frames.
  • 0: Process every frame (no skipping)
  • 1: Process every other frame (skip 1 frame)
  • 2: Process every 3rd frame (skip 2 frames)
  • etc.
Returns
PEAK_AFL_STATUS_SUCCESS Skip frames count retrieved successfully
PEAK_AFL_STATUS_NOT_INITIALIZED The library is not initialized
PEAK_AFL_STATUS_INVALID_PARAMETER Invalid controller handle or NULL count pointer
PEAK_AFL_STATUS_NOT_SUPPORTED Skip frames feature is not supported by this controller
PEAK_AFL_STATUS_ERROR An unexpected internal error occurred
Note
Check support with peak_afl_AutoController_SkipFrames_IsSupported() before calling
Use peak_afl_AutoController_SkipFrames_GetRange() to determine valid count values
This function returns the current setting, not the number of frames actually skipped
See also
peak_afl_AutoController_SkipFrames_IsSupported()
peak_afl_AutoController_SkipFrames_Set()
peak_afl_AutoController_SkipFrames_GetRange()
Since
1.0

◆ peak_afl_AutoController_SkipFrames_GetRange()

PEAK_AFL_API_STATUS peak_afl_AutoController_SkipFrames_GetRange ( peak_afl_controller_handle controller,
uint32_t * min,
uint32_t * max,
uint32_t * inc )

Get the valid range for skip frames count.

Retrieves the minimum, maximum, and increment values for the skip frames count that are supported by the specified controller. This information is essential for determining valid values to use with peak_afl_AutoController_SkipFrames_Set(). The range may vary between different controller types and implementations.

Parameters
[in]controllerController handle to query for skip frames range
[out]minPointer to receive minimum number of frames that can be skipped. Typically 0 (no skipping). May be NULL if not needed.
[out]maxPointer to receive maximum number of frames that can be skipped. May be NULL if not needed.
[out]incPointer to receive increment step for skip frames count. Usually 1, meaning any integer value in the range is valid. May be NULL if not needed.
Returns
PEAK_AFL_STATUS_SUCCESS Range information retrieved successfully
PEAK_AFL_STATUS_NOT_INITIALIZED The library is not initialized
PEAK_AFL_STATUS_INVALID_PARAMETER Invalid controller handle
PEAK_AFL_STATUS_NOT_SUPPORTED Skip frames feature is not supported by this controller
PEAK_AFL_STATUS_ERROR An unexpected internal error occurred
Note
Check support with peak_afl_AutoController_SkipFrames_IsSupported() before calling
Any of the output parameters can be NULL if that information is not needed
Use this function to validate skip frames values before setting them
The increment value indicates the step size for valid skip frame counts
See also
peak_afl_AutoController_SkipFrames_IsSupported()
peak_afl_AutoController_SkipFrames_Set()
peak_afl_AutoController_SkipFrames_Get()
Since
1.0

◆ peak_afl_AutoController_SkipFrames_IsSupported()

PEAK_AFL_API_STATUS peak_afl_AutoController_SkipFrames_IsSupported ( peak_afl_controller_handle controller,
peak_afl_BOOL8 * supported )

Check if skip frames feature is supported for a controller.

Determines whether the specified controller supports the skip frames feature. Skip frames allows controllers to process only every N-th image instead of every image, which can be useful for performance and stabilization optimization or when full frame rate processing is not required. Not all controller types support this feature, and support may vary based on the specific implementation.

Parameters
[in]controllerController handle to check for skip frames support
[out]supportedPointer to receive support status:
  • PEAK_AFL_TRUE: Skip frames feature is supported
  • PEAK_AFL_FALSE: Skip frames feature is not supported
Returns
PEAK_AFL_STATUS_SUCCESS Operation completed successfully
PEAK_AFL_STATUS_NOT_INITIALIZED The library is not initialized
PEAK_AFL_STATUS_INVALID_PARAMETER Invalid controller handle or NULL supported pointer
PEAK_AFL_STATUS_ERROR An unexpected internal error occurred
Note
Check this function before attempting to use skip frames functionality
Support may vary between different controller types
Even if supported, there may be limits on the skip frame count range
See also
peak_afl_AutoController_SkipFrames_Set()
peak_afl_AutoController_SkipFrames_Get()
peak_afl_AutoController_SkipFrames_GetRange()
Since
1.0

◆ peak_afl_AutoController_SkipFrames_Set()

PEAK_AFL_API_STATUS peak_afl_AutoController_SkipFrames_Set ( peak_afl_controller_handle controller,
uint32_t count )

Set number of frames to skip for a controller.

Configures the skip frames behavior for the specified controller. When skip frames is enabled, the controller will only process every N-th image, where N is determined by the count parameter. For example, setting count to 2 means the controller will process every 2nd image (skipping 1 frame between processed frames). This feature can be used to reduce computational load or when full frame rate processing is not required.

Parameters
[in]controllerController handle for which to set skip frames behavior
[in]countNumber of frames to skip between processed frames.
  • 0: Process every frame (no skipping)
  • 1: Process every other frame (skip 1 frame)
  • 2: Process every 3rd frame (skip 2 frames)
  • etc.
Returns
PEAK_AFL_STATUS_SUCCESS Skip frames count set successfully
PEAK_AFL_STATUS_NOT_INITIALIZED The library is not initialized
PEAK_AFL_STATUS_INVALID_PARAMETER Invalid controller handle or count value out of range
PEAK_AFL_STATUS_NOT_SUPPORTED Skip frames feature is not supported by this controller
PEAK_AFL_STATUS_ERROR An unexpected internal error occurred
Note
Check support with peak_afl_AutoController_SkipFrames_IsSupported() before using
Use peak_afl_AutoController_SkipFrames_GetRange() to determine valid count values
Setting count to 0 disables frame skipping (processes every frame)
Changes take effect for subsequent image processing operations
Skip frames behavior is independent for each controller
See also
peak_afl_AutoController_SkipFrames_IsSupported()
peak_afl_AutoController_SkipFrames_Get()
peak_afl_AutoController_SkipFrames_GetRange()
Since
1.0