* 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>
* Store prime type in param
* set tethering metric based on prime type
* update existing connections
* returning zero is fine
* always set
* add callback on activate
* call systemctl
* match server enum
* add delay
* assume field is there
* snake case
* 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
* Replace existing symbol with apostrophe
Without `'`, I cannot type my WiFi password... though it might be time
to rotate it.
* Replace extra bactic with apostrophe
Co-authored-by: Adeeb Shihadeh <adeebshihadeh@gmail.com>
Co-authored-by: Adeeb Shihadeh <adeebshihadeh@gmail.com>
* navd: render simple map
* render route
* offscreen rendering
* cleanup
* more cleanup
* render into visionIPC
* rename class
* split position update from route update
* stop broadcast if not active
* gate vipc server behind flag
* add python library
* faster
* no vipc from python
* put behind extras
* only send when loaded
* add glFlush just to be sure
* cleanup settings into helper function
* function ordering
* broadcast thumbnails
* put behind param
* adjust zoom level
* add route to python bindings
* revert that freq change
* add logging if map rendering is enabled
* use rlogs if available
* bump cereal
* move vipc to thread
* use invokeMethod
* cleanup
* latest_frame = nullptr
* space
* safe quit
* running_-> exit_
* recv timeout 1000
* cleanup
* run in loop
* requestInterruption
* block queue on vipcConnected for thread safety
* cleanup
* remove unused signal updateFrame
* make signals public
* dont emit signal in update
* apply reviews
* cleanup
* little more cleanup
* fix
* use glTexSubImage2D
Co-authored-by: Adeeb Shihadeh <adeebshihadeh@gmail.com>
* use mapbox proxy
* remove MapboxToken param
* do not log jwt
* remove import
* move to staging url
* put has_prime in ui state
* logic was flipped
* Update selfdrive/ui/qt/maps/map.h