This is cross-posted from After Effects SDK forum, since I could not get help there:
I am trying to perform a simple operation using AE SDK for an effect in Premiere:
Create a new world (mask), fill it with color and alpha, and then blend it with a selected composite mode to the footage.
I have made it working in After Effects perfectly. It uses WorldTransformSuite1 transfer_rect, which is not supported by Premiere. However, its counterpart, PF_TRANSFER_RECT is supposedly supported.
The results in Premiere, regardless of whether it's YUV or RGB, are really almost random depending on the color that I select. Sometimes I get a blue cast all over the picture regardless of alpha channel, sometimes I get the alpha channel transferred, even though I have the rgb_only flag set to true, sometimes seemingly nothing happens at all.
The mask is drawn correctly. If I simply copy it to the output world, everything is fine. Clearly it is the PF_TRANSFER_RECT that is to blame for improper transfer.
Can somebody help me? I tried to debug this thing, but I can't seem to find any sense in the behavior.
The callout of PF_TRANSFER_RECT is pretty generic:
ERR(PF_TRANSFER_RECT( in_data->quality, PF_MF_Alpha_STRAIGHT, in_data->field, &output->extent_hint, // rectangle &mask, // source world &composite_mode, // comp mode &mask_world, // mask world 0, // dest_x 0, // dest_y &temp) ); //dst world
temp is already populated with ¶ms[PLUGIN_LAYER]->u.ld
mask_world is defined as the mask world for mask and PF_MaskFlag_NONE flag.
I have been fighting with it for past week, and I am totally frustrated.
I've gone ahead and posted a response in your original AE SDK forum thread.