I programmatori di Facebook hanno appena inventato il Flick, una nuova unità di tempo

$config[ads_kvadrat] not found

4 Modi per guadagnare da programmatore

4 Modi per guadagnare da programmatore
Anonim

Non contento di conquistare tutti i social media, acquisendo artisti come Instagram e Oculus VR, espandendo le notizie locali e la tecnologia consumer e può essere preparando il terreno per la corsa presidenziale del fondatore Mark Zuckerberg, Facebook è andato avanti e ha inventato la propria unità di tempo.

Mentre quello potrebbe sembrare il prossimo livello di hubris tecnologico - siamo qui per interrompere il tempo stesso e tutto ciò - c'è davvero una buona ragione per cui i programmatori di Facebook hanno rilasciato la nuova unità, nota come flick, sulla loro pagina open source. Sta risolvendo un problema incredibilmente fondamentale nel modo in cui il codice del computer si occupa del video, in particolare della frequenza dei fotogrammi.

Il colpo è definito come 1 / 705.600.000 secondi o circa 1,42 nanosecondi. Annuncio di Facebook - tecnicamente fatto attraverso la sua controllata Oculus VR, anche se Facebook Open Source ha twittato la notizia - osserva che è la più piccola unità di tempo più grande di un nanosecondo ed è progettata per l'uso nel linguaggio di programmazione C ++ quando si tratta di applicazioni video.

"Quando si lavora creando effetti visivi per film, televisione e altri media, è normale eseguire simulazioni o altri processi di integrazione temporale che suddividono un singolo frame di tempo in un numero fisso e intero di suddivisioni", la pagina spiega come motivazione per questa nuova unità. "È utile poter accumulare queste suddivisioni per creare intervalli esatti di 1 fotogramma e 1 secondo, per una serie di motivi."

In realtà non è possibile farlo con un nanosecondo o un miliardesimo di secondo, in quanto non si dividerà uniformemente in frequenze di fotogrammi di film comuni come 1/24, 1/30, 1/48, 1/60 o 1 / 120 fotogrammi al secondo. Ciò significa che i programmi devono fare i conti con approssimazioni decimali di esattamente quanti nanosecondi entrano in tali frame rate.

E ai programmi non piacciono i decimali affatto. La natura del codice binario rende enormemente ingombrante gestire anche i decimali molto semplici, poiché richiede la suddivisione del numero in un coefficiente e un esponente per poterlo esprimere correttamente. Quello che vorremmo scrivere come 0,01, ad esempio, deve essere scritto e archiviato come (respiro profondo) 0 01111000 01000111101011100001010 in binario.

In tali circostanze, è in realtà più semplice e più semplice creare una nuova unità di tempo che dividerà in modo uniforme in tutte le frequenze fotogrammi comuni, che il film è progettato per fare. Una cornice per un video a 1/24 fps è di 29.400.000 flicks, per esempio, mentre anche un frame rate incredibilmente alto come 1 / 192.000 fps si divide uniformemente in 3.675 flicks.

La pagina GitHub di Oculus VR ha un tocco in più, incluso un how-to per i programmatori curiosi che vogliono vedere come installarlo per i propri usi in C ++. Quindi non temere, questa non è la prima indicazione di un cambiamento a livello di società in tempo standard di Facebook - solo un'idea seriamente pulita per rendere più fluide le applicazioni audio e video.

$config[ads_kvadrat] not found