Skip to content

NatronGitHub/openfx

This branch is 1213 commits ahead of, 277 commits behind AcademySoftwareFoundation/openfx:main.

Folders and files

NameName
Last commit message
Last commit date

Latest commit

0759758 · Jul 13, 2024
Apr 15, 2020
Nov 16, 2022
Nov 16, 2022
Nov 6, 2023
Jul 13, 2024
Jul 11, 2024
Sep 1, 2015
Sep 1, 2015
Jan 18, 2018
Jan 21, 2022
Nov 25, 2019
Dec 12, 2014
Dec 4, 2021
Jan 4, 2020
Jan 21, 2022
Feb 17, 2018
Feb 17, 2018
Jun 14, 2020
Sep 1, 2015

Repository files navigation

OpenFX effects API Build Status Coverage Status Coverity Scan Build Status

A fork from the official openfx repository https://github.com/ofxa/openfx with bug fixes and enhancements.

Things that need to be clarified in the OpenFX 1.4 spec

Default value for output components?

When a plugin accepts different components for input and output, e.g.:

    ClipDescriptor *srcClip = desc.defineClip(kOfxImageEffectSimpleSourceClipName);
    srcClip->addSupportedComponent(ePixelComponentRGBA);
    srcClip->addSupportedComponent(ePixelComponentAlpha);

    ClipDescriptor *dstClip = desc.defineClip(kOfxImageEffectOutputClipName);
    dstClip->addSupportedComponent(ePixelComponentRGBA);
    dstClip->addSupportedComponent(ePixelComponentAlpha);

Does the host have to set the dstClip components by default to the components of the srcClip, or does the plug-in have to explicitely set these, using for example:

void
MyPlugin::getClipPreferences(OFX::ClipPreferencesSetter &clipPreferences)
{
    clipPreferences.setClipComponents(*_dstClip, _srcClip->getPixelComponents());
}

OpenGL render support missing documentation

  • when entering the render action, is the output framebuffer bound so that drawing is done on output image ?
  • may OpenGL rendering also support tiles ? In this case what coordinate system should be used to draw - relative to bottomleft of renderWindow, or canonical ?

Things that need to be added to OpenFX

Plug-in and host license properties

The plugin and the host license may be incompatible, e.g. if one is GPL and the other is not GPL-compatible:

We should have a host and instance descriptor property (kOfxPropLicense ?) that holds a string containing a standardized acronym of the license, e.g. "GPL-2.0", "BSD-3-Clause". For example, all plugins in the official OpenFX examples are "BSD-3-Clause", which is GPL-compatible. The default value should be "Commercial".

For a list of license acronyms, see http://opensource.org/licenses/alphabetical

Passing host data as an opaque pointer to all suite functions

All suite functions should take a void* as first argument, so that the suite function, as implemented in the host, may figure out in which context the action was called (time, view, plane, etc.). This pointer should be passed in the inArgs for all actions. This requires upgrading all suites.

Possible OpenFX extensions

The following OpenFX extensions are not mentioned in the draft proposals on http://openeffects.org

Ability to fetch images at a given render scale

Sound effects suite

About

OpenFX effects API

Resources

License

Unknown, Unknown licenses found

Licenses found

Unknown
LICENSE
Unknown
LICENSE.md

Stars

Watchers

Forks

Packages

No packages published

Languages

  • C++ 40.8%
  • C 37.5%
  • Shell 10.2%
  • Makefile 5.5%
  • HTML 2.7%
  • CMake 1.2%
  • Other 2.1%