Using Stretch with AWS Robotics: Streaming Video

Hola Stretch Community,

I’m Alan G. Sanchez, a robotics Ph.D. student at the Oregon State University. I am part of the Personal Robotics Group, led by Dr. Bill Smart, where my research focuses on assistive robots. I am currently interning at Hello Robot, working alongside Amazon’s AWS RoboMaker team on an exciting project I want to share with you all!

With the guidance of the AWS RoboMaker team, I was able to get a Stretch robot to utilize AWS RoboMaker Cloud Extensions, Kinesis Video Streams (KVS) and Amazon Kinesis Video Streams with WebRTC. Here is a quick overview of these two AWS features:

  • KVS is a fully managed streaming service designed to securely ingest and store, video, audio, and other time-encoded data from connected devices to AWS. KVS lets users playback video for on-demand viewing and quickly build applications that utilize computer vision and video analytics.

  • KVS with WebRTC is a service that enables real-time communication (RTC) across browsers and mobile applications via simple APIs. It uses peering techniques for real-time data exchange between connected peers and provides low latency media streaming required for human-to-human interaction.

Below is a gif demonstrating Stretch broadcasting its camera feed to a WebRTC stream and viewed through the media playback viewer in the AWS console.

KVS

We’ve developed a guide for those interested in integrating these cloud extensions into their Stretch robot. Check out our open source tutorial on GitHub!

I want to use this space to acknowledge those who were such a big help in getting this project up and running.

  • Thank you to the AWS RoboMaker team, Vamshi Konduri, Emily Doherty, and Matthew Hansen for providing their KVS guide. Their suggestions and guidance have helped with the development of our tutorial.
  • The structure and layout advice from Binit Shah and Charlie Kemp was also essential in getting this tutorial in an engaging and easy to follow format. Also, Binit has been an amazing mentor supporting me throughout this project.
  • Aarju Goyal and Adam Chung, two other summer interns at Hello Robot, were kind enough to test the guide on their Stretch robots. Their feedback on how to further improve the tutorial was extremely valuable.
  • Lastly, I want to thank the whole Hello Robot team. They are an exceptional group of engineers that have fostered an inclusive and supporting environment. Interning here has been such a pleasure.

I’m excited to see how the Stretch community will utilize these cool cloud extensions. Please share on the forum if you do.

Very best,
Alan

6 Likes