SequenceData issue in AE 2022 (Gamma_Table and SmartyPants do not seem to work)

Explorer ,
Apr 05, 2022 Apr 05, 2022

Copy link to clipboard

Copied

Hi guys,
The two sample projects that illustrate the sequence data mechanism (Gamma_Table and SmartyPants) do not seem to work in AE 2022. The sequence_data field always returns 0 in the render function.
I've tried these two plug-ins with AE 2021 (v18 and v18.4) and they behave correctly.

Any ideas ?

Cheers

TOPICS
SDK

Views

77

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
community guidelines
Engaged ,
Apr 05, 2022 Apr 05, 2022

Copy link to clipboard

Copied

Do they behave if MFR is turned off? That's the biggest change between AE 21 and 22 and according to others on this forum the sequence data rules have been tightened to be compatible with MFR. 

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
community guidelines
Adobe Community Professional ,
Apr 05, 2022 Apr 05, 2022

Copy link to clipboard

Copied

as james said, since 2022 MFR comptibility, sequence data is handled in a new way during render and prerender calls.

https://ae-plugins.docsforadobe.dev/effect-details/multi-frame-rendering-in-ae.html?highlight=sequen...

 

basically, you should use the PF_EffectSequenceDataSuite to get the sequence data handle during these calls.

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
community guidelines
Explorer ,
Apr 06, 2022 Apr 06, 2022

Copy link to clipboard

Copied

Thanks for your answers.
I was aware of these changes but I was naively thinking that the shipped examples would work properly.
I'm gonna try the new way of doing things but an SDK update would be great to illustrate these changes.
I've tried to store the data in global data and to force a re-render using a dummy invisible param (so that each effect instance has its own data), and that seems to do the trick. It's a bit dirty though.

Cheers

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
community guidelines
Explorer ,
Apr 06, 2022 Apr 06, 2022

Copy link to clipboard

Copied

LATEST

I've successfully retrieved the sequence_data in the SmartRender function using the following code:

PF_ConstHandle seqDataH;
AEFX_SuiteScoper<PF_EffectSequenceDataSuite1> seqDataSuite = AEFX_SuiteScoper<PF_EffectSequenceDataSuite1>(in_data, kPFEffectSequenceDataSuite, kPFEffectSequenceDataSuiteVersion1, out_data);
ERR(seqDataSuite->PF_GetConstSequenceData(in_data->effect_ref, &seqDataH));
SeqData* seqDataP = reinterpret_cast<SeqData*>(const_cast<void*>(*seqDataH));

Since I want to write to sequence_data in the render function, I've set the PF_OutFlag2_MUTABLE_RENDER_SEQUENCE_DATA_SLOWER flag. So far so good.

However, I also need to retrieve the sequence_data in the "HandleChangedParam" function (in response to PF_Cmd_USER_CHANGED_PARAM). Using the same code as above I was unable to get the sequence_data in that function.

For clarification, let me briefly explain how my plug-in works and perhaps someone will provide an alternative way to achieve the same result:

- During render, a (sequence_data) string is set. This string represents text file content.
- When the user clicks on an export button, the stored string is written to file. This is the reason why I need to retrieve sequence_data in HandleChangedParam.

Cheers

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
community guidelines