Comments (4)
Note that Fusion (and I suspect most node based systems) will not always have the same image format on a Clip for the duration, as opposed to a nominal "project resolution".
I'm not clear what the clip properties are meant to reflect here vs kOfxImagePropBounds.
from openfx.
I reformatting all this so it works for different kinds of apps, likely would need a few additional description strings. Image Bounds are read-only, there are issues across different types of apps. It's quite possible in Fusion a generator can create resolution as parameter and be able to set Region of Definition to a specific constant size (e.g. color bars 1080 versus 2160 without reference to Project Resolution) and it's possible Fusion (never tried it) supports generators with mandatory input which then would be another way to deal with this in Fusion. Not something that can be assumed across all hosts. In the pure compositing scenario for example in Interact (to draw Overlays) the Regions are not defined yet (it's a render concept). For any "UV to ST" mapping (any projection, e.g to equirectangular ) a static spatial size reference is necessary. For NLE type application or layer-stack compositing (with a transform per layer), assuming Project Resolution is Timeline resolution (timeline might be sequence or comp in another system, same thing), you need a second reference that is the layer dimension. For NLE this could be for images larger or smaller than Project resolution a way to get the Input Clip format versus the padded with black image bounds. Note in a layer stack (chain of effects on a layer), local world for effect starts at root layer, and region of definition can grow (yes frame by frame different) but then you typically loose reference to where a point parameter for example actually is... Also some hosts only natively support a render window within what I call Spatial Format here (cannot be larger) - where the layer/video track is essentially center-aligned to Project. Also although such system can support accessing another layer from a plugin on a layer, it typically has issues with the transform (e.g. a scale of 100X) it must clip to something. Another issue is say you have an animated horizontal blur, the application should tell you if pixels are used outside of final render region or not - so you know how to handle edges so if not you don't grow transparency at the edges.
from openfx.
Wait! I just read Resolve latest chapter 9 about Spatial Formats (13 pages) - this is documentary evidence - cheers :)
from openfx.
If you put a small clip in a larger timeline in Resolve for example (assuming you set properly the mismatch resolution menus), you get a small image in a sea of black pixels. As far as I know in such Filter Context (or Generator context) there is no GetRoi, GetRod. Wouldn't it be useful to get 1) the source clip window 2) also maybe the output render window when this is pull from render
from openfx.
Related Issues (20)
- CMakeLists.txt should have a package target that packages all headers, libs, and samples
- CI should build with and without -DOFX_SUPPORTS_OPENGLRENDER HOT 1
- Submit Conan recipe to conancenter
- Add VFX Platform 2023 to CI build matrix
- Clarify why OfxMemorySuiteV1 should be used HOT 8
- Consider adding a "LUT Generator" rendering path: NoSpatialAwareness HOT 4
- New Icons need to replace old one
- Add `OfxParamTypeStrChoice`, a string-backed enum of choices HOT 21
- Conan & cmake build fails on second build on Windows HOT 2
- Deprecate MacOS-x86_64 install folder HOT 1
- Clip and Image Metadata HOT 21
- 1.5 Release Status
- Binary data property type (Paul?) HOT 1
- Binary data Parameters HOT 39
- Support/Plugins/ChoiceParams has a couple of errors HOT 4
- update install instrution and package opencl HOT 9
- Color Managed Color Parameter
- Deprecate kOfxParamHostPropSupportsBooleanAnimation
- Windows ARM64 and ARM64EC support HOT 1
- Deterministic per-frame RNG HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from openfx.