-
-
Notifications
You must be signed in to change notification settings - Fork 17
Camera Streaming
Quintin edited this page Sep 28, 2023
·
4 revisions
Context: At URC we are not allowed to look directly at the rover. Instead we are in a "basestation" which is sealed off. Thus we need a camera stream to view what is happening near the rover.
Problem: GStreamer is finicky and unreliable. At URC it cut out and we did not regain it. It also is such a general tool that it suffers performance issues - we could get a much faster and robust stream by writing some custom code.
Solution:
- Use the NVIDIA Video Encoder API directly. Encode using H265 (HVEC) which is better than H264 (previously used).
- Write a custom network protocol between the rover and the basestation.
- Write a node that runs on the basestation which decodes H265 and sends it to the web browswer
- Write Vue.js code to set up a websocket and parse this video. Display it to a canvas or video tag