We often wondered how the same effect would look if rendered with video. With video you've got the extra element of time, each segment of the mosaic can be running from a different starting point, with a different speed, and even a different direction. In addition the segments themselves can move over time. Would this end up with an effect that was just too much of a mess? Or would it give an effect that helps visualise the consequence of spacetime?
We started by taking several videos at three different locations over the period of a year with a Kodak Zi8 camera. A motorway bridge over the M74, just outside the Buchanan shopping center in Glasgow, and a bench in Strathclyde park. Lining up the images was done roughly by using lines drawn on acetate stuck over the camera screen.
The software to do the mosaic effect was hand-written. We used a simple scripting language, Perl, and the image library GD. On a relatively modern Linux PC running Fedora 16 we can render near real-time 720p HD even when handling 300 segments of mosaic. A simple language controls which parts of the screen come from which video, and the first half of the music video uses this with simple effects having just a few boxes overlayed:
Later in the video things get more complicated, using randomisation to pick the location and movement of each segment:
We used our scripts to create a number of ~13 second segments, then put them all together using kdenlive. The intro and outro were taken from a different video from a hotel room in London Victoria; the intro using a 'miniature' effect, and outro using the randomised segments applied to a single video.
The Perl script and a 5 frame example is available to download: 2011-sonik-vid-example.tar.bz2 (1.4M)
Watch the full video, or click through to YouTube to see it in HD:
For our first wedding aniversary this weekend my lovely wife bought me a new gadget, an Akai MPK-25 midi keyboard. The last Sonik gig that I played at we used full-sized midi keyboards hooked to real synth modules, but for our next gig later this year we want to move to lightweight with all soft-syths. Our 140bpm tracks are too hard to play completely live, so a 2-octave keyboard is perfectly fine for playing a lead line, and the keyboard has these great touch pads for triggering samples. We like triggering samples, see the latest video on our facebook page.
We've been setting up our perfect performance environment on a laptop, using Fedora 13 as the base OS, but with a real-time kernel and some prebuilt packages from the Planet CCRMA repository.
Tracy wasn't sure if the keyboard was going to work okay in Linux and didn't find any useful information with Google, even looking for it's USB ID (09e8:0072). Fortunately the Akai MPK-25 is class compliant and works perfectly with Fedora 13 without needing to configure or install anything at all. It's even happy to be powered from just the laptop USB port cutting down on cables and adaptors.
$ aconnect -i client 0: 'System' [type=kernel] 0 'Timer ' 1 'Announce ' client 14: 'Midi Through' [type=kernel] 0 'Midi Through Port-0' client 16: 'Akai MPK25' [type=kernel] 0 'Akai MPK25 MIDI 1' 1 'Akai MPK25 MIDI 2' 2 'Akai MPK25 MIDI 3' $ aconnect -o client 14: 'Midi Through' [type=kernel] 0 'Midi Through Port-0' client 16: 'Akai MPK25' [type=kernel] 0 'Akai MPK25 MIDI 1' 1 'Akai MPK25 MIDI 2'
When using USB, the midi in and out connectors on the back become extra interfaces you can use too, those extra ports you can see shown above -- so we can have another keyboard and a sound module connected through the Akai to the laptop and save a midi interface.
I'll cover the software we're using for our live gigs in a later article; aside from the actual synth VST modules we use all open source.