Facebook-programmører har lige fundet flickeren, en ny tidsenhed

$config[ads_kvadrat] not found

Массовая рассылка в личку Facebook - Простая программа [Обзор]

Массовая рассылка в личку Facebook - Простая программа [Обзор]
Anonim

Ikke tilfreds med at erobre alle sociale medier, erhverve lignende Instagram og Oculus VR, udvide sig til lokale nyheder og forbrugerteknologi, og måske sætter scenen for grundlæggeren Mark Zuckerbergs præsidentkørsel, har Facebook gået videre og opfundet sin egen tidsenhed.

Selvom det måske lyder som det næste niveau af tech hubris - vi er her for at forstyrre tiden selv, og alt det - der er faktisk en rigtig god grund til, at Facebook-programmører lancerede den nye enhed, kendt som en flick, på deres open source-side. Det løser et chokerende grundlæggende problem i, hvordan computer kode beskæftiger sig med video, specielt deres billedfrekvenser.

Flicket er defineret som 1 / 705,600,000 sekunder eller ca. 1,42 nanosekunder. Facebook's meddelelse - teknisk gjort gennem sit datterselskab Oculus VR, selvom Facebook Open Source tweeted ud nyhederne - bemærker, at det er den mindste tidsenhed større end en nanosekund, og den er designet til brug i programmeringssproget C ++, når det handler om videoapplikationer.

"Når man arbejder med at skabe visuelle effekter for film, tv og andre medier, er det almindeligt at køre simuleringer eller andre tidsintegrerende processer, der opdeler en enkelt tidsramme i et fast, heltal antal underopdelinger", forklarer siden som motivationen for denne nye enhed. "Det er praktisk at kunne akkumulere disse underopdelinger for at skabe præcise 1-frame og 1 sekunders intervaller af forskellige årsager."

Det er faktisk ikke muligt at gøre med en nanosekund eller en milliardedel af et sekund, da det ikke vil opdele jævnt i almindelige filmrammer som 1/24, 1/30, 1/48, 1/60 eller 1 / 120 rammer pr. Sekund. Dette betyder, at programmer skal beskæftige sig med decimal-tilnærmelser af præcis, hvor mange nanosekunder der går ind i disse billedfrekvenser.

Og programmer kan ikke lide decimaler overhovedet. Binary kode karakter gør det massivt uhåndterligt at håndtere selv meget enkle decimaler, da det kræver opdeling af tallet i en koefficient og en eksponent for at udtrykke det korrekt.Hvad vi f.eks. Skriver som 0,01, skal udskrives og opbevares som (dyb indånding) 0 01111000 01000111101011100001010 i binær.

Under disse omstændigheder er det faktisk lettere og mere ligetil at oprette en ny tidsenhed, der vil opdele jævnt i alle de fælles rammepriser, som flicket er designet til at gøre. En ramme til en 1/24 fps video er f.eks. 29.400.000 flicks, for eksempel selvom en latterlig høj billedfrekvens som 1 / 192.000 fps fordeler jævnt i 3.675 flicks.

Oculus VR GitHub-siden har mere på flicket, herunder en vejledning til nysgerrige programmører, der ønsker at se, hvordan man installerer det til deres egne C ++-anvendelser. Så frygter ikke, det er ikke den første indikation af en samfundsomspændende omskifter til Facebook Standard Time - bare en seriøst nydelig idé, der gør video- og lydapplikationerne mere glatte.

$config[ads_kvadrat] not found