Az Apple a Mac macOS 10.2 "Jaguar" rendszerében jelentette be, hogy komoly lépéseket tesz annak érdekében, hogy az operációs rendszer grafikus effektusait ne a processzor, hanem a videókártya számítsa, ezáltal egyrészt processzoridőt szabadítva fel és gyorsítva a rendszert, másrészt kiaknázva a grafikus processzorban rejlő hatalmas erőforrásokat. Ennek első eleme a Quartz Extreme technológia volt, amely még számottevő programozási ismereteket igényelt.
A videókártya szélesebb körű kihasználását segítendő az Apple fejlesztői a Mac macOS 10.4 "Tiger" operációs rendszerben bemutatták a Core Image technológiát, amely elvégzi a grafikus processzorral (GPU) vagy a processzorral (CPU) való kommunikációt, a programozók számára pedig alkalmazás szintű keretrendszereket (API, application programming interface) kínál, hogy könnyebben alkalmazzák a technológiát a programjaikban.
A Core Image képfeldolgozó környezet (Core Image Runtime) felépítését tekintve az alkalmazás szint alatt helyezkedik el: a segítségével közel valós idejű feldolgozás és elemzés zajlik álló és mozgóképek területén. Az objektum orientált Cocoa programnyelven alapú alkalmazásban a fejlesztők számára lehetőség van meghívni a Core Graphics, Core Video vagy Image I/O keretrendszereket, amelyekhez az Apple beépíthető API-kat biztosít. Ezek kommunikálnak a Core Image Runtime-mal, amely továbbítja az utasításokat a GPU irányába, hogy az Open GL vagy Open GL ES utasítások formájában végrehajtsa a műveletet, vagy a CPU irányába, amely a Grand Central Dispatch technológiával jól optimalizált módon a processzor erőforrások maximális kiaknázásával villámgyorsan elvégzi a műveleteket.
Megjegyzés: A Grand Central Dispatch az Apple technológiája a többmagos processzorok teljesítményének maximalizálására a feladatok és folyamatok ésszerű szétosztásával és szervezésével.
Bővebben a Grand Central Dispatch technológiáról…
A Core Image technológia többféle módokban épül be a rendszerbe: ha egy Cocoa alapú grafikus programot megnyitunk, feltűnhet, hogy ugyanaz a képjavító paletta (Adjustments) jelenik meg akár a Preview / Megtekintő, akár az iPhoto felületén, de külső fejlesztők programjai - például Pixelmator - is használják ezt a tudást. Ennek oka, hogy az Apple alkotott egy olyan objektumot, amely ezt a funkciót tartalmazza, és ezt bármilyen programban lehetőség van meghívni. Ez az eszköz a képjavítási számításoknál a videókártyát használja, míg egy nem Cocoa alapú alkalmazásnál a programozó az esetek nagy részében a processzort terhelné a művelettel, mivel nem mélyedne el egy-egy funkció videókártya szintű programozásáig.
Az Apple a Core Image technológiát nem csak a Mac gépeken futó macOS rendszerben mutatta be, hanem az iOS rendszerben is, amely a mobil eszközökön, az iPhone, iPad és iPod touch készülékeken fut. A Mac esetén 120, az iOS esetén 90 beépített szűrővel van felvértezve a technológia, ám ezek az effektusok kombinálhatók is, így gyakorlatilag megszámlálhatatlan mennyiségű effektus alkalmazható a képeken közel valós időben. A Core Image révén ezeket az effektusokat, szűrőket nem csak az állóképeken, de a mozgóképeken is alkalmazhatjuk, amelyeken a videókártya kiaknázása révén szintén valós időhöz közelítő gyorsasággal működik a megoldás.
Ezen képességekkel nap mint nap találkozhatunk az Apple mozgókép feldolgozó alkalmazásaiban, az iMovie és a Final Cut Pro programokban is.
A Core Image úttörő technológia az Apple-től, amellyel a Mac és iOS rendszerek hatékonyabbá és a programozók számára vonzóbbá válnak.
A Core Image részletes leírása függvényekkel és forráskód mintákkal; továbbá cikkünk forrása:
developer.apple.com
© MacMag.hu Cikk: 2013. 08. 21.; 2022. november 8.
Forrás: developer.apple.com
Keresés a lap tartalmában a Google motorja segítségével: