Original post

Pion/mediadevices, is a cross platform library which takes input from arbitrary media input devices (i.e. camera, microphone, screen share), with a simple and elegant API to create media pipelines.

  • Want to create a security system, the library handles viewing from tons of devices at once
  • Want to send your screen peer to peer, super easy!
  • Want to create a robot to track you around the house and remind you to take the dog out, slightly less easy, but getting the camera and microphone and processing it in an elegant pipeline, super duper easy!


mediadevices provides access to media input devices like cameras, microphones, and screen capture. It can also be used to encode your video/audio stream to various codec selections. mediadevices abstracts away the complexities of interacting with things like hardware and codecs allowing you to focus on building applications, interacting only with an amazingly simple, easy, and elegant API!

Github: https://github.com/pion/mediadevices

Face detection demo


  • Webrtc – Use Webrtc to create a realtime peer-to-peer video call
  • Face Detection – Use a machine learning algorithm to detect faces in a camera stream
  • RTP Stream – Capture camera stream, encode it in H264/VP8/VP9, and send it to a RTP server
  • HTTP Broadcast – Broadcast camera stream through HTTP with MJPEG
  • Archive – Archive H264 encoded video stream from a camera

submitted by /u/lherman-cs
[link] [comments]