On Jul 25, 2011, at 6:24 PM, Peter Litwinowicz wrote:
Okay, I'm either really confused, or Motion templates for FCP X are totally not ready for prime time for use by us.
Let's say I create a motion Final Cut Effect template. The project settings when I create this template is 720x480, 29.97 fps, DV aspect ratio (0.9), 30 frames (1 second or so).
I then create an FCP project with 1280x720 4 minute piece of footage.
- I get input images handed to me that are 853x480. Presumably this is my 720x480 resolution of my motion project, re-scaled to give me a 16x9 frame size. (853/480 is the same as 1280x720). I'm confused, why isn't my input frame the same size as my output frame? Are Motion templates resolution-fixed (except for aspect ratio correction), and if so, how can I make my FxPlugs usable in FCP without having to create a template for every conceivable frame size?
I think you're seeing a bug here. The easiest solution is to make your templates at 1920x1080. All of the templates we ship are at this size and work properly for smaller frame sizes. It appears that when you make a smaller template and attempt to use it at a larger size, some bugs show up. (Feel free to file bugs on this.)
- As discussed earlier on this list, if I ask for frame 29.0 (the 30th frame), I get the last frame of my 4 minute piece of footage (or something akin to 4minutes/30frames). I really need to be able to get to every input frame of my FCP footage. Is there a way from within FCP to get the "next image frame" of the input sequence, NOT compensated for the duration change? So what I want is when frame 3:15 of my FCP 4 minute piece of footage is rendered, that I can get frame 3:14 and 3:16 from that input. Any way to get to the next frame? I can't possibly make templates for every conceivable duration of footage. And no, an acceptable answer to my customers is not "buy Motion, create a template or use our plugins there, and then import into FCP X." Our customers are asking "when will you support FCP X" (more requests than you can shake a stick at ), not "when will you support Motion 5".
This is a little tricky because we're trying to help you out so you don't have to do the math yourself. For 99% of developers this will help. For you guys, it probably is worse. But the secret is that if you're being asked to render frame n and you want frame n+1, ask for frame n+1 and you'll get the right thing, even though the 2 time bases are different. Behind the scenes we attempt to figure out what you're really asking for and give it to you.
As an example, you create a 1920x1080p30 template that's 10 seconds long in Motion with your effect applied. You bring it into FCPX and apply it to a 20 second interlaced clip. You'll get called to render with frame times like 0.0, 0.25, 0.5, 0.75, 1.0, etc. At time 0.25, you're actually getting the field at time 0.5 in the footage's local time base, but your plugin has no way of knowing that. So if you ask for frame 1.25 by calling the temporal API, you'll get the field at time 1.5 in the footage's local time base.
Note, we are considering changing this and giving you FCPX times in the future. We're trying to work out how difficult it will be to do that (more difficult than you'd think), and how badly that will mess up currently shipping plug-ins.
- Similarly, if you guys do fps related conversion, I still need to get to the next frame of the input sequence in FCP, not the next supposed frame in the motion template based on its number of frames and fps.
I think what I wrote above should help. Does it?