Movi API - Shaker/ Vibra Box

It is my belief that strong research must exist alongside the production of goods and services. Filmmakers, especially, know that behind the pomp and circumstance of any productive shoot is a well-developed itinerary, and behind a successful rough cut is a team of driven editors. No different is what is lies behind the technology producers use in the field and in the studio; here lie the engineers, those who are willing to explore the problems of the hour, and look for answers.

From June 5, 2017 until July 27, 2017, I joined the team at Windy Films as an intern, under the supervision of Harvey Burrell. I took up the role as a developer, tackling a very specific problem that the Windy team had experienced over the last few months of shooting: their footage was too steady. Among car chase shoots, their material felt slow and bogged down, hindered by smooth camera movement. What they wanted was something that made the chase scenes feel faster, by adding action to not what was in the frame, but to the frame itself. Of course, these motions needed to be deliberate. With machinery, we had the ability to pinpoint the frame motion we desired, eliminating the human element – and likely the associated error.

I was tasked to design something functional, easy to operate, and flexible for the needs of the project. What slowly took shape was a hardware and software prototype, implemented using a basic Arduino microcontroller connected to a Freefly MōVI Pro camera stabilizer. Through written code and Freefly’s public API, we were able to take control the MOVI Pro’s gimbal motors, constantly changing their rotational velocity. This resulted in jerky pan and tilt, and visually something along the lines of a shaking camera frame.

Throughout the entire process, I found myself caught up in what it meant to do research for a small company like Windy Films, working on the development side of their team. One of the biggest problems I faced was the feeling of being so peripheral. It is hard to feel connected to the team’s core when Windy is so focused on the day the day, the what do we need right now, and how are we going to get it done. All the phone calls, all the meetings, and all the coffee cups make you wonder how you feel about being so future-focused. There is an unwavering desire to ask the question, “Where is this going? For if not today, and not tomorrow, when will this mechanism be the present, integral Windy’s day to day?”

Through my time at the studio, I have realized the importance of mindfulness when in the vicinity of these thoughts. The truth is that with research comes much failure, and a successful mechanism may not come into existence within the span of two months. As I learn to converse with failure, it becomes clearer that the success of development is ingrained within the process itself: to learn more about a piece of hardware, a programming language, to be able to communicate my thoughts more clearly, to have the means to problem solve, think critically, be creative, and work passionately. These are all successes, small and large, independent of the project’s usability, when all is said and done.

Even if this shake mechanism doesn’t make it off the tables of Studio 16, even if it proves to be unusable, research must go on. Day in, day out, we must build and break: it is this continual act that eventually takes us one step further to being a more self-sustainable company.

We are still in pursuit of the three main goals we had for the shake mechanism back in June that revolve around function, use, and flexibility. There is no doubt that accomplishing these three will take help from others. Integrating this prototype into an existing environment is our next step, making the hardware easier to interact with, and the software more direct. We want to see this motion feature in the community around us, useful to many. With any interest in the the project, we hope that you find the following links useful and informative.

For a highlight video: https://www.youtube.com/watch?v=TiPTbAjHiWw&

For documentation: https://github.com/glassb/shake-mechanism