- Registriert
- 15.11.05
- Beiträge
- 819
Hi,
ich suche derzeit eine Möglichkeit, auf irgend eine Weise einen Filter zu schreiben, der alle Pixel auf dem Bildschirm ändert - ob per Kernel Extension oder Core Image Plugin, ist mir egal, nur irgendwie möchte ich z.B. eine Funktion wie
int transformPixel(int x, int y, int oldPixel)
schreibe, die vom System für jeden einzelnen Pixel auf dem Bildschirm aufgerufen wird und in der ich entsprechend die Pixel ändern kann, z.B. jeden zehnten Pixel 10% heller machen oder so. Man kann den Screen ja auch per Ctrl-Alt-Blumenkohl invertieren, da muss ja auch irgend eine Routine hinterstecken, die den Pixel invertiert - sowas möchte ich selbst schreiben (C, ObjectiveC, C++, ist mir alles Recht), und wie gesagt soll es für den ganzen Bildschirm, nicht nur für ein Programm von mir oder so, geschehen. Ich habe mir bereits die IOFrameBuffer-Devices usw. angesehen, habe aber nichts hilfreiches gefunden.
Hat jemand eine Idee? Einen Ansatz? Oder nur ein Schlagwort, das mir helfen kann? Bin für jeden Rat äußerst dankbar!
Patrick
ich suche derzeit eine Möglichkeit, auf irgend eine Weise einen Filter zu schreiben, der alle Pixel auf dem Bildschirm ändert - ob per Kernel Extension oder Core Image Plugin, ist mir egal, nur irgendwie möchte ich z.B. eine Funktion wie
int transformPixel(int x, int y, int oldPixel)
schreibe, die vom System für jeden einzelnen Pixel auf dem Bildschirm aufgerufen wird und in der ich entsprechend die Pixel ändern kann, z.B. jeden zehnten Pixel 10% heller machen oder so. Man kann den Screen ja auch per Ctrl-Alt-Blumenkohl invertieren, da muss ja auch irgend eine Routine hinterstecken, die den Pixel invertiert - sowas möchte ich selbst schreiben (C, ObjectiveC, C++, ist mir alles Recht), und wie gesagt soll es für den ganzen Bildschirm, nicht nur für ein Programm von mir oder so, geschehen. Ich habe mir bereits die IOFrameBuffer-Devices usw. angesehen, habe aber nichts hilfreiches gefunden.
Hat jemand eine Idee? Einen Ansatz? Oder nur ein Schlagwort, das mir helfen kann? Bin für jeden Rat äußerst dankbar!
Patrick