It tries to use the same timescale for
everything but if it won't fit it will use whatever matches the
original double up to 8 decimal places. But that didn't affect this
particular example because the proposed timescale was 24000 and it
was able to fit 1.24 exactly within that.
That's not the issue though. My calculations
are correct for the value I am receiving, which is 1.24. The
problem is that FCPX says 1.24 is wrong and it's actually
1.2399888889. I could certainly calculate that value and put it in
the XML file but I don't know that value exists because I don't get
that from QT or AVF.
FCPX, Premiere and CinePlay all say the file is
30 frames long. When viewing the file in QT Player 7 with the
timecode mode set to Frames, it strangely says it is -10 frames
long.
But now I do the calculations, 30 frames at 24*(1000/1001) would be
1.25125 seconds, so no-one's getting it right. Maybe the file is
corrupt.