camerad: log image sensor in camera states (#25786)

* camerad: log image sensor in camera states

* for all cams

* bump cereal

* revert that

Co-authored-by: Comma Device <device@comma.ai>
old-commit-hash: 7352e6d940
taco
Adeeb Shihadeh 3 years ago committed by GitHub
parent 5a80f319ae
commit 565511431d
  1. 2
      cereal
  2. 8
      system/camerad/cameras/camera_common.cc
  3. 2
      system/camerad/cameras/camera_common.h
  4. 4
      system/camerad/cameras/camera_qcom2.cc

@ -1 +1 @@
Subproject commit f363cc13c67d286f87606f35f91952927d1c2d4d
Subproject commit bd2f7fa56706bcec3c9906bd57c2ec46f0666ac5

@ -159,7 +159,7 @@ void CameraBuf::queue(size_t buf_idx) {
// common functions
void fill_frame_data(cereal::FrameData::Builder &framed, const FrameMetadata &frame_data) {
void fill_frame_data(cereal::FrameData::Builder &framed, const FrameMetadata &frame_data, CameraState *c) {
framed.setFrameId(frame_data.frame_id);
framed.setTimestampEof(frame_data.timestamp_eof);
framed.setTimestampSof(frame_data.timestamp_sof);
@ -173,6 +173,12 @@ void fill_frame_data(cereal::FrameData::Builder &framed, const FrameMetadata &fr
framed.setLensErr(frame_data.lens_err);
framed.setLensTruePos(frame_data.lens_true_pos);
framed.setProcessingTime(frame_data.processing_time);
if (c->camera_id == CAMERA_ID_AR0231) {
framed.setSensor(cereal::FrameData::ImageSensor::AR0321);
} else if (c->camera_id == CAMERA_ID_OX03C10) {
framed.setSensor(cereal::FrameData::ImageSensor::OX03C10);
}
}
kj::Array<uint8_t> get_raw_frame_image(const CameraBuf *b) {

@ -113,7 +113,7 @@ public:
typedef void (*process_thread_cb)(MultiCameraState *s, CameraState *c, int cnt);
void fill_frame_data(cereal::FrameData::Builder &framed, const FrameMetadata &frame_data);
void fill_frame_data(cereal::FrameData::Builder &framed, const FrameMetadata &frame_data, CameraState *c);
kj::Array<uint8_t> get_raw_frame_image(const CameraBuf *b);
float set_exposure_target(const CameraBuf *b, int x_start, int x_end, int x_skip, int y_start, int y_end, int y_skip);
std::thread start_process_thread(MultiCameraState *cameras, CameraState *cs, process_thread_cb callback);

@ -1208,7 +1208,7 @@ static void process_driver_camera(MultiCameraState *s, CameraState *c, int cnt)
MessageBuilder msg;
auto framed = msg.initEvent().initDriverCameraState();
framed.setFrameType(cereal::FrameData::FrameType::FRONT);
fill_frame_data(framed, c->buf.cur_frame_data);
fill_frame_data(framed, c->buf.cur_frame_data, c);
if (c->camera_id == CAMERA_ID_AR0231) {
ar0231_process_registers(s, c, framed);
@ -1221,7 +1221,7 @@ void process_road_camera(MultiCameraState *s, CameraState *c, int cnt) {
MessageBuilder msg;
auto framed = c == &s->road_cam ? msg.initEvent().initRoadCameraState() : msg.initEvent().initWideRoadCameraState();
fill_frame_data(framed, b->cur_frame_data);
fill_frame_data(framed, b->cur_frame_data, c);
if (env_log_raw_frames && c == &s->road_cam && cnt % 100 == 5) { // no overlap with qlog decimation
framed.setImage(get_raw_frame_image(b));
}

Loading…
Cancel
Save