We already have a well-established way of representing time using years, months, week, days, hours, minutes, and seconds. Want to go smaller? We’ve got milliseconds, microseconds, and even nanoseconds. But none of these suited Facebook in terms of accuracy, so engineers at the social network came up with a brand new unit of time called Flicks.
A flick, as described on the Flicks GitHub page, is “the smallest time unit which is LARGER than a nanosecond.” One flick is 1/705,600,000 seconds, where as a nanosecond is 1/1,000,000,000 seconds. But why did Facebook need to invent Flicks? It’s in order to better accommodate media creation and in particular visual effects.
When creating visual effects for film, television, or other media formats, it is typical for the action to be broken down into single frames and looked at per second intervals. The problem being, nanoseconds don’t allow for the perfect division of the most common frame rates. Flicks do. For example, a single 24fps frame is 29,400,000 flicks, a 30fps frame is 23,520,000 flicks, and a 60fps frame is 11,760,000 flicks.
Regardless of the frame rate, Flicks allow for an exact representation without any fractional amounts of time making them easier to work with. At least, that’s the theory and Facebook is running with it. Flicks also works well with the most common audio sample rates (8kHz, 16kHz, 22.05kHz, 24kHz, 32kHz, 44.1kHz, 48kHz, 88.2kHz, 96kHz, and 192kHz).
The aim of Flicks is to offer a way of keeping everything in sync easily. Facebook has decided to share its work using the BSD License, meaning there’s every chance it could be integrated into some if not all of the popular video editing software out there. Even if it doesn’t, expect any internal media creation and editing at Facebook to be handled in Flicks from now on.