Class EncodedFrame

Inheritance Relationships

Base Types

Class Documentation

class EncodedFrame : public dai::Buffer, public dai::ProtoSerializable

Public Types

enum class Profile : std::uint8_t

Values:

enumerator JPEG
enumerator AVC
enumerator HEVC
enum class FrameType : std::uint8_t

Values:

enumerator I
enumerator P
enumerator B
enumerator Unknown
using CameraSettings = ImgFrame::CameraSettings

Public Functions

virtual ~EncodedFrame()
unsigned int getInstanceNum() const

Retrieves instance number

unsigned int getWidth() const

Retrieves image width in pixels

unsigned int getHeight() const

Retrieves image height in pixels

std::chrono::microseconds getExposureTime() const

Retrieves exposure time

int getSensitivity() const

Retrieves sensitivity, as an ISO value

int getColorTemperature() const

Retrieves white-balance color temperature of the light source, in kelvins

int getLensPosition() const

Retrieves lens position, range 0..255. Returns -1 if not available

float getLensPositionRaw() const

Retrieves lens position, range 0.0f..1.0f. Returns -1 if not available

unsigned int getQuality() const

Retrieves the encoding quality

unsigned int getBitrate() const

Retrieves the encoding bitrate

bool getLossless() const

Returns true if encoding is lossless (JPEG only)

FrameType getFrameType()

Retrieves frame type (H26x only)

Profile getProfile() const

Retrieves the encoding profile (JPEG, AVC or HEVC)

EncodedFrame &setInstanceNum(unsigned int instance)

Instance number relates to the origin of the frame (which camera)

Parameters:

instance – Instance number

EncodedFrame &setWidth(unsigned int width)

Specifies frame width

Parameters:

width – frame width

EncodedFrame &setHeight(unsigned int height)

Specifies frame height

Parameters:

height – frame height

EncodedFrame &setSize(unsigned int width, unsigned int height)

Specifies frame size

Parameters:
  • height – frame height

  • width – frame width

EncodedFrame &setSize(std::tuple<unsigned int, unsigned int> size)

Specifies frame size

Parameters:

size – frame size

EncodedFrame &setQuality(unsigned int quality)

Specifies the encoding quality

Parameters:

quality – Encoding quality

EncodedFrame &setBitrate(unsigned int bitrate)

Specifies the encoding quality

Parameters:

quality – Encoding quality

EncodedFrame &setLossless(bool lossless)

Specifies if encoding is lossless (JPEG only)

Parameters:

lossless – True if lossless

EncodedFrame &setFrameType(FrameType type)

Specifies the frame type (H26x only)

Parameters:

type – Type of h26x frame (I, P, B)

EncodedFrame &setProfile(Profile profile)

Specifies the encoding profile

Parameters:

profile – Encoding profile

ImgFrame getImgFrameMeta() const
virtual void serialize(std::vector<std::uint8_t> &metadata, DatatypeEnum &datatype) const override
DEPTHAI_SERIALIZE(EncodedFrame, cam, instanceNum, width, height, quality, bitrate, profile, lossless, type, frameOffset, frameSize, transformation, Buffer::sequenceNum, Buffer::ts, Buffer::tsDevice)

Public Members

CameraSettings cam
uint32_t instanceNum = 0
unsigned int width
unsigned int height
uint32_t quality
uint32_t bitrate
Profile profile
bool lossless
FrameType type
uint32_t frameOffset = 0
uint32_t frameSize = 0
ImgTransformation transformation