Facebook-programmeurs hebben de Flick, een nieuwe tijdseenheid, uitgevonden

$config[ads_kvadrat] not found

Verplicht programmeren: 'Je verzint een nieuwe taa - RTL NIEUWS

Verplicht programmeren: 'Je verzint een nieuwe taa - RTL NIEUWS
Anonim

Niet tevreden met het veroveren van alle sociale media, het kopen van Instagram en Oculus VR, uitbreiden naar lokaal nieuws en consumententechnologie, en kan zijn Mark heeft de weg geëffend voor de presidentiële run van oprichter Mark Zuckerberg en Facebook heeft zijn eigen tijdseenheid uitgevonden.

Hoewel dat klinkt als het volgende niveau van technische hubris - we zijn hier om de tijd zelf te verstoren, en dat alles - er is echt een goede reden waarom Facebook-programmeurs de nieuwe eenheid, bekend als een film, op hun open source-pagina hebben vrijgegeven. Het lost een schokkend fundamenteel probleem op met betrekking tot de manier waarop computercode omgaat met video, met name hun framesnelheden.

De flick wordt gedefinieerd als 1 / 705.600.000 seconden, of ongeveer 1.42 nanoseconden. Facebook's aankondiging - technisch gedaan via haar dochter Oculus VR, hoewel Facebook Open Source het nieuws tweette - merkt op dat dit de kleinste tijdseenheid is die groter is dan een nanoseconde, en het is ontworpen voor gebruik in de programmeertaal C ++ bij het omgaan met videotoepassingen.

"Bij het maken van visuele effecten voor film, televisie en andere media, is het gebruikelijk om simulaties of andere tijdintegrerende processen uit te voeren die een enkel tijdsframe onderverdelen in een vast geheel aantal onderverdelingen," de pagina legt uit als de motivatie voor deze nieuwe eenheid. "Het is handig om deze onderverdelingen te kunnen verzamelen om exacte 1-frame en 1-seconden intervallen te creëren, om verschillende redenen."

Dat is eigenlijk niet mogelijk met een nanoseconde of een miljardste van een seconde, omdat deze niet gelijkmatig wordt verdeeld in gewone filmbeeldsnelheden zoals 1/24, 1/30, 1/48, 1/60 of 1 / 120 frames per seconde. Dit betekent dat programma's moeten omgaan met decimale benaderingen van precies hoeveel nanoseconden in die framesnelheden gaan.

En programma's houden niet van decimalen helemaal niet. De aard van de binaire code maakt het enorm onhandelbaar om zelfs zeer eenvoudige decimalen te verwerken, omdat het vereist dat het getal wordt opgesplitst in een coëfficiënt en een exponent om het correct uit te drukken. Wat we zouden schrijven als 0.01, bijvoorbeeld, moet worden uitgeschreven en opgeslagen als (diep ademhalen) 0 01111000 01000111101011100001010 in binair getal.

Onder die omstandigheden is het eigenlijk eenvoudiger en eenvoudiger om een ​​nieuwe tijdseenheid te maken die gelijkmatig wordt verdeeld in alle algemene framesnelheden waarvoor de flick is ontworpen. Een frame voor een 1/24 fps-video is bijvoorbeeld 29.400.000 flicks, terwijl zelfs een belachelijk hoge framesnelheid zoals 1 / 192.000 fps gelijk verdeeld is in 3.675 flicks.

De Oculus VR GitHub-pagina heeft meer informatie over de film, inclusief een how-to voor nieuwsgierige programmeurs die willen zien hoe ze het kunnen installeren voor hun eigen C ++ -gebruik. Dus wees niet bang, dit is niet de eerste aanwijzing van een maatschappijbrede overgang naar Facebook Standard Time - gewoon een serieus goed idee om video- en audiotoepassingen soepeler te laten verlopen.

$config[ads_kvadrat] not found