Multiple Camera Support in OpenROV



I am trying to figure out how to modify the OpenROV software to allow multiple cameras to be displayed. I am able to get 2 cameras operating and streaming but I can’t figure out how to get the second stream displayed. How do I generate another window or frame in which a second stream can be displayed?

Thanks for any help, tips, or tricks…


The additional camera can consider the IPCAM module, independent of the original system, only through the switch to the original Ethernet interface position, the host computer can use IPCAM own interface.
As long as the bandwidth of PLC is enough, there is no need to make too many changes to the original system


Thanks for your response. I don’t quite understand it though. I want to add another camera stream to the cockpit console so I get 2 streaming images instead of one inside the same cockpit. I can get another camera streaming but I don’t figure out how to modify the cockpit code to display another video stream inside the existing cockpit


IPCAM is an independent operating software and is not associated with ROV control


Actually, it looks like that what I really am interested in is modifying either the plugin mjpeg-packet-video.html or orov-video.html (or both) to accommodate display of at least 2 video streams in the cockpit. It seems that those are key and appropriate mods to either of those will make it possible. Now I just need to figure out the “appropriate mods”


OK. Here is what appears to be true. I can run multiple mpg_streamer applications and stream the result to separate websocket ports. I know that each port is live and add i available. There appear to be three files that play a role in displaying the socket output streams

plugins/video/public/js/video.js - contains the websockets created. I made this into an array keyed on the web socket address. What seems to happen is that upon camera registration only one camera is registered and maintains its web socket. The second camera connects and then closes

plugins/video/public/webcomponents/orov-video.html - I parametrized the templates to accept camera0, camera1, etc

plugins/mjpeg-video/public/webcomponents/mjpeg-packet-video.html - I added new canvases to the video container for camera0 and camera1and modified the functions get the information as to which camera they are operating on.

But I still see only one stream. What am I missing? How do I get the web socket to stay connected?