Quantcast
Channel: Adobe Community : Popular Discussions - After Effects SDK
Viewing all 73444 articles
Browse latest View live

Need 32-bit or 16-bit version of a layer from 8- or 16-bit project

$
0
0

The plugin I'm asking this question about distorts one image based on another (still or sequence). The distortion image must be 32-bit floating depth or can get by with 16-bit at reduced accuracy in some cases. I don't want to have to force users (as I do now) to bump the entire project up to floating or 16-bit depth, due to the longer processing, storage time, and limited/modified effects functionality.

 

How can I obtain a 32-bit version of a layer? (Which is typically only bare footage) Note that this mean that the footage must be read at full resolution, NOT be subject to double-conversion, ie from 32-bit to 8-bit and then back to 32-bit, for example.

 

I'm looking for a known-good solution from Adobe, not something untested that may work (but is equally likely to double-convert, for example).

 

In the ideal world, I'd specify the desired bit depth as an additional argument in PF_RenderRequest when checking out the layer in Smart PreRender --- one of those "unused' chars, for example, would do just fine if everything supported that (ie with the default 0 meaning the project's bit depth).

 

Thanks.


Can I access the pixels underneath if my plugin is applied to a text layer?

$
0
0

I'd like to access just the pixels underneath my layer. However the layer is a text layer on which my plugin is applied. I know I can do this as an adjustment layer, but I can't seem to get them unless the text layer's adjustment layer switch is checked, which is not the behaviour I'm looking for. Thanks!

Using layer param to PF_Checkout_Param, giving unwanted results.

$
0
0

I have a text layer that is 50x50 in a comp that's 1000 x 1000. In_data gives me good info about this, the extent_hint is {100,100,150,150}.

 

If I checkout the same text layer using PF_Checkout_Param (called from a different layer with my effect applied), it tells me the width and height are both 1000 (the size of the comp) and the extent_hint is {0,0,1000,1000}. I'd like more exact info like I received in the in_data (in regards to extent_hint), how can I get this info by checking it out using PF_Checkout_Param, or another method? Thanks.

New After Effects CC 2017 plug-in SDK is live

After Effects error : layer does not have a source.

$
0
0

Hi All,

          I add a Text layer and then add my custom fill  effect to it. Then I call AdvItemSuite1()->PF_ForceRerender(in_data, &(params[0]->u.ld)) from AEGP for all the layers. But only for Text layer, AE pops up a dialog displaying the following error :

 

After Effects error : layer does not have a source.

(26::335)

 

Why is this happening? What other call can I use to rerender all the layers?

 

Thanks & Regards,

Dheeraj

Which kind of plugin is Element 3D?

$
0
0

I was thinking it might be an artisan, but it doesn't change the default renderer. So perhaps it's just a standard effect but using openGL to create geometry?

.shape4ae Track Data

$
0
0

Hey everyone,

 

Since this is kind of an unusual Question that doesn't fit in any category I'm not sure if this is the right place to post it, but I figured that the SDK Developer Community is the one that can come up with an answer for my problem most probably.

 

I'm a student of Computer Vision and currently working on a Project where I need some tracking data. Since our University has some licenses of Mocha for AE I want to try to import the data from the exported .shape4ae files.

I have currently a hard time figuring out how After Effects handles Transformations. In the .shape4ae File, there are basically two things to be found.

First of all the keyframed data of the shape of the object (e.g. the points for the xspline shape) and secondly and what is more interesting to me the information about how this shape is transformed for every frame.

There are 8 categories of data for every frame:

Translation X, Translation Y, Scale, Rotation, Shear X, Shear Y, Perspective X, Perspective Y

I wonder now how all this data for a single frame can be put in a 3x3 homogenous transformation matrix as can be found here

http://doc.trolltech.com/4.6/qtransform.html

 

It doesn't seem to be straight forward, especially the shearing. For the first frame in the sequence the values are set to perform no transform at all, so:

Translation X = 0

Translation Y = 0

Scale = 1

Rotation = 0

Shear X = 0

Shear Y = 1

Perspective X = 0

Perspective Y = 0

 

The fact that Shear Y is set to 1 makes no sense to me right now. The value should be set to 0 if this would be the value responsible for vertical shearing in a transformation matrix.

I hope that someone here can explain to me how these values are applied to create a transformation frome one point to another in after effects.

If it helps I can post a .shape4ae file in here.

 

Thanks a lot in advance!

Is this possible to access arbitrary frame and to modify the mask?..

$
0
0

Sorry for a bit messy discussion title. Please, let me explain.

 

I have some experience in implementing video processing algorithms, but as our own software and never under AE. Now there is an idea to implement something for AE and first of all, I'm curious, if this is possible at all.

 

1) When processing the n-th frame, I need the full access to the data of (n-k)-th and (n+k)-th. Is this possible to do in general case? Or the only variant is to implement frames buffering during the first pass?

 

