Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Record live streaming video with WebRTC and stream with AWS

I'm trying to develop a website that basically lets a user visit a page, and lets say click a button, and use their built in camera to live stream videos with audio to others that visit another url.

I need some clarity on what I need to develop, what I can get from 3rd party to save time. AWS looks to cover all the encoding and delivery http://aws.amazon.com/cloudfront/streaming/, but I'm confused on the process on which I should record and delivery the content to S3. Just to much information overload.

In all my research I looks like I should build a WebRTC, which I have done, then transport that data with javascript from the clients browser to my server, and thus to AWS. Is this the best format, or should I been using a 3rd party thats putting more time into that element?

I have seen the Kurento project, as well as this RecordRTC project.

Like I said, I'm finding there is just to much information overload on the topic.

So what are my options for:

  • In browser recording with WebRTC. Anything else I should do or just force users to roll up to a supporting browser?
  • WebRTC means I have to do Javascript for the delivery, is node a better option for the server to take delivery of this streaming data?
  • Anything else I need to know before I pass it off to S3 for delivery to the cloud front?

As you can see the core of my question comes within the recording and transporting the data to the web server so I can delivery it for streaming.

like image 289
LeviXC Avatar asked Nov 27 '14 05:11

LeviXC


People also ask

Can I use WebRTC for live streaming?

WebRTC leverages three HTML5 APIs enabling browsers to capture, encode, and transmit live streams. While streaming workflows can often require an IP camera, encoder, and streaming software, the most basic WebRTC use-cases can manage the whole enchilada with just a webcam and browser.

What is Amazon Kinesis video streams with WebRTC?

Amazon Kinesis Video Streams for WebRTC is a fully managed AWS service that supports thousands of simultaneous video chats and frees developers from having to procure, set up and maintain their own media servers. It allows developers to easily embed video chat within their web, iOS and Android applications.

Which AWS service is used to capture streaming data?

Amazon Kinesis Data Firehose is the easiest way to load streaming data into AWS. It can capture and automatically load streaming data into Amazon S3 and Amazon Redshift, enabling near real-time analytics with existing business intelligence tools and dashboards you're already using today.

What is used for video streaming in AWS?

Customers use Amazon CloudFront to stream video to viewers across the globe using a wide variety of protocols that are layered on top of HTTP. The Amazon Content Delivery Network (CDN) can be used with AWS Elemental Media Services to implement two different types of video streaming.


1 Answers

I am looking for the same thing. In 2020, it seems it should be possible with RecordRTC and then uploading blobs / multiform data directly to S3.

like image 146
Flion Avatar answered Oct 30 '22 07:10

Flion