sunnypilot/tools/camerastream
Kacper Rączy c96dbd5a0b
Fix msgq context overrides (#33014)
* Fix msgq context overrides

* Remove unneccesary changes

* add reset_context helper

* Remove redundant import
2024-07-18 20:19:39 -07:00
..
README.md camerastream instructions (#31326) 2024-02-06 13:19:01 -08:00
compressed_vipc.py Fix msgq context overrides (#33014) 2024-07-18 20:19:39 -07:00

README.md

Camera stream

compressed_vipc.py connects to a remote device running openpilot, decodes the video streams, and republishes them over VisionIPC.

Usage

On the device

SSH into the device and run following in separate terminals:

cd /data/openpilot/cereal/messaging && ./bridge

cd /data/openpilot/system/loggerd && ./encoderd

cd /data/openpilot/system/camerad && ./camerad

Note that both the device and your PC must be on the same openpilot commit.

Alternatively paste this as a single command:

(
  cd /data/openpilot/cereal/messaging/
  ./bridge &

  cd /data/openpilot/system/camerad/
  ./camerad &

  cd /data/openpilot/system/loggerd/
  ./encoderd &

  wait
) ; trap 'kill $(jobs -p)' SIGINT

Ctrl+C will stop all three processes.

On the PC

Decode the stream with compressed_vipc.py:

cd ~/openpilot/tools/camerastream && ./compressed_vipc.py <ip>

To actually display the stream, run watch3 in separate terminal:

cd ~/openpilot/selfdrive/ui/ && ./watch3

compressed_vipc.py usage

$ python compressed_vipc.py -h
usage: compressed_vipc.py [-h] [--nvidia] [--cams CAMS] [--silent] addr

Decode video streams and broadcast on VisionIPC

positional arguments:
  addr         Address of comma three

options:
  -h, --help   show this help message and exit
  --nvidia     Use nvidia instead of ffmpeg
  --cams CAMS  Cameras to decode
  --silent     Suppress debug output

Example:

cd ~/openpilot/tools/camerastream && ./compressed_vipc.py comma-ffffffff --cams 0
cd ~/openpilot/selfdrive/ui/ && ./watch3