* 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
* 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>
* 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>
* 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
* 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
* 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>
* 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 1d0979ca59.
* update model ref
* halve cpu
* fake 8bit onnx runner
* same thresh as report
* cereal master
Co-authored-by: Comma Device <device@comma.ai>
* 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>
* 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 955842d951.
* 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 a2cff8a2d5.
* use array
* add prints
* Revert "add prints"
This reverts commit d6978746e5.
* 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>
* 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>
* 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>
* move ui_draw_world to qt
* draw world if world_objects_visible is true
* cleanup
* cleanup includes
* continue
* cleanup
* cleanup
* enable multisampling on all devices