2) Our algorithm uses the mask as one of the inputs. But in contrary to the usual case, mask does not define an area of interest. In any case the full frame is processed, but the processing differs for different regions, depending on mask. In our software, it works like this: user defines a mask (and some parameters). Then effect is slightly modifying (let say – refining) the mask during the render and renders final images. After this user can modify the mask somehow again if he/she is not satisfied with what algorithm has done. Can I produce the same workflow in AE? The only way is using a drawbot (this means CS 5.5 and higher)? And what if I want masks to be raster images?

The second question in the framework of this one is how to do two video inputs for an effect (first – the video to be processed and second – the mask (grayscale sequence in general case))?

The possible workflow is that user provides trivial mask – lets say, the black solid. But even during the first pass effect should produce the mask, according to its sight to the video – so, it should somehow substitute the black solid with the sequence on black'n'white images. Is this all possible in AE?

 

3) Is this possible (should be, I guess) to implement multipass algorithms? How the preview works then, if I need, for example, to pass all the video length 3-4 times, to produce the final render?

 

I can expect that all this is solvable in AE, but may be experienced users could be so kind to give me some basic recommendation on how to do this. Looking through the PDF, which accompanies the SDK has not allowed to come to a distinct answer for the question: is this possible or not. So, I rely on your consultation.


How to compile .rc file?

$
0
0

Hi everyone.

 

I'm trying to change a version of my plugin in the .r file, but it does not recompile the resource file - the version number stays the same.

 

I tried copying custom build settings from other project to the .r file, but it doesn't seem to work at all. The .rc file stays the same despite the changes in .r file. If I remove the resource file from the project it is not linked, and if I remove it from the project directory, it says that it can't find the file, and does not compile it.

 

Can anyone help me?

Add or remove effect parameters

$
0
0

Hi

Does anyone know if it is possible to add or remove effect parameters after the initial PF_Cmd_PARAM_SETUP event?

I would like to be able to select a number of items to add to the animation using one parameter, then generate a number of colour pickers with a default colour for each item but giving the user the oportunity to customise the colour. You could almost image it's like drawing a chart in excel - you get a default colour for each dataset, but then you probably want to customise each one or some of them yourself.

 

I saw this thread about changing popups http://forums.adobe.com/message/3274585#3274585 and the reply was that it's not possible so I'm not very hopeful.

 

My only other option would be to limit the number of items and create that many hidden parameters which could then be unhidden when the number is selected. This isn't ideal as there could be a few hundred items, but often might be less than 10 so it seems a bit of an unwieldy way to do it.

 

On a related note - can I change the name of the parameter after the initial param setup event or is this too fixed?

 

Thanks in advance

 

Phil

 

Message was edited by: philrosenberg2013

Leaked Effect Refs

$
0
0

I have a question about the error “Leaked effect refs” and how I am only causing them in specific situations, on intensive SmartRender operations.

 

I have noticed that when I cancel my plugins operation with the escape key or by simply closing the program mid effect processing I am leaving effect refs hanging, which can lead to just a popup error on exit and sometimes the entire project file having issues reopening saying that a crash has occurred while invoking the plugin.  I am doing iterations like from the CCU example and the effect is working great aside from this leaked effects issue (at least I think).  I am a little confused when I should be creating my AEGP_EffectRefH and AEGP_StreamRefH objects.

 

Currently I am calling my SmartRender function, then based on the pixel depth calling a separate function.  Inside of that function I am iterating my image via the same method from CCU.  Inside of this function I am creating several AEGP_EffectRefH as well as several AEGP_StreamRefH objects disposing of them at the end of the function before returning.  When I let the SmartRender complete on its own then all is well and all effect refs are disposed properly, however when I close after effects mid update or cancel the operation mid update I am leaving effect refs hanging on exit.

 

I do apologize if this is a newbie question, but I cannot find a good example showing how to use the PF_ABORT function, which is what I am assuming I should be calling to acknowledge the users abort request, unless I should be handling it completly differently?

 

It’s also possible I might be creating AEGP_EffectRefH and AEGP_StreamRefH objects in the wrong place altogether?

Extendscript Time Value / AEGP Time Values BUG

$
0
0

There is a fairly annoying bug (?) in Extendscript that I am hoping to rectify by starting to dig into the C++ SDK and hopefully solve using a hybrid extension.

 

Here is the bug:

 

I have manually set my frame count to start from 0 in my Project, as per my facilities specs. This is so our timecode from the client stays correct to theirs, however while we like to start the count from 0 we like to have our master comp set to start at frame 1;

 

So the comp is set to 1.

 

For reference this comp is set to 29.97

 

If I query currentComp.displayStartTime I get:

0.03336670003337

One frame in, in seconds.

 

If I query currentComp.frameDuration I get (drum roll):

0.03336670003337

One frames length in seconds.

 

So to programmatically set it in the future the code should be:

currentComp.displayStartTime = currentComp.frameDuration;
If I query displayStartTime after setting it, I get:
0.03336669877172

 

So, it seems the JavaScript doubles are becoming Floats somewhere where it talks to the AE engine.

 

Why this is a gnarly bug, sometimes running this sets the start time to 0 (depends on the frame rate, 29.97 goes to 0, 23.976 goes to 1)

 

