Copy link to clipboard
Copied
Hi,
I'm trying to extract the frame displayed to the user in both After Effects and Premiere Pro.
Both support the AE Effect API, however that seems to be insufficient, as the PF_Cmd_RENDER event is only called when these products call it, and there is no way to know if the current frame requested is what the user is currently seeing.
The AE SDK provides the Grabba sample which does the trick on AE. There is no event for time ruler repositioning, but that can be worked around by hooking into the idle event.
I have not found a way to do this in Premiere PRO however, either in the samples on in the documentation.
Does anyone know of a way to get the currently displayed frame (and only that) from Premiere Pro?
Or alternatively a way to filter the incoming frames in the AE Effect API?
Copy link to clipboard
Copied
Hi Gabor,
If you want to get the frames displayed in the Footage/Composition Panel in After Effects and the Source/Program Monitor in Premiere Pro, you can build a Transmit plug-in using the Premiere Pro SDK. The transmit API provides support for pushing video, audio, and closed captions to external hardware. Transmit plug-ins are enabled by the user in Preferences > Video Preview in After Effects, and Preferences > Playback in Premiere Pro.
Copy link to clipboard
Copied
Hi Zac,
Thank you, using the Transmitter API solved the problem, however it presents it's own problems.
Since the transmitted frame would be used by an effect it would now require two dll-s and
intercommunication between them, which also seems unsupported between effects and transmitters.
Also the transmitter would transmit the frame with the effect applied which might be problematic.
So aside from using the Transmitter API is there truly no way to get the currently active frame
directly from an effect dll?
Or as an alternative, a way to disable all caching and pre-rendering for an effect so a new frame
would always be requested by the host?