- Newest
- Most votes
- Most comments
I have used the "KVS WebRTC Test Page" between my PC and laptop, and the stream runs well (can see the footage from both ends), but I can't see the media in the "Media playback" section on kinesis video stream webpage.
I can't see the video stored. is there any configuration needed for storing it on KVS storage?
I need to store the footage for long periods (months), therefore I'm planning to move it immediately from KVS storage to S3 bucket.
That said I understand I need to make use of Amazon Kinesis Video Streams (KVS) because I'd like to ingest the stored video, playback and analyze the videos offline. I understand I need to convert the webcam frames into streamable fragments for feeding Kinesis Video Streams, is there any example of this on the web? I couldn't find repo from the past 2 years
Hi. WebRTC is for real-time peer to peer streams. Like a video doorbell for instance.
Amazon Kinesis Video Streams (KVS) is essentially a service for streaming video to the cloud and storing it there. With APIs for consuming the video.
Amazon Kinesis Video Streams (KVS) for WebRTC is an implementation of WebRTC, with the service offering managed STUN and TURN servers.
WebRTC itself doesn't store video. However, the Amazon KVS for WebRTC service and SDKs support storing video in Amazon KVS.
Therefore correct me if I'm wrong, I can't stream and record directly from browser to KInesis Video Stream?
Check out the KVS WebRTC Test Page. This workshop can take you through it: https://catalog.us-east-1.prod.workshops.aws/kinesis-video-streams/en-US/6-webrtc-sdk/3-ingestion. It grabs your webcam, and stores straight to KVS. You can find source code for the SDK and test page here: https://github.com/awslabs/amazon-kinesis-video-streams-webrtc-sdk-js/
This will store video in KVS, not S3. Is S3 a hard requirement? KVS storage costs are similar to S3 standard tier, but the advantage of KVS are those APIs to help with consumption. Especially if you want to playback in browser using HLS and DASH. You can also use the APIs to get video out of KVS and store in S3.
Thank you for the help @Greg_B and @Didler_Durand I saw the stream and replayed it on "Media playback", I tried to trigger a lambda function when a video is being stored in KVS using Amazon EventBridge, I have configured a rule.
{ "source": ["aws.kinesisvideo"], "detail-type": ["Kinesis Video Stream Media Source Ready"], "detail": { "streamName": ["my_stream_name"] } }
but it failed since I can't see the logs written in the lambda function which should be triggered. Any resource/material on how to configure correctly the EventBridge for triggering the lambda function when a stream is detected?
Relevant content
- asked 2 years ago
- asked 3 years ago
- AWS OFFICIALUpdated 2 years ago
- AWS OFFICIALUpdated 8 months ago
- AWS OFFICIALUpdated 7 months ago
Did you setup the "WebRTC Ingestion and Storage" options on the test page? If so it should be stored in the stream, and hence the "Media playback" should work. Here's another workshop that does it: https://catalog.us-east-1.prod.workshops.aws/workshops/0c7e49a5-b5c4-4f6d-b26b-9b2d8b5cbd2f/en-US/kvs
I'm confused by your question. The KVS WebRTC test page is doing that, if you setup the "WebRTC Ingestion and Storage options".