Inspiration
BoardStream provides better visibility for students with bad eyesight or sitting in the back of lecture halls.
What it does
Board Stream is an application that live streams a whiteboard for enhanced viewability in classes. The area of the whiteboard between four placemarkers is captured, regardless of camera positioning. Students can also capture screenshots of the whiteboard when external objects block the frame of view.
How we built it
Frontend: Used Svelte to show main elements in one page Used HTML/CSS/JS for styling
Backend: Mapped Flask routes/URL to Python functions UDP socket sends video packets to frontend/UI Used C++ OpenCV library cropped whiteboard, took video input Qt framework allowed for multithreading, simultaneously ran GUI (output) and video input
AWS: Connect to AWS EC2 instance via ssh from local computer Used Putty and PuttyGen Created private key
Challenges we ran into
Unable to implement interactive buttons on the website Trouble transferring video feed to different computers, did not have same level of functionality on different devices Almost deleted file explorer and briefly locked out of computer by toggling security settings
Accomplishments that we're proud of
Program worked momentarily on a computer Learned how to use virtual env and created a web app with a React frontend and Flask backend Implemented OpenCV to broadcast live video on web app Successfully hosted the web app on AWS, connected to EC2 instance through SSH
What we learned
Create outline/plan out different segments of project right when hackathon starts Don't underestimate the amount of time needed to solve errors/trouble shoot
What's next for BoardStream
Automatically capture screen before board is erased or external image (hand, body) blocks view Integrate OCR program that converts writing to text
Log in or sign up for Devpost to join the conversation.