Dutch and German video encoding company Transloadit has developed a new open source “resumable” file upload protocol called tus 1.0, which it is now preparing to launch. Notably, it has Vimeo on board to implement it.
The impetus behind developing tus came from the lack of standardised protocols for uploading, said Transloadit co-founder Kevin van Zonneveld, and frustrations with encountering poor connections when trying to upload files, especially on mobile devices, where uploads are interrupted and need to be restarted.
“They would be on their way and cells would switch cell towers or switch to Wi-Fi and another connection was broken.
Basically an uploaded file was interrupted and it would never be received by the website,” said van Zonneveld, core author of tus.
“An upload needs to be resumable. If you were able to upload to 40%, and the moment you have a connection again it needs to upload the remaining 60% and not start all over again.”
While the problem is most prevalent on mobile devices, it is also an issue in less developed parts of the world where connections are poor, van Zonneveld added.
Even in data centres where connections are much better, tus can be used to speed up uploads, added van Zonneveld. The tus protocol works by splitting a file into chunks and uploading these segments in parallel before sewing the parts back together on the server.
“The client that is uploading the file to the server splits the file into, for instance, eight chunks. Say now you have eight chunks of 12 gigabytes instead of one really big one,” explained van Zonneveld. “Now these are just all regular tus uploads but it happens in parallel. It doesn’t matter what order they are uploaded, what order they are received.”
Transloadit has been working on the protocol for the better part of three years - initially starting as a project on GitHub - and the startup has collaborated with engineers from Google and Yahoo along the way.
Video streaming site Vimeo became involved in 2013 when Vimeo's director of engineering Naren Venkataraman joined as project lead. The company has also added a Vimeo developer to the tus project full-time to see it through to 1.0.
Vimeo now plans to implement tus for its file uploads in early 2016.
“The tus is an open upload protocol that has been designed from ground up for reliability and high performance,” said Venkataraman. “At Vimeo we think that tus has found the right angle to attack the problem of unreliable file uploads. We plan to add support for tus and encourage API developers to switch to it.”
Transloadit says it is also in talks with a Dutch TV channel and several other potential partners regarding implementing tus.
Typically sites have used their own proprietary uploading solutions, said van Zonneveld, which are built “behind closed doors”. Vimeo itself had built its own custom solution but now Transloadit and Vimeo want to create a protocol that could eventually be used universally.
Van Zonneveld said that tus aims to be the one “language” spoken across the board, much like how HTTP is used for websites, and the company plans on rolling out support for all major programming languages in the future.
Transloadit, headquartered in Berlin, was founded in 2009 by engineers from Amsterdam and Berlin and is focused on open source software development.