Software Venture Consulting

FileMaker Pro downloads & Resources
FileMaker Custom Functions
FileMaker Web Viewer Examples
FileMaker Pro & Lasso Consulting
FileMaker Books
FileMaker Articles
FileMaker Error Reference

Free Web Tools
Free FileMaker Tools

Personal Pages

Shopping Cart
Shopping Cart


Free Newsletter


Privacy Policy

FileMaker is a registered trademark of FileMaker, Inc. in the U.S. and other countries.


 FileMaker Pro Custom Functions

List  |  Show Random  |  Upload  |  Add This to Your Site

TimeCodeCalculations ( inVleA ; inVleB ; FrRate ; filmFrm ; fnType )

Rate this function:  

  Average rating: 4.4  (36 votes)
  Discuss this Custom Function

Edward Souza, Duana A.S. Designs, LLC

An attempt to perform several time-code-oriented calculations using -- within a single function -- a set of non-recursive computations.

Sample Input:
( "00;10;00;00" ; "00;22;18;25 ; "29.97DF" ; "" ; "tcDiff" )
Sample Output:

 Then copy & paste into FileMaker Advanced's Edit Custom Function window.


This is the fifth version of "TimeCodeCalculations" written; hopefully, it will be working fine for those needing to compute SMPTE time-code oriented calculations. It is until under beta testing; reporting its bugs or giving ideas on how to have it improved will be greatly appreciated.
The calculations "TimeCodeCalculations" performs are:
1. the time lag between two SMPTE time-code spots ("tcDiff");
2. the midpoint of two different SMPTE time-code spots, or a SMPTE time-code spot and a frame number, or two different frame numbers ("tcAxle");
3. the sum or subtraction of a SMPTE time-code spot and a frame number or the sum of two SMPTE time-code spots ("tcSum");
4. the conversion from SMPTE time-code to film footage and vice-versa ("tcCvn"), and;
5. the frame rate conversion of a SMPTE time-code spot ("frCvn").

I wrote a didactical yet long essay attempting to clearify the complexity of SMPTE time-code subject. I just hope the text compiled from several SMPTE sources aids you -- who have the patience to read it -- to gather a broader understanding of this matter.
For a deeper understanding of the custom function and how it works, please refer to the sections entitled "WHAT CAN YOU EXPECT FROM THIS CUSTOM FUNCTION" and "CUSTOM FUNCTION PARAMETERS".

Thank you for trying "TimeCodeCalculations".

Note: these functions are not guaranteed or supported by Please contact the individual developer with any questions or problems.

This is my Custom Function and I want to edit it


5 most recent comments | Show all 7 comments

See my notes here:

comment, VR
September 11, 2010 12:47am

Hello, Comment,

Already read and answered them.
I will be revising the CF as soon as I can.



Edward, Sao Paulo, BR
September 11, 2010 3:50pm

Oi, Edward,

Tô acompanhando essa troca de mensagens entre vc e o tal do Comment... se eu entendi bem, vc deu um banho de conhecimento e de atitude nele.
Comecei agora a usar o FileMaker no PC... serah q vc pode me explicar o basico?
Vlw e teh +.

Marianna, RJ, Brasil
September 13, 2010 11:19am

Hello, Marianna,

Sorry for the delay answering your message.

I don't mean to be rude, but in here we are supposed to discuss Custom Functions or exchange messages in English only, Marianna. Nonetheless, I appreciate your support. Thank you.

Which version of FM do you have?
I haven't touched a PC or the Windows version of FileMaker since v5.5, so I don't know how helpful I might be. Still, it will be an honor to help you.

All the best. :-)

Edward Souza, Victoria, BC, CA
September 16, 2010 8:39pm

Hi Edward,

Not sure whether this CF is still supported - the last comment dates back several years now!

Anyway, while implementing your CF in a database solution I stumbled across two issues which I thought are worthwhile sharing:

1. In lines 399 and 400 (opening in TextWrangler) I had to replace the dots by a comma. That's certainly an issue with the systems decimal character setting which is a comma in my case. Changing the system setting is not an option.

2. If tcDiff results in 00:00:00:00 "error_02 - negative result" is returned. I believe this is down to an error in line 497; replacing "validTotFrs > 0" by "validTotFrs ≥ 0" gives the correct result.

Best, Hubert

Hubert Henle, Berlin
September 19, 2016 2:22am

Make a comment about this Custom Function (please try to keep it brief & to the point). Anyone can post:

Your Name:
characters left. If you paste in more than 1500 characters, it will be truncated. Discuss the function - advertisements and other useless posts will be deleted.
Answer 2 + 2 =
Search for Custom Functions:

Custom Functions Widget
Download the Custom Function Dashboard Widget for OS X
Keep all the latest Custom Functions right at your fingertips!

Newest Custom Functions:

1. HexUUIDToNum_cf (_uuid)
  (Sat, Jun 16, 1:55pm)
2. httpResponseCode ( responseHeaders )
  (Tue, Jun 12, 10:40pm)
3. FindDuplicateCharacters ( string )
  (Fri, Jun 08, 5:01pm)
4. FieldRepetitionLast ( field ; maxRepetition )
  (Wed, Jun 06, 6:05pm)
5. CountModifiedRecords ( NameTimestampField ; StartTimestamp ; EndTimestamp )
  (Mon, May 28, 8:23am)
6. JSONArrayLength ( JSONArrayStr )
  (Fri, May 25, 7:46am)
7. interpolation (y1; y2; y3; x1; x2; x3; x1y1; x2y1; x1y2; x2y2; rnd)
  (Sat, May 19, 3:55am)
8. @JSONFormatElements ( json )
  (Tue, May 15, 3:31am)

RSS Feed of Custom Functions