At our juggling practice, we have a giant screen that we have yet to put to use. So now, we can take video and play it on the monitor with a delay. That way, you can try a trick with all of your focus on trying the trick and afterwards watch the instant replay to examine technique and see how cool it looks. Then if you get something that looks cool, you can save it. This can also be applied to any other skill or sport that requires practicing good technique.
What it does
Takes webcam video and plays it back at a delay. It uses loop recording to store the video so only a fixed amount of memory is required, so it can be run for extended periods of time without running out of memory.
How I built it
The video playback and writing is in python, using opencv. The web interface uses Flask.
Challenges I ran into
Had to learn some Flask basics to get the web server to work.
Accomplishments that I'm proud of
Making a project that I will actually use on a regular basis. I've wanted something sort of like this for quite a while so it's nice to see it actually come to life.
What I learned
Come up with an idea well before my next hackathon. I'm glad this got done, but I think we could have tackled a more ambitious project if we had thought of one.
What's next for VidDelay
Make the web interface prettier. Maybe show the video stream on the web interface as well.