necesary math to translate sfplay time into quicktime time

autogusto's icon

hello
sorry i couldn

Zachary Seldess's icon

Hi autogusto,

First get the timescale of the movie you're working with (gettimescale message). Say your movie has a QT timescale of 600. That means that 600 QT time values == 1000 msecs. So 1200 QT time values would be 2 seconds, 1800 QT values would be 3 seconds, etc.

Zachary

Rob Ramirez's icon

here's relevant parts from a patch that syncs qt.movie to groove~ object. the update interval of the number~ object sets your framerate.

Max Patch
Copy patch and select New From Clipboard in Max.

autogusto's icon

thank you guys for the reply

i have seen this patches using groove although i'm stuck in the interval=framerate relation i can't really see how it works
(someone?)
although i need to use sfplay because the files are too large to be loaded into ram, and since i'm stuck i haven't come with a reliable way to control quicktime frames or time through sfplay

any help will be appreciated

Ariel

FP's icon
Rob Ramirez's icon

sfplay~ has an optional position signal output.
enable that output and use that in place of the groove~ output.

sfplay's is millisec position, so you have to divide by 1000.0 and multiply by the timescale (usually 600), to get get the proper quicktime "time" (not "frame") attribute value based on millisecond time.

PKM's icon