Inspiration

Many victims of domestic violence, abuse, and the like have difficulty capturing proof of their situation right now. This means that in a court of law, there can be a lot of subjective "he said, she said." We would like to help change that by allowing any mobile device owner to open an app that will immediately record their situation with both video and audio and save the recording to the cloud in the event the physical device is lost, stolen, or damaged, helping ensure that victims have as much evidence for their case in court.

What it does

This app records a video feed from the device's camera immediately upon opening. When the user presses stop recording, they must authenticate via their device's screen lock (Face ID, fingerprint, Windows Hello, etc) to prove ownership of the device. After successful authentication, the app saves a local copy of the footage and uploads it to an S3 bucket that is publicly accessible.

How we built it

We used Next.js and various Node.js modules to build the PWA.

Challenges we ran into

Finding a way to get video sent to cloud storage was tricky. We wanted to live stream it in real-time, but quickly ran into limitations. As such, we pursued saving it locally first, then investigated cloud storage after getting the MVP.

Accomplishments that we're proud of

Learning how to interact with the MediaStream API built into modern browsers Utilizing MediaRecorder to save a local copy of the captured footage

What we learned

How to implement multimedia content in a web app

What's next for SafeStream

Real-time live streaming of footage to a cloud server, whether it be a continuous stream or chunks of recordings. This will ensure a better chance that at least some of the footage is stored remotely so suspects have a less successful chance at destroying court evidence.

Built With

Share this project:

Updates