Action Sports Delayed Replay Stream

I want to building a delayed stream replay system.

The idea is this: There is a camera pointed at the airbag or foampit, and the stream is played on a near-by screen (or perhaps projected) with a ~20 second (configurable) delay. This allows the rider to perform their trick, and gives them time to get off the airbag or out of the foampit, and view their performance. This provides immediate feedback on what adjustments need to be made, which should help accelerate the learning process.

For example maybe the rider is over-rotating a back flip. The rider can then see that in the playback and make adjustments accordingly. Without relying on someone to film for them and having to check the footage between runs.

This is something I had always wanted at the facility ever since I saw the one at Woodward foampit in a Scotty Cranmer video. Woodward is one of the largest skateparks (or rather a collection of skateparks) in the world. I hope to one day to travel there and ride it! But until then my goal is to bring this tech to my local park, as well as provide a setup guide so any skatepark can replicate the set up. This could also provide value to other sports too, say figure skating?

Example at ~4:20:

And of course like everything I do it will be open source and leverage existing open source technology where possible.

To handle the steaming, the obvious choice is OBS which already supports delay. But there are some additional things I’d like to add that will require OpenCV. And luckily it seems there is already support for OBS + OpenCV with the ‘OBS Virtual Camera capture’ feature!


So the requirements are:

  1. local stream. doesn’t need to touch the outside internet.
  2. multiple viewing clients: only 2 for now
  3. configurable delay (already handled by OBS)

edit: simplify