I have seen fixes like add (1/1000) to the value to nudge it just over the edge. While this gets numbers I want it seriously breaks rendering. If I submit to royal render it will render from frame 0 (a grey frame) and then try and (usually crash) the remaining frame except for the last frame, all the while struggling to split the comp between machines. So I actually do need the setting to be as accurate as the getting WITH NO fudging. (why can't we script with INTEGER frames ffs!?)

 

I would love to fix this without C++ but have had no luck.

 

Why C++ seems to be answer:

It seems the floats are quantized to certain step values in the C++ side of things. (See time_scale and time_step)

 

Before I commit to having no life and woodshedding some C++, does anyone have a fix for this? Can I pre-quantize the floats in AE and set that? Can I X-Post to the scripting forum?

API for 3D Camera Tracker?

$
0
0

Is there an API which can invoke 3D Camera Tracker for a composition containing video item? I am open to use any of the architectures - ExtendScript SDK or C++ based plugin SDK.

I browsed through developer guides for both the SDKs but no luck. I am working on a Windows machine, so tools like Quartz Composer isnt an option which are purely mac based.

Is there any other tool say, Pixel Blender, that can help me achieve 3D Camera Tracking?

AEGP_IterateGeneric, AEGP_WorldH and AEGP_GetBaseAddr

$
0
0

I have an effect I am working on that performs several iterations over an AEGP_WorldH

 

This is accomplished by the following scenario:

 

AEGP_WorldH    outputWorld;

 

ERR(suites.WorldSuite3()->AEGP_New( NULL,

        AEGP_WorldType_8,

        width,

        height,

        &outputWorld));

 

          PF_Pixel8 *pxlOut;

          ERR(suites.WorldSuite3()->AEGP_GetBaseAddr8(outputWorld, &pxlOut));

 

          PF_Pixel8   *bop_outP  = (PF_Pixel8*)pxlOut;

 

          for (register A_long yL = 0; yL < height ; yL++) {

 

      for (register A_long xL = 0; xL < width; xL++) {

 

            //do fun stuff

 

            bop_outP++;

      }

          }

 

I would like to take some of the iterations that can be broken up into smaller units of

work and feed them into the generic iteration function to take advantage of the multiple

CPUs on my computer.

 

I have a structure, and from the examples I have seen in the forum it looks like I should

be sending a structure with PF_EffectWorlds into the generic function and then performing

iterations on a row by row basis?

 

I was wondering if it would be possible to send in an AEGP_WorldH so that I could use it

in a similair way to how i'm already using it in my main render function or would I need to

convert to PF_EffectWorld first and pass that PF_EffectWorld in with the structure?

Access Layer Parameter from Different Effect

$
0
0

Is there a way to access a layer param referenced in one effect, from another effect during its smart render?

 

For example:

- "Dumb" module effect has layer param, amongst others

- Render effect needs to access the layer param from the module effect. It obtains values for all other params via an AEGP_EffectCallGeneric call

 

But the dev guide states:

 

An effect cannot access the pixels of any layer inputs it has not checked out during PF_Cmd_SMART_PRE_RENDER.

 

I can use AEGP calls I suppose to access the layer directly but how do I know which layer the module effect is pointing to as a LayerDef has the actual data rather than just an index.

 

Thanks.


Develop a simple After Effects plugin in C# ?

$
0
0

Hello,

 

I would like to create a simple After Effects Plugin using C#.  The plugin will have a small screen with a couple simple controls . This plugin will run in After Effects on a Windows machine.

 

I am new to Adobe After Effects .

 

Can you point me to a SDK , tutorials etc ?

 

Thanks a ton,

Peter

Can't load plugins in the MediaCore folder

$
0
0

So, my After Effects is installed in "E:\Adobe\After Effects CS6",so the MediaCore folder's path is "E:\Adobe\Common\Plug-ins\CS6\MediaCore".

I just started to learn the SDK yesterday. When I was playing with the samples in the SDK, I set the output folder to the MediaCore folder, After Effects won't load the plugins in this folder. I have to copy the plugins to the plugin folder in After Effects support files folder.

If I set the output folder to the plugin folder of After Effects, After Effects keeps crash.

What should I do?

I'm using Windows 7 Ultimate sp1 64 bit, After Effects CS6 and Visual Studio 2010 Ultimate.

GLator error

$
0
0

I have successfully built GLator in AE SDK with Visual Studio 2010. But when I try to launch GLator plugin in AE it shows error.. I created a composition and a rectagle shape red color. The try to launch it from effects plugin folder , it shows : After effect error: invalid filter 25::3..Can anyone suggest me whats going wrong. Thanks in advance

How to get the width/height of the layer in ParamsSetup?

$
0
0

in_data->width is 0.

And params[0] is not available(so as output). They all are not complete.

What I want to do, is to set the width as the default value of a param. But I am not able to get it from in_data.

after effects and element 3d v2

$
0
0

i installed element 3d v2 but when i apply it first it shows a debug error and then "after effects error invalid filter (25 :: 3)"

i have 2GB geforce GT 610 graphic card

win 7

i3 3.3 ghz

please help

Viewing all 73444 articles
Browse latest View live


<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>