Kernevideo - Core Video

Core Video er den videobehandlingsmodel, der anvendes af macOS . Det forbinder processen med at dekomprimere rammer fra en videokilde til resten af Quartz-teknologierne til billedgengivelse og komposition. Både QuickTime X og QuickTime 7 afhænger af Core Video.

Oversigt

Core Video leverer både en buffermodel og en afspilningssynkroniseringsløsning inden for sin behandlingspipeline. En videokilde giver en dekomprimeret datastrøm, der skal gengives som billeder inden for en visuel kontekst i Quartz 2D . Core Video kan betragtes som forbindelsen mellem denne videokilde og dens skærmkontekst. Gengivne billeder kan behandles yderligere af Core Image, før de komponeres i en sidste scene med Quartz Compositor . Som en del af kompositionsprocessen vedligeholder Core Video en rammebuffer , der holder en pool af gengivne, sammensatte rammer klar til afspilning. For at sikre jævn afspilning bruger Core Video en tråd med høj prioritet til at opretholde sin rammebuffer. Dette skærmlink kører uafhængigt af applikationen, der påberåber videoafspilning, og det kompenserer for forskellige skærmopdateringshastigheder og latenstid.

Fordi QuickTime 7 ansatte Core Video, var det den første version af QuickTime, der implementerede gengivelseskapaciteten for kvarts. Tidligere versioner af QuickTime brugte QuickDraw til gengivelse. Selvom Core Video typisk interagerer med QuickTime, kan den interagere med enhver videokilde.

Core Video drager fordel af grafikprocessor (GPU) gengivelse og komposition leveret af Quartz GL, Core Image og Quartz Extreme , da den endelige afspilning er sammensat på en OpenGL-overflade.

Historie

Selvom Core Video blev introduceret med udgivelsen af Mac OS X v10.4 , er den inkluderet i installationen af ​​QuickTime 7 på Mac OS X; Derfor er Core Video også tilgængelig til Mac OS X 10.3.9 med QuickTime 7 installeret.

I Mac OS X 10.4 implementeres Core Video som en del af QuartzCore-rammen; i Mac OS X 10.5 og nyere ligger det i sine egne rammer.

Referencer