TimeCode for Filemaker


This plugin allows you to calculate with TimeCode values in Filemaker Pro Files.
TimeCode is widely used in Film and Video postproduction.


You need Filemaker Pro 5 for Power Macintosh or Windows, Filemaker Pro 5.5/6.0 for Macintosh OS X or Filemaker 7.
Note to users of Filemaker Pro 4: The plugin works, but you cannot open the timecode tester.fp5 document. Use this html-document for reference.

Important Notice: A beta version of the new universal plugin (Macintosh PowerPC and Intel) is available. This new version uses a new syntax.

Important Notice 2:
Rainer Standke has written a newer plugin with the same functionality called FileMaker Pro Time Code Plugin.




The program is not maintained any more and you can use it for free.


The Filemaker API is very limited about the format, how external functions can be defined. External functions are all of the Form External(FunctionID,parameter) where there can only be one parameter as a string. As we need often more than one parameter, we have to construct the string. If you feel bad about this, don't use this plugin, there is no other way.

You can find all functions in the formula dialog box when you define the calculation fields. The functions list has a view popup-menu whith as last entry External Functions. When you choose one function in the list, it will paste the name of the function and the word Parameter to be replaced by the list of actual parameters we will use.

This string will mostly a list of fields separated by the underscore character (_).I do not know if this is a good separator, but it is not likely to be part of a timecode or a number.

Usage of Parameters

The input fields tc can be number fields or text fields, and the TimeCode values can be formatted with delimiters or as number strings only, but the output is always a string, so be sure to define the result of the calculation as Text or the result will be zero.
All functions except Value and Frames return formatted TimeCode, but you can reuse this one easily in another function.
fps (frames per second) is optional in all functions (default 25). Supported are timecode 24,25,29.97 and 30, and the outputformat of 29.97 uses semicolons between seconds and frames (00:00:00;00).
Note: You have to use the period sign (.) to specify fractional values like 29.97. Local delimiters ere not supported.
All calculations work in 24h mode, so there is no negative TimeCode. Time Codes over 24 hours are wrapped.
DropFrame TimeCode is handled.

External("TCFM-Plus",tc1 & "_" tc2 & "_"& fps)

Returns tc1 + tc2.

External("TCFM-Minus",tc1 & "_" tc2 & "_"& fps)

Returns tc1 - tc2.

External("TCFM-Mult",tc1 & "_" factor & "_"& fps)

Returns tc1 * factor.
You can enter fractional values, but the decimal separator must be a period.

External("TCFM-Div",tc1 & "_" factor & "_"& fps)

Returns tc1 / factor or 0 if factor is 0.
You can enter fractional values, but the decimal separator must be a period.

External("TCFM-Text",tc & "_" & fps)

Formats the TimeCode with colons.

External("TCFM-Value",tc & "_" & fps)

Returns the timecode as a numeric text string without delimiters.

External("TCFM-Frames",tc & "_" & fps)

Converts TimeCode to frame count as a text string.

External("TCFM-SetFrames",tc & "_" & fps)

Converts frame count to TimeCode.

External("TCFM-Seconds",tc & "_" & fps & "_ " & speed)

Converts TimeCode to seconds as a string.
Speed is optional (by default equal to fps), and it is useful, if you want to run 30 NDF timecode at 29.97 frames per second.
Precision is 0.001s.

External("TCFM-SetSeconds",sec & "_" & fps & "_ " & speed)

Converts seconds to TimeCode.
Speed is optional (by default equal to fps).


Returns a version string. The parameter is ignored.


19.4.4 Checked compatibility FM 7.
7.8.2 OS X Version version 1.0
4.9.1 Windows version 1.0
7.6.1 version 1.0