Evercoast is a US-based company unlocking the creation of volumetric content. Taking the volumetric video recording, rendering, streaming, and 3D model generation to an unprecedented level, Evercoast quickly became an industry leader by offering an end-to-end, fully automated, and fast software solution, enabling a wide range of configurations for everything from face captures at home to full body 360 stages. What’s more, it harnesses the power of cloud computing, which makes it a highly scalable tool.
As technology provided by Evercoast is universal, it can empower companies in various industries: from entertainment, sport, healthcare, and logistics, through retail and education, to a broad range of use cases. Just to name a few, Intel, NBC UNIVERSAL, WarnerMedia, Verizon, and COMCAST have already experienced a revolutionary shift to 3D content and communications.
The client reached out to us to improve the scalability and efficiency of their rendering processes responsible for converting 2D images into 3D volumetric output. Back then, the rendering pipeline was capable of running only on one server. Given the amount of data to be processed and the idea of having a scalable SaaS solution, that was a big business and technology bottleneck.
Evercoast decided to cooperate with us due to our strong competencies in Python web development and AWS, which allowed us to address the problems mentioned above. Our cooperation boiled down to two main points:
holographic one-to-many communication platform
3D streaming
years of ongoing cooperation
Although Evercoast approached us first in October 2018, one could say that our relationship began much earlier than that. That’s because Ben Nunez, the company’s CEO, has known Merixstudio for over a decade. Having worked with us a couple of times before, he believed we’d be capable of solving the scalability and efficiency-related problems his company was dealing with. To address these issues, we put together a project team with two developers as a core as well as a Project Manager and DevOps engineers lending their skills when needed.
Merixstudio’s squad acts as a team extension accountable to the client’s Project Manager. This, however, doesn’t curb our technological creativity. To quote Ben Nunez’s review on Clutch, “[Merixstudio’s team] helps us think through things and contribute to what the best approach is. That balance of being able to execute but then also contribute to the technical direction of what they’re working on has been helpful”.
Working with Evercoast, we follow an iterative release process, which means we can distinguish several components of our collaboration. The first would be boosting the pipeline that manages all of the client’s computer vision applications. Initially, the issue was the unbearable length of the sequential processing run on a single computer. Our team addressed it by using AWS – as a result, the 3D rendering pipeline can be completed much faster, using 1,000s of CPU cores. This part of the project went live at the end of 2018.
Then, we proceeded to work on desktop and web applications. The former, created by Evercoast’s team, serve to record videos and transfer them to the cloud. In this case, our scope of work is limited to providing frontend support – one example may be introducing Snapcraft to ensure the quick and smooth installation of the app. Our main focus is the web application, which we’ve built from scratch and are currently engaged in its maintenance. Based on Python, Django, and Angular, this part of the Evercoast’s product is used for managing the assets and the resulting renders.
Over time, we’ve worked on other improvements as well. At its core, Evercoast’s product relies on the cloud, which means a lot of captured data has to be streamed for processing. Such an approach has its limitations in cases such as trade fairs, where our client can present the system to a wide audience but the Internet connection on-site is far from perfect. We've overcome this issue by preparing a version that can run locally. Now, we’re working on expanding the platform’s reach, power, and flexibility.
Since Evercoast’s product is one of a kind, working on this project is challenging. Evercoast’s 3D rendering process is exceptionally complex and involves processing massive amounts of data. As you may expect, some of our goals are to make it fast, efficient, and thus cheaper to execute. The real challenge is to attain them without having direct access to the cameras – thus not having the opportunity to test the entire rendering process on our own. Luckily, open communication with the client and understanding of their objectives help us deal with this issue.
an easy-to-use web application helps to get information on past recordings, download final files, and control what the user will obtain after processing.
this feature keeps users up to date with the progress of the rendering process. On the one hand, it sends notifications to the web app and Slack after completing every rendering stage and emails the user when the process is finished. On the other hand, as it notifies Evercoast of any errors that could hamper rendering, the system ensures high quality of service offered by our client.
as compared to the previously implemented local single machine rendering, the cloud solution enables users to render long captures in a significantly shorter time.