"Rescuing a Firestore FS-100 Volume if you Forgot to do the "Organize P2" Step."
by Barry Green

When using the FS-100 and recording to the MXF file format, it’s vital to go into the FireStore’s menu system and execute the “ORGANIZE P2” command before you try to import your footage. The FireStore records its footage in a non-P2-compatible way, and the Organize P2 command creates a P2-compatible directory structure and sorts, renames, and otherwise organizes the files so that they can be read by any P2-compatible application. If you want to import your footage into a nonlinear editor like FCP or Avid, or you want to be able to read the footage in P2 Viewer or P2 Log Pro or any other application, you have to run the Organize P2 function first.

Unfortunately, not everyone does this. Sometimes people rent the FireStore FS-100, shoot their footage, copy the FireStore’s contents off, and return the rented FireStore without ever running the Organize P2 command. And then they end up in trouble because they can’t use their footage! A potential solution may be to copy the FS-100 footage files back onto a FireStore FS-100 and then run the Organize P2 command, but what do you do if you don’t have access to an FS-100? Are you completely out of luck?

Maybe not. I’ve gone through and deciphered the file structure of a FireStore directory before and after using Organize P2, and I think that with some simple but tedious work on your part, you can salvage those files and make them fully readable and usable. It takes some effort and during the process it’s easy to make mistakes, so you have to be meticulous and do things exactly the way I outline here, but if you do you should be able to save your footage.

First things first: you’ll need two directories from the FireStore FS-100: the “log” directory, and the directory where your footage is stored. There are many directories on the FireStore FS-100, being named “0” through “9” and “log” and then there’ll be one that’s named with a long string of numbers. In the case of the footage I’m trying to rescue, the directory was named “20070427-214437-01”. To decipher that name, the first 8 digits are the date (in this case, 04/27/2007). I don’t really know what the rest of the digits stand for; I don’t think it really matters, all that’s important is that you properly identify that directory as being the one that contains all your footage. You have to have access to that directory, and also the “log” directory; with both of those you have what you need to salvage the footage.

Inside the FS-100 footage directory you’ll find a lot of MXF files; if you shot DVCPRO-HD you should find five files for every clip you shot. In my example I shot three separate clips; in this directory I have 15 files.

IDENTIFYING THE MXF FILES

Like I said before, those 15 files are all components of the three clips I shot. It breaks down like this: there is one video file, and four audio files, for each clip. If you examine the directory structure above you can see that there are three groups of five files. The base file name for the first group is “20070427-214438” and the suffixes are “A01.mxf”, “B01.mxf”, “J01.mxf”, “L01.mxf”, and “R01.mxf”. Now, if you examine the sizes of the files it’s obvious that four of the files are the same size, and one of the files is much bigger; that file (suffix “J01”) is the video file, and the other four are all audio files.

Also, if you go into the “log” directory, you’ll find some XML files with the same base name, one per clip. These files are vital to restoring your footage; you must have the “log” directory if your salvage operation is to succeed!

MAKING A NEW DIRECTORY STRUCTURE

The first step in rescuing your footage is to create a CONTENTS folder and all the appropriate subdirectories, somewhere on your local hard disk. Make a new folder and name it CONTENTS, and then within that folder make six new empty folders, named AUDIO, CLIP, ICON, PROXY, VIDEO, and VOICE.
Once you have that directory structure in place, let’s start copying the files where they need to go. Go to the FireStore’s “log” directory, and copy the three “.XML” files into your new CONTENTS/CLIP folder. Next, go to the FS-100 footage directory (in my example, that’s the “20070427-214437-01” directory) and copy the video files (the larger MXF files with the names ending in “J01.mxf”) into your new CONTENTS/VIDEO folder. Finally, copy the audio files (the smaller MXF files with the names ending in “A01.mxf”, “B01.mxf”, “L01.mxf”, and “R01.mxf”) into the CONTENTS/AUDIO folder.

RENAMING THE FILES

Moving the files was easy; here’s where it gets a little tricky and where you have to really pay close attention to what you’re doing. While the FS-100 has made MXF files, it hasn’t named them using a P2-compatible naming convention. It started the process, but it didn’t finish it. You need to rename every one of these files that you’ve just copied over.

To find each file’s proper name, go into the CONTENTS/CLIP folder and open one of the XML files. There’s one XML file for each clip you’ve made, and there’s one MXF video file for each clip, and there’s four MXF audio files for each clip. These files all share the same base name; only the last few characters differ. So in my example above, I have a file named “20070427-214438J01.xml”. Accordingly, in my CONTENTS/AUDIO directory I have four MXF files that are named nearly the same, and in the CONTENTS/VIDEO directory there’s one MXF file that’s named almost exactly the same.

If you open up the XML file using a text editing program, you can find the proper base name of all these files. Opening up the XML file reveals a frightening array of HTML-looking text; here’s what the top of my 20070427-214438J01.xml file looks like:

