Команда Facebook представила проект Flicks – это абсолютно новая единица времени, как часы, минуты, секунды… Согласно документации на GitHub, Flick – это “самая маленькая единица времени, которая больше наносекунды” и исчисляется как 1/705 600 000 секунды. Для сравнения, наносекунда – это 1/1 000 000 000 секунды, что делает Flick единицей, длиной в 1,41723356 наносекунды.
We’ve launched Flicks, a unit of time, slightly larger than a nanosecond that exactly subdivides media frame rates and sampling frequencies. https://t.co/w9SDBznXRE
— Facebook Open Source (@fbOpenSource) 22 января 2018 г.
Зачем нам новая единица времени и что не так со старыми? Во-первых, как предполагают в The Verge, какой смысл останавливаться на корпоративном доминировании и интернет-рекламе, если можно определять само течение времени? А во-вторых, у Flick есть реальное практическое применение. Данная единица времени создана таким образом, что идеально подходит для работы с раскадровкой видео. Если измерять длину кадра во “фликах”, а не в наносекундах, то синхронизация всегда будет идеально вписываться в неделимые единицы времени. При этом видео может быть любой частоты: 24Гц, 25Гц, 30Гц, 48Гц, 50Гц, 60Гц, 90Гц, 100Гц или 120Гц.
На сегодня для работы с синхронизацией программисты используют встроенные инструменты C++, особенно в области визуальных эффектов в CGI. Но в C++ самый точный тайминг возможен в наносекундах, которые в большинство фреймов целиком не вписываются – приходится их делить. Flick решает эту проблему.
Впервые идею создать специальную единицу времени для синхронизации фреймов высказал разработчик Кристофер Хорват в прошлом году. Команда видеомонтажа The Verge считает, что в теории “флики” действительно могут оказаться полезными, но данную гипотезу еще предстоит подтвердить на практике.
Напомним, недавно Facebook объявил, что урежет охваты постов брендов в ленте. Предпочтение — за контентом друзей.