Conversation
Testing with the size parameter for CropOFX
ddennedy
reviewed
Jun 12, 2026
Contributor
There was a problem hiding this comment.
Pull request overview
This pull request updates the OpenFX module to represent OFX 2D/3D parameter types using MLT’s rect property type (and adjusts core property semantics/tests accordingly), aiming to simplify parameter handling and metadata generation.
Changes:
- Treat
mlt_prop_rectas distinct from opaquemlt_prop_data(including updating serialization andget_data()behavior) and add a unit test to lock this in. - Extend OpenFX parameter mapping to cover
Double3D/Integer3Dand representDouble2D/Integer2Dasrectin generated metadata/defaults. - Add logic to convert normalized
Double2Ddefaults to canonical coordinates using project extent when reading defaults.
Reviewed changes
Copilot reviewed 5 out of 5 changed files in this pull request and generated 2 comments.
Show a summary per file
| File | Description |
|---|---|
| src/tests/test_properties/test_properties.cpp | Adds a regression test asserting rect properties are not exposed via get_data(). |
| src/framework/mlt_property.c | Adjusts rect/data type behavior for destructor handling, string serialization, and get_data() semantics. |
| src/modules/openfx/mlt_openfx.h | Adds new OpenFX setter types for 3D parameters. |
| src/modules/openfx/mlt_openfx.c | Maps OFX 2D/3D params to rect, sets rect defaults, and adds normalized-default handling. |
| src/modules/openfx/filter_openfx.c | Updates runtime param propagation to select correct OFX setter based on native param type for rect. |
There is a bug in mlt_property that interprets a rect structure as data and tries to interpret it as nested properties when traversing the metadata properties. This works around that.
The OFX Crop plugin uses a normalized default but does not report it. This adds a work around to report it for that specific plugin.
Member
Author
|
I think it would be safe to merge this and the Shotcut PR before the test release. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Map all 2D and 3D types to MLT rect