| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263 |
- #include "process_serial_commands.h"
- void process_serial_commands() {
- if (Serial.available() > 0) {
- char input = Serial.read();
- sensor_t* cam = esp_camera_sensor_get();
- switch (input) {
- case '>': // Toggle dithering.
- camera_model.isDitheringEnabled = !camera_model.isDitheringEnabled;
- break;
- case 'i': // Turn invert off.
- camera_model.isInvertEnabled = false;
- break;
- case 'I': // Turn invert on.
- camera_model.isInvertEnabled = true;
- break;
- case 'b': // Remove brightness.
- cam->set_contrast(cam, cam->status.brightness - 1);
- break;
- case 'B': // Add brightness.
- cam->set_contrast(cam, cam->status.brightness + 1);
- break;
- case 'c': // Remove contrast.
- cam->set_contrast(cam, cam->status.contrast - 1);
- break;
- case 'C': // Add contrast.
- cam->set_contrast(cam, cam->status.contrast + 1);
- break;
- case 'f': // Turn the flash off.
- toggle_flash_off();
- break;
- case 'F': // Turn the flash on.
- toggle_flash_on();
- break;
- case 'P': // Save image to the onboard SD card.
- // @todo - Future feature.
- // save_picture_to_sd_card();
- break;
- case 'M': // Toggle Mirror.
- cam->set_hmirror(cam, !cam->status.hmirror);
- break;
- case 's': // Stop stream.
- camera_model.isStreamEnabled = false;
- break;
- case 'S': // Start stream.
- camera_model.isStreamEnabled = true;
- break;
- case '0': // Use Floyd Steinberg dithering.
- camera_model.ditherAlgorithm = FLOYD_STEINBERG;
- break;
- case '1': // Use Jarvis Judice dithering.
- camera_model.ditherAlgorithm = JARVIS_JUDICE_NINKE;
- break;
- case '2': // Use Stucki dithering.
- camera_model.ditherAlgorithm = STUCKI;
- break;
- default:
- // Do nothing.
- break;
- }
- }
- }
|