Camera view selection

Added toggle to select the preferred camera view between "auto", "standard", "wide", and "driver".
This commit is contained in:
FrogAi
2024-02-27 16:34:47 -07:00
parent e20aaf75e5
commit 4b511bb036
7 changed files with 19 additions and 2 deletions

View File

@@ -659,7 +659,7 @@ void AnnotatedCameraWidget::paintGL() {
// Wide or narrow cam dependent on speed
bool has_wide_cam = available_streams.count(VISION_STREAM_WIDE_ROAD);
if (has_wide_cam) {
if (has_wide_cam && cameraView == 0) {
float v_ego = sm["carState"].getCarState().getVEgo();
if ((v_ego < 10) || available_streams.size() == 1) {
wide_cam_requested = true;
@@ -670,7 +670,9 @@ void AnnotatedCameraWidget::paintGL() {
// for replay of old routes, never go to widecam
wide_cam_requested = wide_cam_requested && s->scene.calibration_wide_valid;
}
CameraWidget::setStreamType(wide_cam_requested ? VISION_STREAM_WIDE_ROAD : VISION_STREAM_ROAD);
CameraWidget::setStreamType(cameraView == 3 ? VISION_STREAM_DRIVER :
cameraView == 2 || wide_cam_requested ? VISION_STREAM_WIDE_ROAD :
VISION_STREAM_ROAD);
s->scene.wide_cam = CameraWidget::getStreamType() == VISION_STREAM_WIDE_ROAD;
if (s->scene.calibration_valid) {
@@ -758,6 +760,8 @@ void AnnotatedCameraWidget::updateFrogPilotWidgets(QPainter &p) {
blindSpotLeft = scene.blind_spot_left;
blindSpotRight = scene.blind_spot_right;
cameraView = scene.camera_view;
experimentalMode = scene.experimental_mode;
if (alwaysOnLateral) {