camera_h264avc_ratecontrol_t

Updated: April 19, 2023

The supported rate-control algorithms for H.264/AVC

Synopsis:

#include <camera/camera_h264avc.h>
typedef enum {
    CAMERA_H264AVC_RATECONTROL_NONE = 0,
    CAMERA_H264AVC_RATECONTROL_CBR,
    CAMERA_H264AVC_RATECONTROL_VBR
} camera_h264avc_ratecontrol_t;

Data:

CAMERA_H264AVC_RATECONTROL_NONE
No rate-control algorithm is used, therefore rate control is disabled (referred to as constant quality encoding).

Constant quality encoding means that the bitrate varies with the scene content but the quality stays constant.

CAMERA_H264AVC_RATECONTROL_CBR
Constant Bit Rate (CBR) encoding is used.

This control algorithm indicates that the bitrate remains constant while quality will vary. The bitrate that is maintained is specified by the CAMERA_H264AVC_BITRATE parameter.

CAMERA_H264AVC_RATECONTROL_VBR
Variable Bit Rate (VBR) encoding is used.

This control algorithm indicates that the average bitrate remains constant while quality may vary. The average bitrate that is maintained is specified by the CAMERA_H264AVC_BITRATE parameter.

Library:

libcamapi

Description:

These are the valid values for configuring the CAMERA_H264AVC_RATECONTROL parameter. Use camera_get_supported_videoencoder_parameter_values() to determine the supported values at runtime.