touch-punkt night in Budapest


Last week I was in Budapest for the first time, a fantastic city!

I was invited to take part of a Touch – Punkt event as part of the Temps d´Images festival. The Touch label came with Mike Harding and Jon Wozencroft which gave a short seminar, and with the artists BJNilsen(laptop)  and Hildur Ingveldardóttir Gudnadóttir (cello).

The concept of Punkt, which is a festival in Kristiansand run by Erik Honoré and Jan Bang is to sample a concert as it is being played, and using that sampled material as the basis of their own concert following straight after. They had invited Sidsel Endresen to join them on vocals, and Andras Halmos from Trafó had invited me to create the visual part of the concert.

I wanted to stick to the concept of using the first concert of BJNilsen and Gudnadóttir as the departure point for my video.


I created a very long image buffer, 12000×480 pixels. For recording, I could move sideways through the buffer and add images into the buffer, and eventually adding layers of overlapping images as the two concerts progressed. The image above is a small sample of what the buffer looked like at the end of the concert. For playback I had a very slow horisontal movement, so it would take several minutes to move through the buffer.

I wanted the recording head to move faster than the playback head so the images wouldn´t appear in a chronological order, and which also created some interesting layers of time.

Unfortunately I still don´t have any good images from the concert, the one at the top of the post is taken from my video camera with nightshot on, but you get an idea of the scale, it was a huge image behind the performers.

I was also supposed to do an hour presentation at Kitchen Budapest for maybe 10-15 people, but they convinced me to participate in a tech-pecha kucha event (so 20 slides, each showing for 20 seconds= 6min 40 sec) at the Merlin Theater with 300-400 people in the audience, so that was a strange but interesting experience. My impression was that people were sincerely interested in the content, my previous experiences with pecha kucha events has had a strong focus on entertaining, but superficial presentations.

By a weird coincidence one of the other presenters was Maté Gaspar from the theatre company Krétakör (website in hungarian) who I had been in touch with a year ago, so I got to visit their amazing workspace.

I also got a short tour of the Kitchen Budapest facilities, and finally met Adam Somlai-Fischer, who was supposed to be part of my seminar last fall.

snow lab

snow lab, originally uploaded by hc gilje.

It is not so often that there is snow in Bergen, it usually rain by the time it hits the ground. But last week has been an exception, which finally gave me the opportunity to testing out my videoprojection tool on forms made in the snow. It was a pretty nice location, on the roof terrace of BEK overlooking the harbour of Bergen.
I hope to develop this snow projection project further as it is quite fascinating to explore black and white contrasts. I am especially happy with projecting black with a white background, check it out in the video below.
There are more images to see.

video projection tool v2.5 + cornerpin keystone app

This post is really an announcement for an updated version of my videoprojectiontool + a new handy cornerpin keystone application.
But first some lines about another program, vvvv:

The last few months I have spent some time working with vvvv, which is a graphical programming language similar to max and pd, but with a few distinct differences.

First of all, it is windows only (It is based on directx instead of opengl), which is the main reason why I haven´t used it before.
The vvvv developer´s attitude is that it is better to make the program as good as possible on one platform rather than trying to make everybody happy.

Second, it has a clearer focus on 3D than max/jitter.
The main reason I have looked at vvvv is because the developers seem to be quite interested in making it a practical tool for real-life projects, to make it easier for the users to focus on content rather than trying to solve programming problems all the time.
Especially for people like me, who work with projectors, multi-screen setups, mapping etc, it was a relief to see dedicated modules for multiscreen blending, cornerpin keystone, and a projector module to make it easier to combine virtual models with physical environments. Also, there are easy-to-find modules and examples for how to interface vvvv with different hardware.

I had an interesting exchange with one of the jitter developers in the cycling74 forum a little while ago, where I was complaining about how such a useful thing as cornerpin keystoning is not available in jitter. I have attempted several times to make this in max/jitter without luck. It took the developer fifteen minutes to make it, but I would have never found this solution myself.
I guess my point is that I wish there was a set of useful abstractions and instructions, especially when working with 3D, instead of always being referred to the “red book” (the opengl reference book). Something like auv-i was for earlier versions of max/jitter for working with video.

And now, to the announcements: cornerpin keystone + v2.5 of videoprojectiontools
I have made a simple application, based on the above-mentioned exchange in the cycling74 forum, for a very simple but effective cornerpin keystoning. So, instead of tweaking the projector settings to get the projection to fit your projection surface, you can now just click in the corners on your desired projection surface, and the image will fit. The source code for the cornerpin keystoning is available on the cycling74 forums.

Videoprojectiontool v2.5 is now available, for mac osx and windows!
The new features are corner pin distortion of the individual layers, + enhanced functionality for drawing directly on the projected output for advanced masking. Please watch the video tutorials to learn more.

If you are working with mapping image content onto physical objects or surfaces, there are two main approaches: Creating a virtual 3D model which matches the physical environment, and then project that 3D model back onto the physical environment. This is not an easy task which involves a lot of calibration, as everything has to match exactly. For this I think vvvv is by far the best tool, check out their tutorial.

The second approach consists of positioning and masking individual layers in the physical environment. I think my videoprojectiontool is a good starting point with this approach. It involves no projector calibration, and you can get some great results in a very short time. By combining 3d placement of layers with advanced masking, and a sequencer for storing presets and creating transitions it has become a quite powerful tool.

Go to the resourcepage for the videoprojectiontool for the links to the new applications and several new video tutorials related to the update.