Sorry but after a quick test, I don' thave the behaviour you say.
First, I correct something : purebasic can't return then time lenght, but only the frame number. That is why I need the user to give the fps to compute the time.
This is my test :
Source (with virtualdub) : 61279 frames, 42min36sec, 23.976
HCMatic w/o assumeFps(25): 61258, 42min35 sec if I select fps=23.976, 40min50sec if I select fps=25
HCMatic with assumeFps(25): 61275, 42min36 sec if I select fps=23.976, 40min51sec if I select fps=25
You can see that purebasic has a bug in the way it retrieves the frame number because the part in red is false, but this error is always less than a sec - harmless.
Nevertheless, HCMatic indicates the correct time when you select fps=25, whatever you have an assumeFps or not in the script.
Can you check the frame number of your source and compare it with what HCMatic indicates ? Are you sure you are not using a "convertFps" or "changeFps" ?
|