ESPHome 2026.4.0-dev
Loading...
Searching...
No Matches
esphome::camera_encoder::ESP32CameraJPEGEncoder Class Reference

Encoder that uses the software-based JPEG implementation from Espressif's esp32-camera component. More...

#include <esp32_camera_jpeg_encoder.h>

Inheritance diagram for esphome::camera_encoder::ESP32CameraJPEGEncoder:
esphome::camera::Encoder

Public Member Functions

 ESP32CameraJPEGEncoder (uint8_t quality, camera::EncoderBuffer *output)
 Constructs a ESP32CameraJPEGEncoder instance.
 
void set_buffer_expand_size (size_t buffer_expand_size)
 Sets the number of bytes to expand the output buffer on underflow during encoding.
 
camera::EncoderError encode_pixels (camera::CameraImageSpec *spec, camera::Buffer *pixels) override
 
camera::EncoderBufferget_output_buffer () override
 
void dump_config () override
 
- Public Member Functions inherited from esphome::camera::Encoder
virtual ~Encoder ()=default
 

Protected Member Functions

pixformat_t to_internal_ (camera::PixelFormat format)
 

Static Protected Member Functions

static size_t callback (void *arg, size_t index, const void *data, size_t len)
 

Protected Attributes

camera::EncoderBufferoutput_ {}
 
size_t buffer_expand_size_ {}
 
size_t bytes_written_ {}
 
uint8_t quality_ {}
 
bool out_of_output_memory_ {}
 

Detailed Description

Encoder that uses the software-based JPEG implementation from Espressif's esp32-camera component.

Definition at line 14 of file esp32_camera_jpeg_encoder.h.

Constructor & Destructor Documentation

◆ ESP32CameraJPEGEncoder()

esphome::camera_encoder::ESP32CameraJPEGEncoder::ESP32CameraJPEGEncoder ( uint8_t quality,
camera::EncoderBuffer * output )

Constructs a ESP32CameraJPEGEncoder instance.

Parameters
qualitySets the quality of the encoded image (1-100).
outputPointer to preallocated output buffer.

Definition at line 11 of file esp32_camera_jpeg_encoder.cpp.

Member Function Documentation

◆ callback()

size_t esphome::camera_encoder::ESP32CameraJPEGEncoder::callback ( void * arg,
size_t index,
const void * data,
size_t len )
staticprotected

Definition at line 54 of file esp32_camera_jpeg_encoder.cpp.

◆ dump_config()

void esphome::camera_encoder::ESP32CameraJPEGEncoder::dump_config ( )
overridevirtual

Implements esphome::camera::Encoder.

Definition at line 45 of file esp32_camera_jpeg_encoder.cpp.

◆ encode_pixels()

camera::EncoderError esphome::camera_encoder::ESP32CameraJPEGEncoder::encode_pixels ( camera::CameraImageSpec * spec,
camera::Buffer * pixels )
overridevirtual

Implements esphome::camera::Encoder.

Definition at line 16 of file esp32_camera_jpeg_encoder.cpp.

◆ get_output_buffer()

camera::EncoderBuffer * esphome::camera_encoder::ESP32CameraJPEGEncoder::get_output_buffer ( )
inlineoverridevirtual

Implements esphome::camera::Encoder.

Definition at line 25 of file esp32_camera_jpeg_encoder.h.

◆ set_buffer_expand_size()

void esphome::camera_encoder::ESP32CameraJPEGEncoder::set_buffer_expand_size ( size_t buffer_expand_size)
inline

Sets the number of bytes to expand the output buffer on underflow during encoding.

Parameters
buffer_expand_sizeNumber of bytes to expand the buffer.

Definition at line 22 of file esp32_camera_jpeg_encoder.h.

◆ to_internal_()

pixformat_t esphome::camera_encoder::ESP32CameraJPEGEncoder::to_internal_ ( camera::PixelFormat format)
protected

Definition at line 68 of file esp32_camera_jpeg_encoder.cpp.

Field Documentation

◆ buffer_expand_size_

size_t esphome::camera_encoder::ESP32CameraJPEGEncoder::buffer_expand_size_ {}
protected

Definition at line 33 of file esp32_camera_jpeg_encoder.h.

◆ bytes_written_

size_t esphome::camera_encoder::ESP32CameraJPEGEncoder::bytes_written_ {}
protected

Definition at line 34 of file esp32_camera_jpeg_encoder.h.

◆ out_of_output_memory_

bool esphome::camera_encoder::ESP32CameraJPEGEncoder::out_of_output_memory_ {}
protected

Definition at line 36 of file esp32_camera_jpeg_encoder.h.

◆ output_

camera::EncoderBuffer* esphome::camera_encoder::ESP32CameraJPEGEncoder::output_ {}
protected

Definition at line 32 of file esp32_camera_jpeg_encoder.h.

◆ quality_

uint8_t esphome::camera_encoder::ESP32CameraJPEGEncoder::quality_ {}
protected

Definition at line 35 of file esp32_camera_jpeg_encoder.h.


The documentation for this class was generated from the following files: