camera_h264avc_parameters_t

The list of supported video encoder parameters for H.264/AVC

Synopsis:

typedef enum {
    CAMERA_H264AVC_BITRATE = 0,
    CAMERA_H264AVC_KEYFRAMEINTERVAL,
    CAMERA_H264AVC_SLICETYPE,
    CAMERA_H264AVC_SLICESIZE,
    CAMERA_H264AVC_PROFILE,
    CAMERA_H264AVC_LEVEL,
    CAMERA_H264AVC_ENTROPYCODING,
    CAMERA_H264AVC_RATECONTROL,
    CAMERA_H264AVC_QPI,
    CAMERA_H264AVC_QPP,
    CAMERA_H264AVC_NUMPARAMETERS
} camera_h264avc_parameters_t;

Data:

CAMERA_H264AVC_BITRATE
The target bitrate or target average bitrate.
  • When the CAMERA_H264AVC_RATECONTROL parameter is set to CAMERA_H264AVC_RATECONTROL_CBR, this parameter represents the target bitrate of the encoded video.
  • When CAMERA_H264AVC_RATECONTROL parameter is set to CAMERA_H264AVC_RATECONTROL_VBR, this parameter represents the target average bitrate of the encoded video
  • When CAMERA_H264AVC_RATECONTROL parameter is set to CAMERA_H264AVC_RATECONTROL_NONE, this parameter is ignored.The units are in bits per second as an unsigned int value.
CAMERA_H264AVC_KEYFRAMEINTERVAL
The interval (in frames) between the generation of each keyframe as an unsigned int value.
CAMERA_H264AVC_SLICETYPE
The algorithm used to generate NAL slices.

The value must be set to a value from the camera_h264avc_slicetype_t enumerated type. This parameter can only be modified before you start to encode video.

CAMERA_H264AVC_SLICESIZE
The slice size as an unsigned int value.
Depending on the value you configured for CAMERA_H264AVC_SLICETYPE, the slice size is interpreted as follows:
CAMERA_H264AVC_PROFILE
The profile used to encode the video.

The value must be set to a value from camera_h264avc_profile_t. You can only modify this parameter before you start encoding video.

CAMERA_H264AVC_LEVEL
The level used to encode the video.

The value must be set to a value from camera_h264avc_level_t. You can only modify this parameter before you start encoding video.

CAMERA_H264AVC_ENTROPYCODING
The entropy coding method to use.

The value must be set to a value from camera_h264avc_entropycoding_t. You can only modify this parameter before you start encoding video.

CAMERA_H264AVC_RATECONTROL
The rate control method used for the encoding.

The value must be set to a value from camera_h264avc_ratecontrol_t. You can only modify this parameter before you start encoding video.

CAMERA_H264AVC_QPI
The Quantization Parameter (QP) that is used to encode key (I) frames when the CAMERA_H264AVC_RATECONTROL parameter is set to CAMERA_H264AVC_RATECONTROL_NONE.

For other rate control methods, this parameter has no impact. The value being set is an unsigned int value.

CAMERA_H264AVC_QPP
The Quantization Parameter (QP) that is used to encode inter (P) frames when the CAMERA_H264AVC_RATECONTROL parameter is set to CAMERA_H264AVC_RATECONTROL_NONE.

For other rate control methods, this parameter has no impact. The value being set is an unsigned int value.

CAMERA_H264AVC_NUMPARAMETERS
An end-of-list identifier, which indicates the list of supported video encoder parameters supported by this library.

Library:

libcamapi

Description:

Use these as parameters in parameter-value pairs that you pass as an argument list to video encoder configuration functions.