Video streaming among an array of smartphones for monitoring a R33 robot

The main idea of the project is to enable a live video streaming, over an array of smartphones to control and monitor a R33 robot. The implementation should support a star/mesh topology, and a bandwidth to enable good quality video streaming. We tested many methods for implementing the streaming:

Streaming over a shared database – Firebase

  1. Another reason why this method was not used, was duo to the random delays in read/write times.
  1. Streaming over a TCP/IP socket – android:
    1. The idea is to establish a socket connection between two devices and begin the data transfer.
    2. We took it further and implemented a better algorithm, that uses a multi-threaded buffer for saving frames (to minimize data loss).
    3.  Conclusion:
      • The best method was to stream over TCP/IP sockets.
      • The algorithm that uses multi-threaded buffers provide better video quality and less frame loss.
      • The algorithm could be expanded to star/mesh topologies easily.