Es gibt eine Vielzahl von Open-Source-Programmen, welche mit einfachen Mitteln [[Projectionmapping]] ermöglichen. Leider sind die meisten nicht ganz einfach zu installieren. Ein vielversprechender Kandidat ist *SurfaceMapperGUI*. Eine Programm, welches auf [[Processing|http://www.processing.org/]] aufsetzt. Leider funktioniert die Software derzeit maximal mit Processing 1.5.1 (und nicht mit der aktuellen Version 2.1), da die *surfacemapper*-Library noch die veraltete XMLElement-Klasse verwendet, welche zugunsten der XML-Klasse in Processing 2.0 ersetzt worden ist. Das hat noch ein paar weitere Einschränkungen zur Folge. Processing 1.5 ist nicht 64bit-fähig, was zur Folge hat, das man auf einem 64bit-System sämtliche Dependencies, aller Processing-Libraries nochmal als 32bit-Version installieren muss. Weiterhin fiel meir spontan kein sinnvoller Weg ein, Processing 1.5 und Processing 2.1 nebeneinander zu betreiben, da beide auf das gleiche Config-Verzeichnis im Homedir zugreifen, in welchem u.a. der Sketchbook-Ordner referenziert ist. Das hat zur Folge, das man sich dann entscheiden muss, ob man nun die Processing1.5- oder die Processing2.1-Version einer Bibliothek haben will. Es folgt eine einigermaßen ausführliche Anleitung, um SurfaceMapperGUI unter einem 64bit-System zum laufen zu bringen. ## Installation ### Install Dependencies (32bit!) First you need to install 32bit-Version of libraries processing 1.5 depends on. Since I have a fresh 64bit-system, I assume, this should be everything you need. The package gstreamer-base-plugins may be omitted. [[!format c """ lib32-mesa-libgl lib32-intel-dri lib32-gstreamer0.10 lib32-gstreamer0.10-base lib32-gstreamer0.10-base-plugins lib32 glib """]] ### Processing (1.5) Now, you can download [[processing|http://www.processing.org/download/]], and please consider a donation. The download link for Version 1.5.1 is on the lower part of the page. ### Processing Libraries After that, you can proceed to download the processing-libraries, you need to run SurfaceMapperGUI. You will need: [[GLGraphics|http://sourceforge.net/projects/glgraphics/files/glgraphics/1.0/]] [[GSVideo|http://sourceforge.net/projects/gsvideo/files/gsvideo/1.0/]] [[SurfaceMapper 0.912|https://bitbucket.org/ixagon/surfacemapper/downloads]] [[controlP5 1.5.|https://code.google.com/p/controlp5/downloads/detail?name=controlP5-1.5.2.zip]] Navigate to your *sketchbook* directory and in there to the *libraries*-subdirectory. By default this can be achieved by [[!format c """ cd ~/sketchbook/libraries """]] ### SurfaceMapperGUI [[SurfaceMapperGUI|https://github.com/jasonwebb/SurfaceMapperGUI]] can be found on github. you need *git* installed on your system, which should to be found in your favourite package manager of your favourite linux distribution. If you have *git*, you navigate *sketchbook* directory. By default this can be achieved by [[!format c """ cd ~/sketchbook """]] Here you *clone* into the git-repository of SurfaceMapperGUI. [[!format c """ git clone https://github.com/jasonwebb/SurfaceMapperGUI.git """]] ...and your done. With the installation.! ### Start Navigate to your processing1.5 directory, and start processing. [[!format c """ ./processing """]] Open SurfaceMapperGUI via File -> Sketchbook -> SurfaceMapperGUI. Click *Run* and your done! :-) If it fails to run, check the Error Messages section of this article, to find a solution. ## Error Messages ### Memory Allocation Error [[!format c """ (GSVideo:6598): GLib-ERROR **: gmem.c:366: overflow allocating 1702259061*4 bytes """]] This error is strongly connected to gstreamer. It is caused by a gstreamer registry file *registry.x86_64.bin* which is located in the .gstreamer-Directory *~/.gstreamer-0.10* in your Homedir. Delete that file, *registry.x86_64.bin* or move it, if you don't want to delete it. [[!format c """ mv ~/.gstreamer-0.10/registry.x86_64.bin ~/.gstreamer-0.10/registry.x86_64.bin.old """]] That should do the trick