automating formatIdentifiers for digital assets

Written by DaveRice on Thursday, January 08, 2009

For the use of formatIdentifier, pbcore.org states "Best practice is to identify the media item (whether analog or digital) by means of a string or number corresponding to an established or formal identification system if one exists." This field holds such values as barcodes, unique tape labels, file paths, database generated unique identifiers, and other such data.

In addition to these types of data, I needed an identifier to track the use digital assets in Final Cut workflows and to identify when the digital archive is receiving the same exact file more than once.

In a Filemaker based PBCore staging database I added these scripts (assuming that formatLocation hold a usable filepath):

Perform AppleScript ["tell current record¶set cell \"formatIdentifier\" to do shell script (\"md5 -q '"& PBCoreInstantiation::formatLocation &"'\")¶end tell"]

Set Field [formatIdentifierSource; "md5"]

and

Perform AppleScript ["tell current record¶set cell \"formatIdentifier\" to do shell script (\"echo `tail -c 50 '"& PBCoreInstantiation::formatLocation&"' | head -c 41`\")¶end tell"]

Set Field [formatIdentifierSource; "com.apple.finalcutstudio.media.uuid"]

Note: The resulting formatIdentifier here must be evaluated to see if it conforms to the Final Cut UUID standard (ex. 13EBEE4A-FB65-4AF4-97F3-8B02A04A0A71), else you're just getting random bits from the end of the file. Possibly using this method you could also determine that Final Cut is the creatingApplicationUsed if you're using PREMIS as well. Let me know if you have a more efficient or alternative ways to extract Final Cut's internal UUIDs from media files. /

As described above, the steps must be placed in the proper Filemaker script context to generate a new formatIdentifier record that relates to an instantiation record before running, but the result is formatIdentifiers that contain an md5 checksum and, if appropriate, the Final Cut UUID. If the resulting PBCore records contain records that have equal formatIdentifiers where formatIdentiferSource equals "md5", then you have redundant multiple media copies. The Final Cut UUID is assigned to most files that Final Cut generates either through capturing or exporting. This value is usually also stored in the Final Cut project binary (the .fcp file) and can be used to build relation records between source material, the Final Cut project itself, and (occasionally) the exported material.


Comments:

Write a comment:

Name:

Email:

Remember my personal information

Notify me of follow-up comments?

Submit the word you see below:


Options:

Size

Colors