<?xml version="1.0" encoding="UTF-8" standalone="no" ?>
- <P2Main xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="urn:schemas-Professional-Plug-in:P2:ClipMetadata:v3.0">
- <ClipContent>
<ClipName>0018MJ</ClipName>
<GlobalClipID>060A2B340101010501010D431300000000152C26022D2A12B7A4EA0200001138</GlobalClipID>
<Duration>121</Duration>
<EditUnit>1001/24000</EditUnit>
- <EssenceList>
- <Video ValidAudioFlag="true">
<VideoFormat>MXF</VideoFormat>

There’s lots more, but it doesn’t really matter. All that matters is the value after the “<ClipName>” field. If you look at this XML file you’ll see that on the fourth line or so, there’s a field that says <ClipName>, and then there’s the text “0018MJ”, and then there’s an ending field that says “</ClipName>”. That text between the two “ClipName” fields is what the proper name of our clips should be. That’s the text we need.

Once you identify the proper name for your clips, now you have to go into your CONTENTS folder and rename all the associated MXF files. It’s important that you get the names exactly right. We need to know two names: we need to know the base filename of the XML file that we looked at, and we need to know the new name contained within that XML file. In my example, the Base Name was “20070427-214438J01.xml” and the New Name is “0018MJ”.

For the XML file, go into the CONTENTS/CLIP directory and use the <ClipName> text (in this case, “0018MJ”) as the name of the clip, with a suffix of .XML. So for my sample clip, I would find the file with a Base Name of “20070427-214438J01.xml” and rename it with the New Name to become “0018MJ.xml”. Note that I had to add the suffix “.xml” at the end of the New Name.

Do the same thing for the video file. Go into the CONTENTS/VIDEO directory and locate the video MXF that has the same Base Name (in my case, that’s “20070427-214438J01.mxf”) and rename it to the New Name, adding a “.mxf” suffix (so the new filename is “0018MJ.mxf”).

Finally, go into the CONTENTS/AUDIO directory and prepare to do the same thing, but with a minor twist. In the case of the AUDIO directory, we have to change the name of each of the audio MXF files to represent which channel of audio they are. The audio MXF files already have different suffixes (they’re “L01.mxf”, “R01.mxf”, “A01.mxf” and “B01.mxf”). We need to change those filenames to become the New Name plus “00.mxf”, “01.mxf”, “02.mxf” and “03.mxf”.

Locate the “L01.mxf” file; in my example it’s CONTENTS/AUDIO/20070427-214438L01.mxf” (note that the last three characters before the “.” are “L01”). Rename that file to the New Name, plus “00.mxf”. So “CONTENTS/AUDIO/20070427-214438L01.mxf” becomes “CONTENTS/AUDIO/0018MJ00.mxf”.

Do the same for each of the audio files, substituting out the ending three characters (L01, R01, A01 and B01) for the new ending characters of “00”, “01”, “02” and “03”.

20070427-214438L01.mxf becomes 0018MJ00.mxf
20070427-214438R01.mxf becomes 0018MJ01.mxf
20070427-214438A01.mxf becomes 0018MJ02.mxf
20070427-214438B01.mxf becomes 0018MJ03.mxf

Repeat the process for all your video and audio files. Open each XML file to find the New Name, and then rename all the associated VIDEO, AUDIO, and CLIP files to have the appropriate new name.

INVENTING AN ICON FILE

Okay, at this point we have all the files in the AUDIO, VIDEO, and CLIP directories sorted out. And the PROXY and VOICE directories are always empty, so that leaves us with only one directory to worry about: ICON. Unfortunately the FS-100 doesn’t offer an icon in the raw footage; it creates icons on its own during the Organize P2 step. So, simply put, you’re not going to have accurate thumbnails for your rescued footage at this point.

Do you NEED an icon file? Not necessarily. I’ve found that I can import the footage into P2 Viewer at this point (without having icons) and it works; in P2 Viewer you may be able to assign a new icon for each clip by double-clicking the clip, and then scrubbing the timeline to an appropriate place and clicking the “change clip icon” button.

I’ve also successfully imported the footage at this stage into Sony Vegas editing software (using the Raylight plug-in). And Avid won’t need it; you just need to register the audio and video files with Avid Xpress Pro HD, it doesn’t even use the ICON file.

So you might be done at this point, with fully rescued footage. But if your program won’t function without seeing a valid thumbnail, you can “fake it” by just pulling in a thumbnail from any existing P2 footage you may have, and changing the name to each clip’s New Name plus a “.BMP” extension. In my example I’d need to go into the CONTENTS/ICON directory and create an 80 x 60 bitmap image and save it out as 0018MJ.BMP. Now, that icon won’t accurately represent my clip, but if your editing program is refusing to import footage unless it sees a valid icon file, at least you’ll have one!

Hopefully with all these steps you’ll be able to salvage your FireStore footage if you forgot to execute the “Organize P2” command. It’s a lot of work, and obviously you’ll be much more likely to remember to “Organize P2” next time, but in case you get stuck behind the 8-ball and need to salvage some footage, now you know how to.

Discuss this in the Forum