This operator will cook its input at the nearest available (sub)frames. The values are then blended according to the fractional position within the nearest available (sub)frames.
After using the subframe interpolation method extensively that I posted here the last time, I realized this functionality should be turned into a new operator, a new TimeBlend SOP, a successor to the old one, which have significant improvements over it.
Before explaining the differences, it's worth noting the reasoning behind this operator. Proper subframe interpolation should be as easy as caching this data. With this new operator, it actually becomes as easy as putting this node after a cache read node i.e. File or File Cache SOP, which is what the default TimeBlend SOP should have been doing.
It makes sense to create a custom File Cache SOP that has subframe interpolation functionality built-in, but every studio have their own cache nodes so it's best this functionality is isolated in a separate operator that can be used easily.
There are complicated workarounds used by some TDs, such as multiplying the frames so the frame ranges are altered and time related parameters have to be compensated. Consider a scenario where you have 3 substeps cached to disk and all the instances have to be merge-accumulated at 0.07 frame intervals with proper cubic subframe interpolation using a Trail SOP that ends with a TimeShift SOP which locks the end result. You will see how such methods will quickly become overly complicated for no reason, whereas this operator will solve the problem without worrying about the underlying details.
The only requirement is that you have to specify the number of substeps that you want to use. This is not automatic for 2 reasons. One can infer this information using code that would check what substeps is available on disk but only if this data is being read from disk. You would also incur a performance penalty. Another issue is that you could have multiple different substeps cached such as 2 substeps, and 3 substeps in the same folder, which would require further intervention by the user to decide which one should be used.
A better alternative is to allow the user to specify this manually which would allow the user to switch the number of substeps used. This would normally be linked to a substeps parameter on a cache node or a DOPnet node for smoother workflow.
As for differences, this operator will read the nearest (sub)frames available to do linear, cubic, subdivision interpolation or no interpolation at all, while exposing the parameters of Sequence Blend SOP that drives the core functionality.
As expected there are options to hold the first and the last frame in case you don't have out of range frame data if you are reading from disk. But if you are interpolating a closed animation loop, then you have to make sure you have proper pre and post roll, while turning off holding of end frames, so the TimeBlend node can properly interpolate between the start and the end of your animation.
https://www.dropbox.com/s/vvp340rs9iwqzar/TimeBlend_SOP_Animatrix.otl?dl=1
https://www.dropbox.com/s/j0v4niwea2u6bh3/timeblend.hip?dl=1