I am a programmer specialising in graphics and video. My work is a combination of my own commercial software for the TV industry, real-time 3D graphics, bespoke applications and art based projects. I combine a high level of technical knowledge with a strong focus on the users of my software, whether they are artists, graphics professionals, film makers or children, often working collaboratively with both clients and other programmers. For many years I worked as a film editor and have in-depth knowledge of the creative and technical demands of film and television production.
Skills
I work with a wide range of languages and technologies such as C++, Python, or Ruby-on-Rails, choosing those best suited to the demands of individual projects. You can see some details
here
Bespoke Software
I also provide a
bespoke software service for projects of all sizes.
Projects
These are some of my recent projects:
 |
Clever Plugs |
A consultancy for real-time graphics |
 |
Tim Head |
Artist Tim Head |
 |
krummz |
An on-line treasure hunt game |
 |
Mouse Organ |
A drawing tool for artist Simon Schofield |
 |
DigiRostrum |
A rostrum camera for film and TV |
 |
SWAP |
A digital art installation |
 |
Mouz |
Software to motion track a laser pointer |
 |
DVACE |
Monitoring of DV video signals |
As well as the consultancy and programming services I provide through Clever Plugs I offer a bespoke software service for projects of all sizes, from simple scripts to full applications.
- Free initial consultation to assess project and give advice.
- In depth consultancy to evaluate requirements, specify project and plan development.
- Software development with regular consultation to ensure client satisfaction.
- Test-Driven Development to provide robust code you can rely on.
- Project management of any other designers or programmers that may be needed.
If you need bespoke software written and would like to discuss your ideas please get in touch. I am always happy to talk through a project to see if it is something I can help with.
paul@lumidium.com
I like to use certain practices in my work when possible: test-driven development for robust code; agile methods for effective collaboration and communication during development; occasional pair-programming and SVN for version control.
C++
I have written several applications in C++ including DigiRostrum, DVACE and Mouse Organ. I work mostly on win32 and am currently moving to working with platform independent tools like wxWidgets and Boost. I have experience with a wide range of libraries such as Intel IPP, QuickTime, DirectShow and OpenGL. I am used to mixing and integrating diverse technologies to produce high performance real-time video and graphics applications.
Python
Worked collaboratively for several years creating a Python framework for rapid development of plug ins for the ipf OpenGL graphics engine and wrote many plug ins including asset management and version control systems, audience voting with demographic analysis and navigable maps for data browsing. Included integration of external components using com, SWIG, Python.net, mySQL, odbc, C++ and ocx
Javascript/AJAX/Ruby-on-Rails
I have worked on numerous small web projects using javascript and recently I developed krummz, a web app for creating treasure hunts using the following technologies:
HTML, CSS, Ruby-on-Rails, Javascript, Prototype, script.aculo.us, Capistrano, Ubuntu, mySQL, Apache and Mongrel.
Krummz is an on-line game for creating and following treasure hunts/trails on a Google map. Players can create their own trails of clues or follow those that others have created. Each geo-tagged krumm has an image, a short piece of text and can be solved with an answer. Solving a krumm reveals the next krumm in the trail.
You can play with krummz here.
Krummz is designed for all browsers but also has an iPhone specific web app.
It has an open space in which anyone can create clues but it can also have any number of private/moderated spaces which can be used for by groups or organisations to create their own treasure hunts.
Krummz is an AJAX web application built on the Ruby-on-Rails framework.
DVACE provides simple, high quality monitoring of PAL DV on your laptop or PC. No need to lug about tons of equipment, just plug in your DV camera or deck via Firewire to PC for:
Video monitoring
Audio monitoring and VU levels
4:3 or widescreen 16:9
Graphics and action safe areas
Tape deck controls
Interlaced/de-interlaced monitoring
Waveform
Vectorscope
Graphics overlay
RGB waveform
Gamut errors
Component vectorscope
DVACE uses a mixture of technologies including DirectShow, OpenGL, look-up tables and image processing to give real-time graphical analysis of video signals.
You can read about it and download a free demo from lumidium
DigiRostrum is a software rostrum camera widely used by the TV industry in the UK. Using its intuitive keyframe controls you can track, zoom or rotate a virtual camera across high definition image files, and then render this movement as broadcast quality video files.
It is a professional tool, providing the
highest possible quality, and a set of controls designed
closely around the needs of those producing rostrum work
for film and television. Users include:
Ken Morse
Chris King
BBC Arts
BBC Factual and Learning
Bill Tondreau
Resolution
The Farm
NATS
Fusion
Tiger Aspect
Fulcrum TV
"Congratulations on your superb DigiRostrum software. It's truly a delight to use. The ease of use and quality of motion offered by your software is far superior to any competing product."
Bill Tondreau (2004 Oscar winner for motion control on Lord of the Rings)
You can read about it and download a free demo from Clever Plugs
Clever Plugs is a consultancy and software design service for users of Brainstorm's eStudio, helping broadcasters create complex interactive graphics quickly and reliably.
Clever plugs is a new venture built on development experience with award-winning production company Cheerful Scout, an innovator in interactive graphics. We have years of experience writing plug ins for eStudio on versions 8-11. In that time we have developed a close working relationship with Brainstorm, and have acquired a detailed understanding of their graphics platform, extending it with a suite of sophisticated and customisable plug-ins including charts, sound-eq display, geographical maps, voting systems and network based interactivity. We have also added fully-integrated, programmable databases capable of modeling vast and complex data sets and interacting in real-time with eStudio. This gives us the resources to provide a robust, end to end solution, from data input, to data analysis, interactivity and extremely high-quality rendering.
What we can do for you:
- Explain eStudios capabilities.
- Find the simplest solutions to complex graphics requirements.
- Troubleshoot existing projects.
- Provide a range of clever plug ins for common needs.
- Design and develop custom plug-ins in Python or C++.
- Use our plug-in framework to rapidly prototype your ideas.
Clever Plugs
I have been working with artist Tim Head on a major new exhibition of his work. This has involved re-coding some of his existing works and writing some new pieces for him. The exhibition opens at the Huddersfield Contemporary Music Festival in November 2009. There are nine pieces in total including a new work to be projected on the external gallery wall.
The pieces have been written in C++ to run on osx, using a mixture of OpenGL and direct display buffer manipulation.
Named as a homage to Oliver Postgate, Mouse Organ is a piece of software
written for the artist Simon Schofield. The brief was for a framework
within which Simon could use his own programming skills to create
algorithmic, iterative digital artworks. Simon's complex and beautiful work has been highly acclaimed and is being exhibited internationally.
The first version of Mouse Organ was a pluggable drawing pipeline. A bit like MaxMSP or vvvv but focused on drawing for print. Mouse Organ II now finished, it is cross platform, uses embedded Lua as a scripting interface for authoring, has advanced image memory management, tiled rendering and resolution independent drawing. It can create images of almost unlimited size and complexity.
Mouse Organs II' s first project is a commission for the Millenium Gallery in Sheffield called Kipple Pond. A single image 18m x 4m
Mouse Organ II is written in C++ using wxWidgets, Lua and IPP. Development is ongoing.
Mouz is a motion tracking application which allows users to control a computer's cursor by tracking the dot of light produced by a laser.
Plug the camera into your PC using Firewire and point it at the projected screen. Then run Mouz and calibrate it by specifying the corners of the screen , Mouz will then motion track the movement of the laser across the screen, map this to the correct screen coordinates and move the cursor.
Your laser must be bright enough to be the single brightest point in the camera's field of view, ie brighter than the projected image of the screen.
Mouz is PC only. Apologies to Mac users.
Mouz is free software so you may use and distribute it freely.
download
"Henceforth
space by itself, and time by itself, are doomed to fade away into mere shadows,
and only a kind of union of the two will preserve an independent reality."
Herman Minkowski
1903
SWAP is a video/computer installation which was first shown on Dalston Lane in Hackney in the window of a disused television shop in 1998. You can see a short clip from this first version on YouTube.
Einstein's maths teacher first proposed the idea of space-time, a unified four dimensional model in which space and time were not separate elements but were made of the same stuff. SWAP swaps one spatial dimension with that of time, cutting through the space-time continuum like a knife through a cabbage, revealing the intricate internal structure.
Since then it has undergone several makeovers and I recently (2008) re-wrote it and it was shown most recently at Visions in the Nunnery (May 2009)