Program Listing for File VideoEncoderProperties.hpp
↰ Return to documentation for file (include/depthai/properties/VideoEncoderProperties.hpp)
#pragma once
#include <depthai/common/optional.hpp>
#include "depthai/properties/Properties.hpp"
namespace dai {
struct VideoEncoderProperties : PropertiesSerializable<Properties, VideoEncoderProperties> {
enum class RateControlMode : int { CBR, VBR };
enum class Profile : int { H264_BASELINE, H264_HIGH, H264_MAIN, H265_MAIN, MJPEG };
std::int32_t bitrate = 0;
std::int32_t keyframeFrequency = 30;
std::int32_t maxBitrate = 0;
std::int32_t numBFrames = 0;
std::uint32_t numFramesPool = 0;
std::int32_t outputFrameSize = 0;
Profile profile = Profile::H264_BASELINE;
std::int32_t quality = 80;
bool lossless = false;
RateControlMode rateCtrlMode = RateControlMode::CBR;
float frameRate = 30.0f;
~VideoEncoderProperties() override;
};
DEPTHAI_SERIALIZE_EXT(VideoEncoderProperties,
bitrate,
keyframeFrequency,
maxBitrate,
numBFrames,
numFramesPool,
outputFrameSize,
profile,
quality,
lossless,
rateCtrlMode,
frameRate);
} // namespace dai