Highlighted

GPU Effect: GetFrameDependencies

Community Beginner ,
Oct 08, 2020

Copy link to clipboard

Copied

Hi,

 

I'm trying to pass some frame dependencies into a GPU effect.

 

I'm using GetFrameDependencies like this:

 

prSuiteError GetFrameDependencies(
const PrGPUFilterRenderParams* inRenderParams,
csSDK_int32* ioQueryIndex,
PrGPUFilterFrameDependency* outFrameRequirements)
{
if (*ioQueryIndex == 0) {
outFrameRequirements->outDependencyType = PrGPUDependency_InputFrame;
outFrameRequirements->outTrackID = GetParam(MYPLUGIN_BGLAYER, inRenderParams->inClipTime).mInt32;
outFrameRequirements->outSequenceTime = inRenderParams->inSequenceTime;
(*ioQueryIndex)++;
}
if (*ioQueryIndex == 1) {
outFrameRequirements->outDependencyType = PrGPUDependency_InputFrame;
outFrameRequirements->outTrackID = GetParam(MYPLUGIN_SCREENLAYER, inRenderParams->inClipTime).mInt32;
outFrameRequirements->outSequenceTime = inRenderParams->inSequenceTime;
}

return suiteError_NoError;

}

 

When I'm in the render function inFrameCount equals 3, as expected, but inFrames[1] is null and I can't access any data about the dependent frames.

 

Am I missing a step to correctly pass the frame data for additional dependencies in?

 

Thanks,

 

James.

 

TOPICS
SDK

Views

32

Likes

Translate

Translate

Report

Report
Community Guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more

GPU Effect: GetFrameDependencies

Community Beginner ,
Oct 08, 2020

Copy link to clipboard

Copied

Hi,

 

I'm trying to pass some frame dependencies into a GPU effect.

 

I'm using GetFrameDependencies like this:

 

prSuiteError GetFrameDependencies(
const PrGPUFilterRenderParams* inRenderParams,
csSDK_int32* ioQueryIndex,
PrGPUFilterFrameDependency* outFrameRequirements)
{
if (*ioQueryIndex == 0) {
outFrameRequirements->outDependencyType = PrGPUDependency_InputFrame;
outFrameRequirements->outTrackID = GetParam(MYPLUGIN_BGLAYER, inRenderParams->inClipTime).mInt32;
outFrameRequirements->outSequenceTime = inRenderParams->inSequenceTime;
(*ioQueryIndex)++;
}
if (*ioQueryIndex == 1) {
outFrameRequirements->outDependencyType = PrGPUDependency_InputFrame;
outFrameRequirements->outTrackID = GetParam(MYPLUGIN_SCREENLAYER, inRenderParams->inClipTime).mInt32;
outFrameRequirements->outSequenceTime = inRenderParams->inSequenceTime;
}

return suiteError_NoError;

}

 

When I'm in the render function inFrameCount equals 3, as expected, but inFrames[1] is null and I can't access any data about the dependent frames.

 

Am I missing a step to correctly pass the frame data for additional dependencies in?

 

Thanks,

 

James.

 

TOPICS
SDK

Views

33

Likes

Translate

Translate

Report

Report
Community Guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
Oct 08, 2020 0
Community Beginner ,
Oct 12, 2020

Copy link to clipboard

Copied

Hi,

 

I'm still struggling with this.  When I was developing the plug-in for CPU only, I had a similar issue before I added the coded to check-out each of the layer parameters I was using.  Does the GetFrameDependencies stage replace this step?  I can't think of a sensible place to put the parameter check-out code in the GPU verison.

 

Any help gratefully received.

 

Cheers,

 

James.

Likes

Translate

Translate

Report

Report
Community Guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
Reply
Loading...
Oct 12, 2020 0
Community Beginner ,
9 hours ago

Copy link to clipboard

Copied

Hi,

 

I'm still battling with this.  Has anyone got any examples of a GPU plugin that references data from another layer other than the one the effect is applied to?

 

Cheers,

 

James.

Likes

Translate

Translate

Report

Report
Community Guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
Reply
Loading...
9 hours ago 0
Adobe Community Professional ,
9 hours ago

Copy link to clipboard

Copied

Likes

Translate

Translate

Report

Report
Community Guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
Reply
Loading...
9 hours ago 0
Community Beginner ,
6 hours ago

Copy link to clipboard

Copied

Update from me.  I have now started to get some meaningful data.  It appears that the GPU approach of GetFrameDependencies does not return a frame when the track is not visible, unlike the CPU Checkout process which does.

 

J.

Likes

Translate

Translate

Report

Report
Community Guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
Reply
Loading...
6 hours ago 0