Facebookプログラマーが新しい時間の単位、フリックを発明した

$config[ads_kvadrat] not found

Beachbody Coaching

Beachbody Coaching
Anonim

すべてのソーシャルメディアを征服したり、InstagramやOculus VRのようなものを入手したり、地元のニュースや消費者向け技術に拡大したり、 多分 創業者のMark Zuckerbergの大統領選挙の舞台を設定し、Facebookは先に進み、独自の時間単位を発明しました。

それは次のレベルのハイテク喧騒のように思えるかもしれませんが - 私たちは時間を混乱させるためにここにいます それだけでなく、Facebookプログラマが自分のオープンソースページにフリックと呼ばれる新しいユニットをリリースしたのには、実際には本当に良い理由があります。これは、コンピュータコードがビデオ、特にそのフレームレートをどのように扱うかという、驚くほど根本的な問題を解決しています。

フリックは1 / 705,600,000秒、すなわち約1.42ナノ秒として定義される。 Facebookの発表は、技術的には子会社のOculus VRを介して行われたが、Facebook Open Sourceはニュースをツイートしたが、それはナノ秒よりも大きい最小の時間単位であり、ビデオアプリケーションを扱うときのプログラミング言語C ++での使用向けに設計されている。

「映画、テレビ、その他のメディア用の視覚効果を作成する作業をする場合は、1フレームの時間を整数の固定数の細分に細分化するシミュレーションやその他の時間統合プロセスを実行するのが一般的です。」この新しいユニットのために。 「さまざまな理由から、これらの細分を累積して正確な1フレームおよび1秒の間隔を作成できると便利です。」

1 / 24、1 / 30、1 / 48、1 / 60、1などの一般的な映画のフレームレートに均等に分割されないため、実際には1ナノ秒、つまり10億分の1秒では不可能です。 1秒あたり/ 120フレーム。これはプログラムが正確に何ナノ秒がそれらのフレームレートに入るかの10進数近似を扱わなければならないことを意味します。

そしてプログラムは小数を好まない まったく 。バイナリコードの性質上、数値を適切に表現するためには数値を係数と指数に分割する必要があるため、非常に単純な小数であっても処理するのは非常に面倒です。たとえば、0.01と書くと、バイナリで(deep breath)0 01111000 01000111101011100001010として書き出して保存する必要があります。

そのような状況下では、フリックが行うように設計されているすべての一般的なフレームレートに均等に分割される新しい時間単位を作成することは、実際にはより簡単でより簡単です。たとえば、1/24 fpsビデオのフレームは29,400,000フリックですが、1 / 192,000 fpsのような途方もなく高いフレームレートでも、3,675フリックに均等に分割されます。

Oculus VR GitHubページには、C ++の用途に合わせてインストールする方法を知りたいという好奇心旺盛なプログラマーのためのハウツーをはじめ、より詳しく解説されています。だから、これが社会全体のFacebook標準時への切り替えを示す最初の兆候ではありません - ビデオとオーディオのアプリケーションをよりスムーズに動作させるための真剣に考えついたアイデアです。

$config[ads_kvadrat] not found