Seeed-Studio / SSCMA-Micro

A cross-platform framework that deploys and applies SSCMA models to microcontrol devices
https://seeed-studio.github.io/SSCMA-Micro/
MIT License
25 stars 13 forks source link

1920x1080 resolution support #76

Closed DeimosHall closed 2 months ago

DeimosHall commented 2 months ago

To be honest, I'm not sure if I should post this as a bug or a feature request, my apologies for that.

I'm trying to set resolutions higher than 640x480 in the Grove Vision AI V2. I checked the AT Protocol Specification and used the command AT+SENSORS?, I got this response:

{
  "type": 0,
  "name": "SENSORS?",
  "code": 0,
  "data": [
    {
      "id": 1,
      "type": 1,
      "state": 1,
      "opt_id": 2,
      "opt_detail": "640x480 Auto",
      "opts": {
        "2": "640x480 Auto",
        "1": "480x480 Auto",
        "0": "240x240 Auto"
      }
    }
  ]
}

Unfortunately the higher resolution available is 640x480. I also checked the code in this repo and I found the constructor has more resolutions in file el_camera.h:

Camera(uint32_t supported_opts_mask = 0) : _is_present(false), _is_streaming(false) {
        std::forward_list<el_sensor_opt_t> presets = {
          el_sensor_opt_t{.id = 0,   .details = "240x240 Auto"},
          el_sensor_opt_t{.id = 1,   .details = "480x480 Auto"},
          el_sensor_opt_t{.id = 2,   .details = "640x480 Auto"},
          el_sensor_opt_t{.id = 3,  .details = "1280x720 Auto"},
          el_sensor_opt_t{.id = 4, .details = "1920x1080 Auto"}
        };

        for (auto& opt : presets) {
            if (supported_opts_mask & (1 << opt.id)) _supported_opts.push_front(opt);
        }

        if (!_supported_opts.empty()) {
            _current_opt_id = _supported_opts.front().id;
        }
    }

I tried to set opt_id 3 with no success, I really would like to use resolutions higher than 640x480. If there is something I'm missing I would appreciate any help :)

iChizer0 commented 2 months ago

Hi @DeimosHall, due to device SRAM limitations and transmission bottlenecks we don't support resolutions above 640x480 at this moment, as you can see we've added some redundancy options which may have a chance to be turned on in the future.

DeimosHall commented 2 months ago

Thanks for your response!