Skip to content

a demonstration of streaming video data to AWS kvs in pure rust.

Notifications You must be signed in to change notification settings

dadleyy/rs-kvs-streamer

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

rs-kvs-streamer

This is a pure-rust implementation/demonstration of how one might build an application that streams video data to amazon web service's kinesis video streams (kvs).

The majority of the implementation here is combining the apis of several multimedia crates, which are truly performing the heavy lifting:

  1. opencv - this crate is used to interact with the camera hardware.
  2. openh264 - once we have video data, kvs prefers it to be encoded in the h264 format.
  3. webm_iterable - once we have encoded data, we need to put it in the MKV media container.

Running

Currently, this crate exposes a single binary (src/main.rs), which uses clap to provide a command line interface.

Credentials are loaded from the environment, and dotenv is being used to source an optional .env file from the current working directory. A typical .env file would look like:

AWS_STREAM_ACCESS_KEY=...
AWS_STREAM_SECRET_KEY=...
AWS_STREAM_NAME=...
AWS_STREAM_ARN=...
AWS_STREAM_REGION=...

With a .env file prepared, the command line help can be viewed by running:

cargo run -- --help

About

a demonstration of streaming video data to AWS kvs in pure rust.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages