Collaborative Media with Drupal + Final Cut Pro XML

kentbye's picture
| | | |

I just wrote about the Choice and Freedom that XML provides consumers of products from software giants, and I'll talk a little bit more about some of the implications of being able to export Final Cut Pro projects into an XML format. Right now, a very limited number of Google hits on "Final Cut Pro XML" indicates that there are only a few proprietary software add-ons available to take advantage of this capability.

And what exactly does this amazing XML capability mean? Quoting from Volume IV of Final Cut Pro 5's user manual:

Because Final Cut Pro supports XML, you are no longer limited to creating clips, bins, and sequences within Final Cut Pro. This means you can create your own Final Cut Pro projects outside of Final Cut Pro, using any software or platform you want, as long as you generate a valid Final Cut Pro XML file.

This basically means that I can use an open source content management system like Drupal to collaboratively edit my film.

Drupal + Final Cut Pro XML = Echo Chamber Project (Collaborative Filmmaking)

How? ...

With a little bit of ingenuity and custom open source software development:

UPDATE: The following flowchart has more details...
UPDATE: This flowchart has been updated to version 2.0.

UPDATE: The flowchart has been simplified with version 3.0 below...
UPDATE 2/22/06: I'd highly recommend listening to either this or this presentation where I explain the following flowchart.

Collaborative Filmmaking Flowchart

* Transcribe my film interviews
* Chop the interviews into sound bites both in the transcribed text as well in a Final Cut Pro sequence.
* Develop a Drupal Module to associate each piece of sound bite text to a unique URL node in Drupal.
* Export the XML data from Final Cut Pro (specifically the IN and OUT points of sound bites along with the master file name)
* Parse the XML data into a standard database format. (either with Drupal or through third-party database software).
* Develop a Drupal Module to import the XML metadata into MySQL associated with the sound bite nodes.
* Collect a lot of metadata on the clips from users, create ways for stringing soundbites together in Drupal
* Export valid XML from Drupal to plug back into Final Cut Pro in order to watch the collaboratively edited sequences.

Okay. That's a lot of steps with a lot of technical details.

So what exactly does Final Cut Pro XML allow me to do agin? Well, Apple gives a couple of simple examples for how to use it -- such as doing global text replaces on metadata fields like file names and descriptions -- but they concede that:

These examples are only the beginning. You can also change clip In and Out points, change the order of clips in sequences, or modify effect parameters. The more you experiment, the more potential you will discover for modifying Final Cut Pro elements using XML.

So there is A LOT of potential for what kind of collaboration could happen if valid Final Cut Pro XML files could be generated by a web application like Drupal where hundreds of people could collaborate on one project. This capability could redefine what's possible with open source filmmaking by allowing collaboration with people from around the world on single projects -- projects like The Echo Chamber Project.

Access to the original audio and video is a bottleneck, but I've written about how to get insights from groups of people a number of times [1 2 3], and about using folksonomy to edit film Again, lots of details to be hashed out, but a lot will be possible when everyone has access to the text of the interviews through this site.

Sharing a lot of very large source files with a lot people is difficult -- especially when you're talking about over 80 hours of footage (i.e. near a total of a terrabyte). This doesn't scale very well even if you could feasibly do it. These limitations could be overcome with an smaller MP3 or QuickTime files to replace the very large, high resolution QT video files -- somehow use a dummy file for a placeholder with correct timecode information. I'm not aware of any existing solution to this, but it'd be pretty useful for what I'm proposing.

Anyway, the possibilities with what could be done with all of this are very, very exciting.

One of the next steps is to upgrade to Tiger install Final Cut Pro 5, and play around a bit with the XML export feature. The Final Cut Pro XML output format & Document Type Documentation specify everything that the open source software developer needs in order to read and produce valid Final Cut Pro XML.

The biggest trick I face is figuring out how the relevant XML metadata and other information properly fits in with Drupal's data structures. I have to further research how information is currently stored in MySQL and what modules need to be developed to make each sound bite a node. This will probably begin next week.

I have to be really specific for what exactly I want, write it all down (with video and other multimedia to explain it further), gather a coalition of interested parties to raise some money for this custom development, and then see what we can create to scratch this itch.

UPDATE: Here are more details on Preparing Final Cut Pro Sequences for Distributed Editing via XML

UPDATE: XL Spreadsheet for Generating Final Cut Pro XML Sequences

UPDATE: Progress on Collaborative Filmmaking Infrastructure

UPDATE: I've started a wiki page called Software Specifications to track the development details and implementation of this collaborative filmmaking flowchart.

UPDATE 1/31/06: I've successfully completely the Dynamically Creating Sound Bite Sequences with SMIL & Drupal block. At this point, the uncompleted sections are the "Select Sound Bites into Bins" & "Order Sound Bites into Sequences" -- The Drupal Playlist module needs to be modified as described in these discussions with with Lucas Gonze, Colin Brumelle and Farsheed.

Final Cut Pro and XML

hi ..just wondering are there any new updates avaiable..if so..where..



I know final cut very well and am learning XML.

Contact me through email if you want.


Collaborative Street Vlogging

We are still a long way from live from the street blogging/vlogging - but Im throwing my hat in the ring.

Collaborative Editing

Hey Kent.

Just picked up your comment on the blog.

My email service is AWOL at the moment, and I'm pretty snowed under right now, but I like this idea and, as you might guess, I have some more that you might find interesting.

I'll be in DC between May 18 and 22, I don't suppose there is any chance of you, Marty, Eric and me getting together on Eric's porch for a barbecue about then?


And Another thing

Shortcut the transcription by volunteers with something like


I think the idea of the low res version is crucial to whether this can work or not.

Its the analogue of using the prints to edit and cutting the neg only once. Getting one that creates custom low res clips based on the xml bookmarks in the raw material would also be important, so that different people could assemble different versions of the same material.

And if you can put together a tool that works like the Chevy one (with a few extra wrinkles) you will be on to something very cool.

Final Cut Pro XML Expert


I'm seeking someone who is very familiar with Final Cut Pro and XML for a web portal project.

Could you recommend someone to us?


Darrell Hubbard
310.860.4741 ofc

FCP XML Expert

I am a real FCP XML expert, but not a real XML expert on other things.
Have a look at my homepage and or contact me.


Andreas Kiel
Nelkenstr. 25
D-76135 Karlsruhe
Tel.: +49 (0)721 183 9753
eFax: +1 650 897 8094

eMail: -- workflow tools for FCP

Nice scheme

Nice scheme, and but surely this doesn't scale very well even if you could feasibly do it. These limitations could be overcome with an smaller MP3 or QuickTime files to replace the very large, high resolution QT video files

I have been looking for you! I have a TV show -need your help!

I have a new Tv show where we are doing just what you explained above. I am looking for some help on the site and setting up the video uploads and downloads and such! Please contact me. Send along your telephone number and I will call you right away to expalin all details!