Commit Graph

74 Commits

Author SHA1 Message Date
Adeeb Shihadeh 13b57bb6a9 Revert "ui: brighten cameraview (#29744)"
This reverts commit 4772e46121f9adaf35b85f3dcaa416d9aaa7ee1b.

old-commit-hash: 023792c431
2023-09-30 15:14:48 -07:00
Dean Lee aafed83acc ui/CameraView: fix divide by zero issue (#29770)
old-commit-hash: a1306114bc
2023-09-06 13:25:40 -07:00
ZwX1616 641d52aa2d ui: brighten cameraview (#29744)
* test

* test2

* Revert "test2"

This reverts commit 22e38f82ae81f625f00179413f4c5f869a6de23e.

* Revert "test"

This reverts commit 717490c1bcddcd5339aed85d4716a58495a5c52c.

* looks fine

* mid

* description

---------

Co-authored-by: Comma Device <device@comma.ai>
old-commit-hash: a08cdfdda7
2023-09-05 10:59:58 -07:00
Dean Lee 97e9d55588 cpplint: build/include_what_you_use (#29556)
* include_what_you_use

* remove comments

* include <memory>

---------

Co-authored-by: Adeeb Shihadeh <adeebshihadeh@gmail.com>
old-commit-hash: 2d99521e75
2023-08-23 13:25:17 -07:00
Dean Lee 235235b2d9 modeldata.h: convert constants to uppercase (#28769)
old-commit-hash: 32c5e6aafb
2023-07-01 08:26:21 +01:00
Shane Smiskol afe7825130 Revert "ui: smooth wide cam transition" (#28298)
Revert "ui: smooth wide cam transition (#28277)"

This reverts commit ee6df0ef025d95c495248e46d53de2842363058e.
old-commit-hash: 21f88f997d
2023-05-25 19:23:50 -07:00
Shane Smiskol 33ddd8eb44 ui: smooth wide cam transition (#28277)
* horribly messy

* bit simpler

* is this right?

* simpler and should work?

* used to be int/frames, but added easing so treat as float

* end slow (start fast)

* little faster

* clean up

* not needed

* try ease in/ease out and fix

* remove debugging print

* fix

* revert to previous curve

* based on speed

* not right

* fix

* fix

* this kinda works

* Revert zoom by speed

Revert "this kinda works"

This reverts commit 48aa30b945148b8eb79fbe33eb58e3fc3a6a7009.

Revert "fix"

This reverts commit 4ff2d33486231727d7cd68d366342c2273e3a315.

Revert "fix"

This reverts commit 15b22f8e8284eb017000856abb05b5e8973a6c0e.

Revert "not right"

This reverts commit 378b9965e14250c57ed39e1976de60d89054c2c8.

Revert "based on speed"

This reverts commit 1f7bfa5d73a2dee3740096da64eda24b33288b51.

Revert "Revert "not right""

This reverts commit 1beeb402534a755208d19771eb4a2afdc69b8739.

* better curve

* revert

* use constants and fixes

* up here too

* feels more intuitive to make zoom_transition=1 be zoomed in

* rm line

* fix

* cmt

* better handling

* better name

* zoom if ANY other stream is requested

* Update selfdrive/ui/qt/widgets/cameraview.cc
old-commit-hash: 26064196d0
2023-05-24 17:28:33 -07:00
Angus Gratton f1e674f30c cabana/cameraview: Scale the glViewPort by devicePixelRatio() (#27941)
* cameraview: Scale the glViewPort by devicePixelRatio()

This fixes an issue seen in Cabana on a "hidpi" system with Wayland where
devicePixelRatio() != 1 and the video doesn't take up the full widget area.

On the recommended Ubuntu 20.04 install I wasn't able to reproduce, because
devicePixelRatio() was always equal to 1 even with scaling to 200% or 300%. It
might be different if "Fractional Scaling" is enabled in GNOME (I couldn't make
that option work in mv WM.)

Was going to enable just for Linux, but it appears to also be recommended for
Retina MacOS:
https://doc.qt.io/qt-5/scalability.html#high-dpi-scaling-on-macos-and-ios

... so have worked from the assumption that glViewport() always takes dimensions
in device pixels, never the "device independent pixels" of Qt.

* Update selfdrive/ui/qt/widgets/cameraview.cc

* Update selfdrive/ui/qt/widgets/cameraview.cc

---------

Co-authored-by: Adeeb Shihadeh <adeebshihadeh@gmail.com>
old-commit-hash: fbcd0821c9
2023-04-19 11:06:54 -07:00
Adeeb Shihadeh 09e9ae012b UI: remove spammy CameraView log
old-commit-hash: 9a6bcba741
2023-03-15 14:34:33 -07:00
Dean Lee 2936d72386 ui: auto detect available streams (#27470)
* auto detect available streams

* no switch if wide cam not available

* clear frames before getAvailableStreams

* warning

* clear at same time

---------

Co-authored-by: Adeeb Shihadeh <adeebshihadeh@gmail.com>
old-commit-hash: d5375af2f5
2023-03-14 13:59:22 -07:00
Adeeb Shihadeh 261f4d7524 UI: fix old frame shown on startup (#27283)
Co-authored-by: Comma Device <device@comma.ai>
old-commit-hash: 1f85f84027
2023-02-09 20:44:29 -08:00
Shane Smiskol 5587ce2220 cameraview: fix spaces in debug print
old-commit-hash: c1fcd63bba
2023-01-19 18:42:34 -08:00
Dean Lee 1b9b62f934 CameraView: remove double semicolon (#26728)
remove double semicolon
old-commit-hash: 1c5c0e723c
2022-12-08 11:06:38 -08:00
Dean Lee 4756106694 UI: fix CameraView crash on deleting. (#26390)
* fix crash on delete

* TODO?

* after makeCurrent
old-commit-hash: 97a205c94d
2022-11-15 19:07:50 -08:00
Adeeb Shihadeh 273b1c5b5c UI: draw onroad objects on right frame (#26306)
* update before draw

* fix a lot of janky

* fix more flicker

* cleanup

* fix flicker when opening settings

* simplify
old-commit-hash: c171fe9f9a
2022-10-31 23:01:22 -07:00
Dean Lee cdb02752a8 UI: reduce frame drops. (#26266)
* reduce frame dropping

* This mode will not draw the same frame twice

* cleanup comment

* use previous texture if update is not triggered by vipc thread and without new frame
old-commit-hash: 602b90f518
2022-10-28 19:05:11 -07:00
HaraldSchafer ed91648949 UI: fade into wide camera (#26203)
* UI: fade into wide camera

* handle routes with no wide calib

* more cleanup

Co-authored-by: Adeeb Shihadeh <adeebshihadeh@gmail.com>
old-commit-hash: dbc30c053c
2022-10-27 17:27:31 -07:00
Dean Lee 9833cbec4e UI: support switching streams in CameraView (#26248)
old-commit-hash: 6b6162d2c8
2022-10-26 19:47:32 -07:00
HaraldSchafer f7b76d947a UI Onroad widget renames (#26124)
Consistent widget naming
old-commit-hash: baca1cae1f
2022-10-17 18:18:01 -07:00
Willem Melching 917ea653e9 cameraview.cc: qInfo -> qDebug
old-commit-hash: ca800da895
2022-06-30 14:25:32 +02:00
Willem Melching bfcd08324c cameraview.cc: prev_frame_id static -> class member
old-commit-hash: af7d3c115a
2022-06-30 14:22:55 +02:00
Willem Melching 403266fdb1 ui: disable sync with model until more stable (#24984)
old-commit-hash: 338df150d5
2022-06-28 15:48:57 +02:00
Willem Melching c88c78a13b ui: use current calibration to center vanishing point (#24955)
* compute x and y offsets using calibration

* fix default calibration

* clamp to max values

* only use when valid

* not while calibrating

* less diff

* cleanup zoom
old-commit-hash: 915b4928ff
2022-06-27 16:03:26 +02:00
ZwX1616 cd2a98aa11 fullframe DM model (#24860)
* Revert "put cereal on master"

This reverts commit 4646c132bae7358079c9b2867725f8382906c1e5.

* Revert "Revert fullframe DM model (#24812)"

This reverts commit 59e8af4c3101785cead69a9880cc03e0a18081e1.

* revert revert cereal

* clip6

* 0.8 is fair

* Fiction compensation should be based on error

* Update refs

* Add deadzone

* not that

* good mg

* ref

* ref

* ee8f

* minor tweak

* ref

* recompile

* ref

* cereal

* match driverstatus

* new ref

* new ref

* pass token through jenkins credentials

* quote

* fix snpe dead weights

* final ref

Co-authored-by: Harald Schafer <harald.the.engineer@gmail.com>
Co-authored-by: Adeeb Shihadeh <adeebshihadeh@gmail.com>
old-commit-hash: 1f2f9ea9c9
2022-06-20 16:24:51 -07:00
Joost Wooning 38f6e2726b ui: skip texture frame copy (#24700)
* ui_blit working

* simpler and working

* more believable that it's real

* working on device

* build on pc

* use hardware pc

* reduce cpu usage

* yuv conversion to EGL

* move everything to cameraview

* some cleanup

* more cleanup

* init array

* init images with std::map

* dont destroy images

* do destroy images

Co-authored-by: Comma Device <device@comma.ai>
old-commit-hash: 1221aef233
2022-06-13 12:27:47 +02:00
ZwX1616 c73d4e5fc6 Revert fullframe DM model (#24812)
* Revert "fullframe DM: flip RHD yaw to use matching thresholds"

This reverts commit ce7daabc8847d18ba46e5d1879f5a6958d04ccc7.

* Revert "fullframe DM model (#24762)"

This reverts commit 817be81fb19004f4873881f6b29dcdfffbe7e3a8.

* revert cereal
old-commit-hash: c646eeee0a
2022-06-10 16:16:46 -07:00
ZwX1616 02f0f39b52 fullframe DM model (#24762)
* get log

* simplify two nonsense

* not needed

* libyuv is a joke

* clean up

* try small

* fast but not bad

* working

* clean up driverview

* simplified

* thats mirrored

* smol

* tweak

* ref is screen

* w/ ee

* update camera model

* no if TICI

* start

* update pose thresh

* less cpu more dsp

* new libyuv

* new snpe

* add files

* test

* should be fast

* update out len

* trigger test

* use master snpe

* add cereal

* update cereal

* refactor parsing

* missing ;

* get

* wrong type

* test model

* use driver data

* 10829278-72fe-4283-a118-2cef959ce174/1550

* no pf

* adapt driverview

* ;

* rhd learner

* update libyuv buildi x64

* ad4337ea

* remove blink slack

* test

* no

* use toggle

* b16

* fix for nv12

* 5b02cff5 both

* update test

* update cereal

* update cereal

* update cereal

* v2 packets

* revert libyuv

* no /

* update snpemodel

* ;

* memcpy

* fix test

* use toggle in driverview

* update power

* update replay

* Revert "update replay"

This reverts commit 1d0979ca59dbc89bc5890656e9501e83f0556d50.

* update model ref

* halve cpu

* fake 8bit onnx runner

* same thresh as report

* cereal master

Co-authored-by: Comma Device <device@comma.ai>
old-commit-hash: d6c07a6b15
2022-06-08 20:13:46 -07:00
Willem Melching 753045c73d less TICI when not needed (#24698)
* less TICI when not needed

* fix process replay

* move reading voltages into hw abstraction layer

* Update selfdrive/hardware/tici/hardware.h

Co-authored-by: Adeeb Shihadeh <adeebshihadeh@gmail.com>

* Update selfdrive/hardware/hw.h

Co-authored-by: Adeeb Shihadeh <adeebshihadeh@gmail.com>

* Update selfdrive/hardware/base.h

Co-authored-by: Adeeb Shihadeh <adeebshihadeh@gmail.com>

* rename init function

* Update selfdrive/athena/athenad.py

Co-authored-by: Robbe Derks <robbe.derks@gmail.com>

* Update selfdrive/boardd/boardd.cc

* Apply suggestions from code review

* Update selfdrive/thermald/thermald.py

* update ref

* fix alert width if all cameras are bad

* add ecam to test_loggerd

* bump cereal

* bump cereal

Co-authored-by: Adeeb Shihadeh <adeebshihadeh@gmail.com>
Co-authored-by: Robbe Derks <robbe.derks@gmail.com>
old-commit-hash: f49a9c9fd2
2022-06-02 15:20:51 +02:00
George Hotz 2a6ffaf71d nv12: encoderd avoids a full frame copy (#24519)
* rgb to nv12

* nv12 works (w memcpy)

* correct now

* no copy

* fix nv12 with fast debayer

* reverts of unused stuff

* ui use nv12

* comment out thumbnails for now

* rebase fix

* dm read nv12

* model read nv12

* fix ffmpeg encoder

* thumbnails from nv12

* replay to nv12

* python framereader support nv12

* remove hardcoded frame/buffer sizes

* fix build

* ffmpeg encoder fix buffers

* small cleanup

* reduce power usage test

* fix cpu usage test

* fix snapshot

* fix loggerd test

* bump cereal

Co-authored-by: Comma Device <device@comma.ai>
Co-authored-by: Joost Wooning <jwooning@gmail.com>
old-commit-hash: ea5b8cdfb1
2022-06-01 17:18:28 +02:00
Shane Smiskol 8d83408ace UI: draw camera on same frame from modelV2 (#24335)
* draw camera on same frame from modelV2

* fix reversing

* optimze

* sleep shorter

* heavy debugging

* clean up

* fix ui hang

* try this

* more generic implementation

* add unused flag back

* draw latest frames when camerad is coming up with no modeld

* only get modelV2 once

* fix drawing

* conflate, reduce buffer, and remove special case when starting

* make tests pass

* remove comments

* frame_id is a uint32_t

* not sure why passing to cameraview causes overflow

* ternary, not too complicated

* change to size

* rename to frame

* use unique_ptr

* Revert "use unique_ptr"

This reverts commit 955842d9511a26468d4deedd1807f096540cb40c.

* Assert buffer size

Co-authored-by: Adeeb Shihadeh <adeebshihadeh@gmail.com>

* use one deque with pairs and uint32_t

* formatting

* frame offset

* Revert "frame offset"

This reverts commit a2cff8a2d57a02f314d9f6adb7221b193a150e4c.

* use array

* add prints

* Revert "add prints"

This reverts commit d6978746e5c316fb2d5a619091c9aaf849c31967.

* clean up

* this handles all cases

* we want to clip

* fixes going backwards when replay or modeld lags multiple frames, then skips multiple frames

fixes going backwards when replay or modeld lags multiple frames, then skips multiple frames

* fix rare case where camera is behind model

simpler comment

* draw latest frames if we start with no model, then hang on current frame until model catches up

fix

* store if it's updated

* accurate comment

* reset to latest on connect and showevent

* better order

* use quint32 for sending signal function

* use empty

* draft

* kinda works

* works

* one line

* debug

* clean up

* revert this

* to preserve behavior, think we need to poll these

* revert

* no timeout when modeld is not alive

* Update selfdrive/ui/qt/onroad.cc

* changes from other PR

* see if we're drawing dup model or camera frames

* looks good, just need to clean up

* debug

* clean up

* clean up

* revert these changes

* fix

* pretty simple, test on device

* clean up

* revert this

Co-authored-by: Adeeb Shihadeh <adeebshihadeh@gmail.com>
old-commit-hash: c10a2ef2e4
2022-05-24 17:08:06 -07:00
Willem Melching 860487c4b7 ui: fix cameraview widget on MacOS after YUV changes (#24506)
old-commit-hash: aac7248a01
2022-05-12 17:16:30 +02:00
Willem Melching 44a92a53d0 cameraview.cc: set alignment to 1 when copying texture (#24418)
old-commit-hash: 3fc01ec15a
2022-05-04 11:44:16 +02:00
Joost Wooning 3783eb811f UI: remove unused lock and fence (#24355)
old-commit-hash: 7ac92938d2
2022-05-01 18:57:39 -07:00
Willem Melching 2a5eae5a56 ui: combine OnroadHud into NvgWindow (#24369)
* ui: combine OnroadHUD and NVGWindow

* draw hud first

* cleanup

* removed commented line

* fix text rendering

* increase cpu usage
old-commit-hash: a3cfa444d3
2022-04-29 10:55:44 -07:00
Joost Wooning 31f9e8af0f UI: remove memcpy on frame receive (#24318)
* UI: remove frame memcpy

* fix freezing

* fix onroad test
old-commit-hash: f84fdc86bb
2022-04-25 13:45:55 -07:00
Joost Wooning c3bebf3e19 UI: use YUV stream instead of RGB (#24317)
* UI: use YUV stream instead of RGB

* cleanup

* cleanup
old-commit-hash: 43f43b1c64
2022-04-25 21:07:08 +02:00
Adeeb Shihadeh 8eb8cf95ec Revert "UI: remove RGB buffer usage (#24298)"
This reverts commit 2a13d8446cd19340bfb67f14470b7c35f643e8b8.

old-commit-hash: 13e1c0b339
2022-04-24 11:56:30 -07:00
Joost Wooning e0c973fe70 UI: remove RGB buffer usage (#24298)
* ui: use yuv buffer

* cleanup

* fix watch3

* replay always send yuv

* fix drawing of path

* fix onroad test

Co-authored-by: Willem Melching <willem.melching@gmail.com>
old-commit-hash: b9907e86b2
2022-04-22 12:55:37 -07:00
Adeeb Shihadeh 5a9644261f remove comma two support (#24248)
* remove comma two support

* cleanup release files

* little more

* more libs

* no more gralloc

* add snpe back
old-commit-hash: 5c48e7bc86
2022-04-18 17:55:23 -07:00
Gijs Koning cedd8abc05 Rename RGB vision streams to match YUV streams (#23961)
* Renaming VISION_STREAM_RGB_.. to match yuv names like VISION_STREAM_ROAD
VISION_STREAM_RGB_BACK -> VISION_STREAM_RGB_ROAD
VISION_STREAM_RGB_FRONT -> VISION_STREAM_RGB_DRIVER

* little more

Co-authored-by: Adeeb Shihadeh <adeebshihadeh@gmail.com>
old-commit-hash: 57b6fdc17a
2022-03-14 14:03:54 -07:00
Dean Lee fab73e6e9f remove trailing whitespaces (#23716)
old-commit-hash: 786152f0f1
2022-02-06 10:42:41 -08:00
Willem Melching c8cb5abfbb CameraView: sync pbo with glFence instead of calling glFinish (#23409)
* CameraView: sync pbo with glFence instead of calling glFinish (#23293)

* Sync pbo with fence

* use std::unique_ptr

* cameraview.cc: call glFlush after creating fence

Co-authored-by: Dean Lee <deanlee3@gmail.com>
old-commit-hash: d77782ea93
2022-01-07 15:24:20 +01:00
Willem Melching 8c1fe7647a catch gl_buffer->map() returning nullptr (#23411)
old-commit-hash: 8d80c0107f
2022-01-05 14:23:57 +01:00
Adeeb Shihadeh 097110ba41 Revert "CameraView: sync pbo with glFence instead of calling glFinish (#23293)"
This reverts commit 7fcde6809582c5b8ddfe5a60723d70f9eae1d5de.

old-commit-hash: 25f51470fc
2022-01-04 20:16:52 -08:00
Adeeb Shihadeh 7c960e6a94 Revert "cameraview.cc: call glFlush after creating fence"
This reverts commit eac4c3cab90890e39b4a6009c59d023fb21997b8.

old-commit-hash: 34926dfab5
2022-01-04 20:16:42 -08:00
Willem Melching 0c24902e05 cameraview.cc: call glFlush after creating fence
old-commit-hash: 8655f6df6b
2022-01-04 15:55:28 +01:00
Dean Lee 1c61ba82b6 CameraView: sync pbo with glFence instead of calling glFinish (#23293)
* Sync pbo with fence

* use std::unique_ptr
old-commit-hash: 5dbdad3276
2022-01-04 14:14:38 +01:00
George Hotz 6bac4f1c4a build for mac (#23048)
old-commit-hash: 16dd7ce1fe
2021-12-18 22:00:09 -08:00
Dean Lee d5e9c7ecf1 UI: always clear CameraView background (#23231)
* fix background

* gate that with Hardware::EON

* always call glclear
old-commit-hash: 5810583d57
2021-12-15 11:13:50 -08:00
Willem Melching bc267926ce dmonitoring/DriverView: get crop_rect & transform by video size (#23169)
* dmonitoring/DriverView: get crop_rect & transform by video size (#23014)

* keep rounding the same

Co-authored-by: Dean Lee <deanlee3@gmail.com>
old-commit-hash: f93d89b888
2021-12-09 16:20:50 +01:00