Using iterative development to improve media lab workflow and output.


When: September 2016

Where: Goldsmiths' College, University of London

Research Tools: Agile Development

Art students like to push the boundaries of media technologies, and are very sensitive to the quality of the final product. While every artwork is unique, there are still problems and workflows that occur regularly. Using an iterative, agile approach to development, I created a tool that helps the lab easily create a popular style of high quality video installation.


The Department of Art Media Research Lab (DAMRL) at Goldsmiths College provides digital media support to over 600 Fine Art students. Projects include: photo editing, vector graphics, 3D modelling, animation, and video editing. It employs 2 full-time and 5 part-time members of staff with different specialties.

While students are expected to show new work at regular intervals througout their course, for many students the most important part of their education is the final degree show. The degree show is not only a major component of their final mark, but is also seen as the start of a career as a professional artist. As a result, students come under a great deal of stress in the lead up to their final show.

Video Installations

For their final show, some students choose to produce elaborate video installations incorporating multiple screens and multi-channel (surround) audio. Student budgets and other concerns (such as theft) often limit the choice of equipment, with the result that most of these rely on low-end media players which can only play a limited range of media formats.

Producing a compatible file with multi-channel sound is a multi step process. Raw video and audio footage are separated out for editing in different programs: Adobe Premiere for video editing and Adobe Audition for audio mixing. Later these two streams of data are recombined into a single file in a process called 'Muxing'. DAMRL has typically used a program called Subler for Muxing audio and video files. However, subler limits the quality of audio streams to 160 kbps per channel. Many students were not happy with downgrading their audio to this for their final projects.

Problem: Mux AV without lowering audio quality

Solution 1: FFmpeg

The first proposed solution was to replace Subler in the workflow with an open source tool: FFmpeg. FFmpeg is a versitile program for manipulating and converting multimedia formats. FFmpeg runs on most operating systems and is very efficient. However, it is a command line tool. This means that in order for FFmpeg to manipulate a file, the user manually must type in a series commands.

In practice, Lab staff did not like this solution. They found manipulating files by the command line to be unintuitive and the FFmpeg commands to be cryptic. They also expressed concern about possibly harming their computers by mistyping a command. In light of these concerns, FFmpeg was not a viable option for use at DAMRL.

Solution 2: MuxTool

While FFmpeg is a versatile and powerful tool, its user unfriendliness was clearly a problem. To get around this, I decided to wrap a tiny subset of FFmpeg's functionality into a more user friendly tool, thus MuxTool was created.

MuxTool is a simple application with a Graphical User Interface that handles file selection and issues commands to FFmpeg on behalf of user. This means that the user does not have to remember the cryptic FFmpeg commands themselves. It has simple drag-and-drop file selection, and a progress indicator which displays when a mux command is in progress.

Behind the scenes, MuxTool is built using Electron (a JavaScript application framework). MuxTool actually packages a complete version of FFmpeg, but only provides access to a single FFmpeg command. Thus, MuxTool severely limits FFmpegs power and versatility in order to achieve a user-friendly workflow.

MuxTool was well recieved by lab staff and has been integrated into DAMRL's workflow. MuxTool was also released on the web for free.


MuxTool represents a case where technological solutions are inpractical because of usability issues. There is nothing that MuxTool can do that FFmpeg cannot, however, MuxTool is accessible to a much wider class of end users and is thus design solution to a real world problem.

MuxTool shows that when it comes to usability, sometimes less is more.

← Back to Portfolio