Commit Graph

94 Commits

Author SHA1 Message Date
Kacper Rączy d062a97a26 webrtcd: webrtc streaming server (audio/video/cereal) (#30186)
* WebRTCClient and WebRTCServer abstractions

* webrtc client implementation

* Interactive test scripts

* Send localDescriptions as offer/asnwer, as they are different

* Tracks need to be added after setting remote description for multi-cam streaming to work

* Remove WebRTCStreamingMetadata

* Wait for tracks

* Move stuff to separate files, rename some things

* Refactor everything, create WebRTCStreamBuilder for both offer and answers

* ta flight done time to grind

* wait for incoming tracks and channels

* Dummy track and frame reader track. Fix timing.

* dt based on camera type

* first trial of the new api

* Fix audio track

* methods for checking for incoming tracks

* Web migration part 2

* Fixes for stream api

* use rtc description for web.py

* experimental cereal proxy

* remove old code from bodyav

* fix is_started

* serialize session description

* fix audio

* messaging channel wrapper

* fix audiotrack

* h264 codec preference

* Add codec preference to tracks

* override sdp codecs

* add logging

* Move cli stuff to separate file

* slight cleanup

* Fix audio track

* create codec_mime inside force_codec function

* fix incoming media estimation

* move builders to __init__

* stream updates following builders

* Update example script

* web.py support for new builder

* web speaker fixes

* StreamingMediaInfo API

* Move things around

* should_add_data_channel rename

* is_connected_and_ready

* fix linter errors

* make cli executable

* remove dumb comments

* logging support

* fix parse_info_from_offer

* improve type annotations

* satisfy linters

* Support for waiting for disconnection

* Split device tracks into video/audio files. Move audio speaker to audio.py

* default dt for dummy video track

* Fix cli

* new speaker fixes

* Remove almost all functionality from web.py

* webrtcd

* continue refactoring web.py

* after handling joystick reset in controlsd with #30409, controls are not necessary anymore

* ping endpoint

* Update js files to at least support what worked previously

* Fixes after some tests on the body

* Streaming fixes

* Remove the use of WebRTCStreamBuilder. Subclass use is now required

* Add todo

* delete all streams on shutdown

* Replace lastPing with lastChannelMessageTime

* Update ping text only if rtc is still on

* That should affect the chart too

* Fix paths in web

* use protocol in SSLContext

* remove warnings since aiortc is not used directly anymore

* check if task is done in stop

* remove channel handler wrapper, since theres only one channel

* Move things around

* Moved webrtc abstractions to separate repository

* Moved webrtcd to tools/webrtc

* Update imports

* Add bodyrtc as dependency

* Add webrtcd to process_config

* Remove usage of DummyVideoStreamTrack

* Add main to webrtcd

* Move webrtcd to system

* Fix imports

* Move cereal proxy logic outside of runner

* Incoming proxy abstractions

* Add some tests

* Make it executable

* Fix process config

* Fix imports

* Additional tests. Add tests to pyproject.toml

* Update poetry lock

* New line

* Bump aiortc to 1.6.0

* Added teleoprtc_repo as submodule, and linked its source dir

* Add init file to webrtc module

* Handle aiortc warnings

* Ignore deprecation warnings

* Ignore resource warning too

* Ignore the warnings

* find free port for test_webrtcd

* Start process inside the test case

* random sleep test

* test 2

* Test endpoint function instead

* Update comment

* Add system/webrtc to release

* default arguments for body fields

* Add teleoprtc to release

* Bump teleoprtc

* Exclude teleoprtc from static analysis

* Use separate event loop for stream session tests
old-commit-hash: f058b5d64e
2023-12-01 21:13:37 -08:00
Adeeb Shihadeh 623ce34558 Update Python packages and pre-commit hooks (#30529)
old-commit-hash: eb3833037f
2023-11-26 09:31:20 -08:00
Adeeb Shihadeh 872b9cc6e9 Update Python packages and pre-commit hooks (#30509)
Co-authored-by: adeebshihadeh <adeebshihadeh@users.noreply.github.com>
old-commit-hash: 2a55ff4f55
2023-11-21 11:50:35 -08:00
Logan Lasiter 4f1ed42285 adding --local-partial-types mypy opt (#30491)
old-commit-hash: 5b2bcf6bf2
2023-11-18 22:47:11 -08:00
Kacper Rączy 7cac430ecc Remove laika submodule (#30453)
* Remove laika submodule

* Remove laika check for minimal builds

* Fix minimal build check

* Bring back exclude for opendbc in codespell

* Fix typo

* Copy GNSS indices from laika

* Delete laika dependencies
old-commit-hash: 2de13bea91
2023-11-15 10:06:37 +01:00
Adeeb Shihadeh d7ed164459 Update Python packages and pre-commit hooks (#30463)
Co-authored-by: adeebshihadeh <adeebshihadeh@users.noreply.github.com>
old-commit-hash: 51207aaae2
2023-11-14 15:18:42 -08:00
Adeeb Shihadeh 1963c5969a Update Python packages and pre-commit hooks (#30403)
Co-authored-by: adeebshihadeh <adeebshihadeh@users.noreply.github.com>
old-commit-hash: 3c043ba570
2023-11-07 10:58:01 -08:00
Adeeb Shihadeh 5904226de2 Update Python packages and pre-commit hooks (#30352)
Co-authored-by: adeebshihadeh <adeebshihadeh@users.noreply.github.com>
old-commit-hash: c04e019af4
2023-10-31 11:31:57 -07:00
Adeeb Shihadeh 82a3db0f94 Update Python packages and pre-commit hooks (#30321)
Co-authored-by: adeebshihadeh <adeebshihadeh@users.noreply.github.com>
old-commit-hash: d3d51980bc
2023-10-24 11:25:39 -07:00
Adeeb Shihadeh 58df021bd7 Update Python packages and pre-commit hooks (#30269)
* Update Python packages and pre-commit hooks

* fix pyqt

---------

Co-authored-by: adeebshihadeh <adeebshihadeh@users.noreply.github.com>
old-commit-hash: 13bf8c26f3
2023-10-18 20:18:08 -07:00
Adeeb Shihadeh 06545cf3f8 Update Python packages and pre-commit hooks (#30215)
Co-authored-by: adeebshihadeh <adeebshihadeh@users.noreply.github.com>
old-commit-hash: ac21dcbdcb
2023-10-10 10:37:54 -07:00
Adeeb Shihadeh a9153a39cc Update Python packages and pre-commit hooks (#30149)
* Update Python packages and pre-commit hooks

* fixes

* Update common/transformations/README.md

Co-authored-by: Shane Smiskol <shane@smiskol.com>

* fix

---------

Co-authored-by: adeebshihadeh <adeebshihadeh@users.noreply.github.com>
Co-authored-by: Shane Smiskol <shane@smiskol.com>
old-commit-hash: 377722fd5e
2023-10-03 15:31:26 -07:00
Adeeb Shihadeh eb0530f6dd Update Python packages and pre-commit hooks (#30062)
Co-authored-by: adeebshihadeh <adeebshihadeh@users.noreply.github.com>
old-commit-hash: 2d5a2e3ab6
2023-09-27 21:42:41 -07:00
Adeeb Shihadeh 3512ac86eb pre-commit: always check all file sizes (#30050)
* pre-commit: always check all file sizes

* fix release
old-commit-hash: 425fa316d1
2023-09-25 22:22:48 -07:00
Shane Smiskol 9f732c45e9 pre-commit: use non-deprecated lock file check command (#30003)
Update .pre-commit-config.yaml
old-commit-hash: 37422d0437
2023-09-21 17:41:44 -07:00
Justin Newberry 62d61e9b55 Simulator: fix port issues in devcontainer (#29977)
* fix sim devcontainer

* use host.docker.internal instead

* devcontainer supports jsonc
old-commit-hash: 1f8ceb4ca1
2023-09-20 16:34:29 -07:00
Adeeb Shihadeh 6d8694317c Update Python packages and pre-commit hooks (#29974)
* Update Python packages and pre-commit hooks

* fix linter

---------

Co-authored-by: adeebshihadeh <adeebshihadeh@users.noreply.github.com>
old-commit-hash: cd75dcb03f
2023-09-19 16:24:58 -07:00
Adeeb Shihadeh 75297f431b Update Python packages and pre-commit hooks (#29891)
Co-authored-by: adeebshihadeh <adeebshihadeh@users.noreply.github.com>
old-commit-hash: ac2d052512
2023-09-12 13:12:55 -07:00
Justin Newberry ef1155469b Precommit: do a sanity check on github workflows (#29790)
* sanity check on github actions

* That one doesn’t apply to us
old-commit-hash: d3c5ac5545
2023-09-06 10:40:52 -07:00
Justin Newberry 3b91610c0b Precommit: ensure executable bit is set (#29784)
* precommit ensure executable

* exclude tinygrad

* bump submodules

* exclude tinygrad globally
old-commit-hash: 4e69937d0d
2023-09-05 16:33:26 -07:00
Adeeb Shihadeh 2fd417df74 Update Python packages and pre-commit hooks (#29774)
Co-authored-by: adeebshihadeh <adeebshihadeh@users.noreply.github.com>
old-commit-hash: e0eb4d726c
2023-09-05 20:02:21 +01:00
Adeeb Shihadeh 952ca664fa Update Python packages and pre-commit hooks (#29739)
* Update Python packages and pre-commit hooks

* fix linter

---------

Co-authored-by: adeebshihadeh <adeebshihadeh@users.noreply.github.com>
old-commit-hash: 9719b22761
2023-08-31 15:00:13 -07:00
Dean Lee de809632bf cpplint: add filter `whitespace/comma` (#29595)
old-commit-hash: 7bfd3dac81
2023-08-24 10:42:06 -07:00
Dean Lee 228d30d5a9 cpplint: add filter `whitespace/tab` (#29588)
old-commit-hash: 9c7bf50703
2023-08-24 08:06:58 -07:00
Dean Lee 0984736972 cpplint: add filter `build/include_subdir` (#29585)
old-commit-hash: 21da5a216f
2023-08-24 15:42:17 +01:00
Dean Lee 56b582a059 cpplint: add filter `whitespace/forcolon` (#29582)
whitespace/forcolon
old-commit-hash: ac93902983
2023-08-23 22:46:02 -07:00
Dean Lee 5f4b422305 cpplint: add filter `whitespace/semicolon` (#29568)
old-commit-hash: f203648de0
2023-08-23 15:00:30 -07:00
Dean Lee db211ce617 cpplint: add filter `whitespace/parens` (#29565)
old-commit-hash: 5480d32bb5
2023-08-23 14:25:05 -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 004a097c95 cpplint: add `readability/braces` filter (#29554)
old-commit-hash: 363740a497
2023-08-23 10:13:46 -07:00
Adeeb Shihadeh 701cd6f6fe add cpplint (#26855)
* setup cpplint

* only start that

* check line length

* check these

* rm exceptions
old-commit-hash: 952d720b6e
2023-08-22 13:55:23 -07:00
Adeeb Shihadeh c7a05f82e0 pre-commit: autoupdate hooks (#29524)
Update pre-commit hook versions

Co-authored-by: adeebshihadeh <adeebshihadeh@users.noreply.github.com>
old-commit-hash: c5c73c4ddb
2023-08-22 10:39:45 -07:00
Adeeb Shihadeh 23a899b7f8 pre-commit: autoupdate hooks (#29407)
Update pre-commit hook versions

Co-authored-by: adeebshihadeh <adeebshihadeh@users.noreply.github.com>
old-commit-hash: 3b849811e5
2023-08-15 10:29:02 -07:00
Justin Newberry 3ee0786de3 CI: Pylint to ruff (#29294)
* pylint to riff

* pylint to riff

* pylint to riff

* revert more

* undo exclude removal

* exclude tinygrad

* set line length

* pylint exclusions to ruff

* same excludes as old linter

* fix tools QA

* remove unrequired check

* revert linting third_party

* ignore e402
old-commit-hash: 7fdd9fc37c
2023-08-09 13:26:54 -07:00
Justin Newberry ff96892511 Revert "CI: pylint to ruff (#29276)" (#29284)
This reverts commit ffad7279cbad3c4f2ea786287b4624d3a3aa18d7.
old-commit-hash: a91764954b
2023-08-08 14:24:04 -07:00
Vivek Aithal c1bcb53d4e [commabody] Add new body teleop ui (#29282)
* Revert "Revert "[commabody] Add new body teleop ui (#29119)" (#29249)"

This reverts commit 5dcfddbbfbddf00d16cb1f28c51f3dffc75d7cf6.

* add to release files

---------

Co-authored-by: Adeeb Shihadeh <adeebshihadeh@gmail.com>
old-commit-hash: e7d307ca1b
2023-08-08 14:12:51 -07:00
Justin Newberry 99006365a3 CI: pylint to ruff (#29276)
* pylint to riff

* pylint to riff

* pylint to riff

* revert more

* undo exclude removal

* exclude tinygrad
old-commit-hash: cb31a53d8a
2023-08-08 13:41:30 -07:00
Harald Schäfer c0fbbd4b36 Revert "[commabody] Add new body teleop ui (#29119)" (#29249)
This reverts commit 0df6353569b77869ce4ddc8ce43bab621bccd107.
old-commit-hash: 623351e4ed
2023-08-05 07:15:35 -07:00
Vivek Aithal 082b1fd924 [commabody] Add new body teleop ui (#29119)
* add new ui

* move body tele op ui to new dir

* fix codespell errors

* resolve mediablackhole pylint error

* fix import error

* style fixes

* use logging, not print

* fix js styling

* resolve comments
old-commit-hash: a7304d059c
2023-08-04 13:56:46 -07:00
Adeeb Shihadeh e33973cdd4 pre-commit: autoupdate hooks (#29198)
* Update pre-commit hook versions

* fix

* bump submodules

* one more

---------

Co-authored-by: adeebshihadeh <adeebshihadeh@users.noreply.github.com>
old-commit-hash: 39ce23420c
2023-08-01 12:32:21 -07:00
Vivek Aithal 023c63c06d Fix mypy path error (#29091)
old-commit-hash: ee4fcff0c9
2023-07-21 18:36:51 -07:00
Adeeb Shihadeh 6447df6558 pre-commit: autoupdate hooks (#28605)
Update pre-commit hook versions

Co-authored-by: adeebshihadeh <adeebshihadeh@users.noreply.github.com>
old-commit-hash: 4b90117dd8
2023-06-20 10:41:21 -07:00
Kacper Rączy 3ead794728 pre-commit: validate poetry lock (#28313)
* Add CI step to validate lock file

* Fix run script

* Build docker image before running the check

* Fix

* Use setup instead of docker build

* Add pre-commit check

* Update hooks

* Add files to lock validation hook

* Add pyproject.toml and poetry.lock to release files

* Cleanup
old-commit-hash: 23de5f1bac
2023-05-26 19:21:34 -07:00
Adeeb Shihadeh 4e1ff2b4b9 pre-commit: autoupdate hooks (#28271)
Update pre-commit hook versions

Co-authored-by: adeebshihadeh <adeebshihadeh@users.noreply.github.com>
old-commit-hash: bf8e6d0d29
2023-05-23 11:09:40 -07:00
Adeeb Shihadeh d3d799c419 pre-commit: add check-toml + update hooks (#27906)
* pre-commit: add check-toml

* update

* fix typo
old-commit-hash: 2adab40565
2023-04-13 21:45:12 -07:00
Mitchell Goff a995e0456d Add osmnx to xx packages (#27342)
old-commit-hash: 6f1d5edab8
2023-02-14 14:32:08 -08:00
Adeeb Shihadeh b3e47c691b move all third party stuff into third_party/ (#26853)
* mv fastcluster

* move msm_kgsl.h

* camerad include

* update path

* mv pyextra

* fix tici build

* add acados_template to release build

Co-authored-by: Comma Device <device@comma.ai>
old-commit-hash: cd8e03d53e
2022-12-31 21:00:50 -08:00
HaraldSchafer 3ca9b7f02e Pipenv -> poetry (#24858)
* Try poetry

* Remove casadi for now

* Update docker

* Copy pipfiles

* add casadi back

* Too many slashes

* New poetry api

* Install system

* Try again

* No more pipenv

* new dependencies

* updates

* poetry 1.2.1, install dev dependencies

* keep install pipenv for xx for now?

* add pre-commit checks for poetry

* poetry lock is too slow

* update pip

* migrate to poetry groups

* update lockfile

* don't need to specify dev group unless it is made optional

* always install poetry

* set POETRY_VIRTUALENVS_CREATE instead, and use pipenv for xx

* use env for docs docker image

* alphabetical

* poetry 1.2.2

* add dev dependencies for typing

added in aacf6ae3

* remove constraint

* fix PIPENV_SYSTEM

* remove constraint

* don't need this here

* bump

* bump pipenv

adds support for installing local pyprojects (can add openpilot as dependency of xx)

* README improvements

* probably not necessary

* bump pip

* maybe not necessary?

* revert

* don't install openpilot itself into the virtual env

* remove PySide2 and shiboken2

reverts 3e41c775cbf670740ac648a8614d2d6b433312fe

* remove Pipenv, add xx dependencies, sync system python

* add pipenv as xx dep

* semver package constraints, use old lockfile versions

* fix casadi

* remove whitespace

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

* disable poetry cache

* cleanup

* prefer config file

Co-authored-by: Cameron Clough <cameronjclough@gmail.com>
Co-authored-by: Adeeb Shihadeh <adeebshihadeh@gmail.com>
old-commit-hash: a98d105cb9
2022-10-21 16:23:56 -07:00
Adeeb Shihadeh eec2ca1e8b CI speedup (#26096)
* CI speedup

* use the new stuff

* push

* no regressions

* try that

* don't let this slip

* fix modeld tests

* fix linter

* modernize prebuilt

* cleanup

* fix those

* increase a bit
old-commit-hash: 00494a44f4
2022-10-16 15:54:36 -07:00
Shane Smiskol 9af4e72ffd pre-commit: test translations (#25695)
* add test translations to precommit

* fix test translations pre-commit hook

* revert

* fix that

* add to release files

add to release files

* fix

* don't run test on stripped dir

* fix
old-commit-hash: 6393d29b04
2022-10-03 12:26:12 -07:00