有想法!Facebook定義了一個新的時間單位Flicks
本文來源:大數據文摘
編譯:龍牧雪 魏子敏
今天凌晨,Facebook推出了一款新"產品"——Flicks,一種新的時間單位。是的,一個新的時間單位,和「秒」或「分鐘」或「小時」一樣的時間單位。
Facebook開源官方發推特發布了這一消息
不少人可能會對此感到奇怪,為什麼Facebook突然弄出這麼個東西來。據悉,Flick這個名字本身是「frame-tick」的混成詞,Flick這個時間單位旨在幫助測量視頻幀速率的單個幀持續時間。所以無論視頻是24hz, 25hz, 30hz, 48hz, 50hz, 60hz, 90hz, 100hz還是120hz,都可以使用整數的Flicks來進行表示。
程序員已經在使用C ++中的內置工具來管理這些精確的幀同步,特別是在CGI中設計視覺效果的時候,但是C++中最精確的時間是納秒,並不能精準表示大多數幀速率,只能四捨五入。
創建一個新的時間單位來解決這個問題的想法可以追溯到2016年,當時,開發者Christopher Horvath在Facebook上提出了這個問題,他是Facebook Story Studio前架構師,曾憑藉之前在Oculus製作的電影「Henry」拿到艾美獎,現在他已經離開Facebook。
實際上,這是一種非常聰明的時間分配方式,理論上來說,它的使用可以使視頻和音頻製作更加和諧。
那麼,如何定義「一個flick」?
如果你喜歡數字,一個flick是七千五百六十萬分之一秒(1 / 705,600,000),如果你更喜歡小數,則flick是1.417233560090703e-9秒。
這種新的時間單位有什麼用途呢?
讓我們舉個數字的例子說明一下。
下面是一個可以被1 / 706,600,000均分的數字列表:8,16,22.05,24,25,30,32,44.1,48,50,60,90,100,120。注意到它們的排列模式了嗎?
即使你不從事媒體製作,其中一些數字可能還是看起來很熟悉。這是因為它們都是用於編碼或顯示電影和音樂等的幀率或頻率。每秒24幀,120赫茲電視,44.1KHz採樣率音頻。
這些分數解決了十進位的不便——使用十進位時通常需要四捨五入。例如,整個電影業所使用的幀數1/24秒等於0.0416666666666666...秒(無限循環),所以為了方便起見可以縮寫為0.04167。更容易記住,但不確切,誰知道什麼時候這個「額外」的0.00000333333...秒可能會破壞什麼?
而如果使用flicks,幾乎所有這些重要的分數頻率將變成一個確切的整數,你不需要再進行預估:例如,1/24秒是2,940萬個flicks。 1/120秒是5,880,000個flicks。 1 / 44,100秒是16,000個flicks。
這些數字對你來說可能並不是那麼容易記住,但是它使得它們在系統彼此匹配時更加簡單,而不會產生某種格式間的分數,而這種分數又必須用另一個調整頻率來解決。
電腦愛整數,我們也是如此。
啊!一切事物的本來面貌終於被還原了!涉及到視頻和音頻編輯和效果,調整時間和幀速率總是讓人很痛苦,而採用這一新的時間單位顯然能帶我們實現一種宇宙之大和諧~
Flicks代碼可以在GitHub上下載和分享:
https://github.com/OculusVR/Flicks
最後,一句話總結:就是把常見幀率的最小公倍數的倒數,定義成一個新的單位,叫Flicks。
TAG:AI腦力波 |