It's been some time since I and fellow students finished the concept stage of the Les Mémoires project, but in the mean time we have been working on realizing the concept and building the installation for real. A great opportunity as lots of these sorts of projects never sees the light of day. Because realization is near, I would like to tell the world a little more about the background story.
A concept evolved over timeFor this project we were asked to develop an installation for the new building of our university. The only restriction we had was that it should serve as a clock, so students, tutors and visitors could tell the time. I took the job of project manager on me, and together with my team we came up with the Les Mémoires installation. Our goal was to make an installation that was more than just a clock; it should invoke people to stand still at the passing of time, while being entertaining and memorable.
Inspired by one the buildings features, walls covert with vertical wooden beams, we thought of a video installation that would slice up an image and freeze each slice as seconds passed by. The group agreed this was an idea worth exploring, so our Motion Graphics guy whipped up a quick experiment. The results were very promising, and it was decided we needed early software to test the effect on all sorts of video material, including live feeds. As I was the most appropriate person to write this, I took the role of software engineer alongside of being project manager. By applying the RERO (Release early, release often) development philosophy I was able to get the results we wanted fast. This allowed us to test the installation on site in an early stage, which led to new insights and time to tweak.
As you can see in the embed video above we also experimented with a controversial setup; the screen is rotated 90°, resulting in a portrait orientated image. This was found to be more interesting for its users, as it breaks the association with the boring narrowcasting and other miscellaneous screens than hang around in the university's building. The test also confirmed our suspicion that placing the installation in the main hallway, next to its four elevators, would be great idea. It's a place where most of people pass by every day, a place where a clock would make most sense, but also a place where people have to just stand and wait. That is; until now! With an interactive installation like Les Mémoires people get the opportunity to enjoy their time 'waiting' on the elevator, and leave their mark in history at the same time.
From concept to video installation and beyondAs mentioned before, we desired our installation to be more than just a clock; it should also provide a way to leave a mark in time, for others to be seen, and remembered by. You could say the installation isn't about telling time; instead it's about the passage of time. Because, how hard we try, we won't be able to undo the past. Also, a funny thing about time is the way it fades our memories, as none will last forever. These aspects of time and memories are something we wanted to include in the installation as well.
To achieve these goals we ended up with a video installation which consists of a camera, a large screen and a pc with internet access. The camera records images of the people standing in front of the screen, the images are then processed into memories of time (explained below) and displayed on the screen. It takes a whole minute to fill the screen with the processed image, after which its represents a memory of that pasted minute and is uploaded to a Flickr account. These memories can then be retrieved through a special website.
Slicing time – from life image to memorySo to get from a life feed to unique memories of time could be achieved in a countless ways, this is how we did it:
Every exact second a capture gets taken from the life feed. From this capture a slice (1/60th of the full height of the image) is taken, and displayed frozen on the screen, partly blocking the view of the life feed underneath. This process is repeated every second and slowly filling the screen with frozen slices. As time passes memories fade, this is exactly what is happening in our program as well. The frozen slices are not only a representation of a particular passed second, it also contains information of the previous passed seconds.
After a minute is passed the screen resets; an animated 'wipe' sweeps the memories away and a fresh minute starts.
In order for the installation to act as a clock as well, we tried different ways of displaying the time on screen, ranging from very abstract to plain simple digital notation. Tests with the target audience (unfortunately) showed that using a somewhat abstract form was not suitable, and we ended up with overlaying the last frozen slice with the digital notation. This moves every second to the next frozen slice, emphasizing the 'ticking' of time.
Saving those precious memoriesPart of the concept we presented was a website that would allow the users to review the memories they were part of. In order to achieve this we needed to distribute the images to the web, we didn't want to serve them directly from our machine, as this could lead to security and reliance issues. Because we have a lot of images we want to upload every day (one every minute) we looked at hosting them separate from our website. Flickr was chosen as the most suitable candidate, although a Pro account would be needed due to the amount of images, it has a rich API and lots of readymade libraries/classes to get images quick and easy from and to their site.
Unfortunately no Flickr add-on or easy to integrate C++ lib was available for OpenFrameworks, so I decided to whip up a PHP daemon that handled the parsing and uploading of memories. This approach has a fair share of advantages; it is easy and quickly to develop (by using phpFlickr), it is easier to maintain (for example if the API changes) also by other people without C++ knowledge, and if something in the upload process goes wrong the main program just keeps running. The fact that this approach is harder to deploy (not just running one executable) could be seen as a disadvantage.
Some technical details
- Custom software written in openFrameworks, with used addons including ofxOpenCv, ofxThreadedImageSaver, ofxArgs and ofxXmlSettings
- PC with AMD Athlon II X2 250 processor, 4GB memory and ATI Radeon HD5670 video card
- Microsoft LifeCam Cinema HD
- Samsung UE46C5100 (46" Full HD LED TV)
- Running on a tweaked Microsoft Windows XP setup with AlwaysUp
My involvement – a recap, and some forgotten stuff
- Project managing
- Software engineering (OpenFrameworks app, PHP Upload Daemon)
- Researched needed hardware
- System configuration and tweaking
- First iterations website interaction design
- Design one-pager