Inspiration

Watching a simultaneous and synchronized view of sporting/gaming events or livestreams can be challenging even with the help of ViewSync, as manually synchronizing the audio is difficult and error prone.

What it does

Our tool synchronizes any number of videos using audio processing algorithms, and returns a link which automatically sets up the synced multiplex on ViewSync.

How we built it

We have a basic HTML/CSS/JS frontend and Flask on the backend, which enables the scientific Python packages needed for processing.

Challenges we ran into

  • Hosting the backend on free tier remote servers proved to be challenging due to the large memory and compute footprint.
  • Cloud resources had trouble downloading audio files from YouTube, possibly because of their streaming policies for cloud resources.
  • Fundamental bandwidth limitations mean that our algorithm is somewhat slow for large videos or a large number of videos.

Accomplishments

The algorithm works extremely well, even for multiple long videos, and the UI (inspired by Kung Fu on NES) came out very nicely.

What we learned

It was all of our first time on a full-stack project. We all learned a lot from front to back, especially about communication between the two.

What's next for Vid Sync

Turn it into a scalable website and navigate YouTube's streaming policies more carefully

Share this project:

Updates

posted an update

If you run into unexpected errors, for example, getting an error even though the YouTube link you put in are all correct, please DM me on Discord @cyano_hibiki_0616. It could very likely be YouTube blocking our video downloading tools.

Log in or sign up for Devpost to join the conversation.