Inspiration
Introducing our online video editing collaboration tool, a response to the collective needs of our YouTube creator friends were frustrated because of no free solution where they could edit a video with their fellow content creators without file transfers and a lot of delay . Inspired by the collaborative nature of Google Docs, we explored open-source libraries, for the video editing experience , and thought of building real time editing on top of it.
What it does
The application allows users to join a video editing session. All changes done in a session are stored in an RDS and will be available to a user irrespective of when the user joins. When a user makes any kind of change to a video locally (adding effect or cropping or transitions), the changes become immediately available to all the users in the session. In this way, multiple designers or content creators can edit the same video and view the edits in real time.
How we built it
We have used an open source video editor for the front-end. We created a backend using Golang which handles sessions and manages the operations with the database.
Challenges we ran into
Initially, the challenge was building open-source libraries, with various attempts failing in the first few hours. After trial and error, success came when we managed to build OpenShot on Ubuntu. The hardest part was understanding the frontend code and identifying parameters for communicating with other users. There were instances were some objects had serializations issues and we could not send them over sockets. We then decided to find alternative front end codes, tried with a couple but didn't feel satisfactory with them. Ultimately, we looped back to our original one, determined to fix the issue. Finally at 6 in the morning, we were successful.
Accomplishments that we're proud of
In the limited time frame, we successfully edited and enhanced an open-source tool tailored to our idea. Successfully gained valuable insights and honed skills in navigating the intricacies of real-time connections, while effectively overcoming challenges associated with serialization.
What we learned
Facing challenges in library building and serialization but still continuing with our idea, we learned the power of persistence and never giving up. Also , the constraints of the hackathon, such as limited time and resources, encouraged creative thinking and innovative problem-solving within time defined boundaries.
What's next for Collabro
Next step is to add a geospatial index for the database. Then, users can select a portion of video as a 3-D object in space and lock the region. No other users can overwrite an ongoing change. Then, we need to improve the existing UI and add more editing features to the tool.
Built With
- golang
- openshot
- postgresql
- python
- websockets
Log in or sign up for Devpost to join the conversation.