In Jan 2020, I took a DaVinci Resolve course at Blackmagic's Burbank HQ, with my collaborator Derek. We wanted to deep dive into Resolve and get a straight answer from the trainers and the devs at Blackmagic, whether true multi-collaborator editing is possible in the editing software.
The devs at BMD strugged their shoulders and casted their doubts about remote editing, but me and Derek looked at the live-collab features in Resolve (local collaboration over LAN) and felt that there must be a way to get two separate computers linked over the internet!
Then, the 2020 COVID pandemic hit, and while I was living in the SF Bay, Derek was in Los Angeles. We wondered if the BMD devs were wishing they'd taken us more seriously just a few months before.
We tried everything from a naiive VPN to an AWS server hosting projects, but it was clear that the code tried very hard to prevent any machine not on the same local subnet (usually, the same local network router) from connecting to eachother.
Finally, in 2021, I went about looking at Wireguard
as a VPN solution.
As soon as I got a Wireguard
configuration going, I connected
my laptop through an iPhone hotspot to my PC's Project Server, and it worked!!
I spent some time thinking about how to create a hands-off authentication server for the Wireguard keys and came up with a pretty straightforward TCP authentication protocol
Excited, I spent a weekend building a Python
app with PyQt5
for UI to clarify the
process of setting up a Wireguard VPN and linking Resolve sessions.
I published it on GitHub with an open source license
and made this little tutorial to onboard folks!
In the process of actually using the tool, it was clear why BMD had not enabled this functionality from the begining - there could be major latency issues, big security holes, and the distinct potential to corrupt databases if latency got out of hand.
This was all developed about 1-year before Blackmagic finally shipped a Cloud Collaboration product in DaVinci Resolve 18, and updated the database to handle larger latencies!
Today, I use that product daily in my editing client work for creators.