Skip to content

feat(effects): Add keyword in dynamictext - #1291

Open
camillem wants to merge 1 commit into
mltframework:masterfrom
camillem:work/dynatextanim
Open

feat(effects): Add keyword in dynamictext#1291
camillem wants to merge 1 commit into
mltframework:masterfrom
camillem:work/dynatextanim

Conversation

@camillem

@camillem camillem commented Sep 6, 2026

Copy link
Copy Markdown
Contributor

Hi,

Having a frame number starting at 1 is useful in some animation workflows to have a more natural numbering of frames.
I basically just duplicated the code for the keyword "frame" and called it "frameo" ("o" for "offset").

Cheers,
Camille

@camillem
camillem force-pushed the work/dynatextanim branch 3 times, most recently from c45e94e to dcc424f Compare September 6, 2026 12:22
Comment thread src/modules/plus/filter_dynamictext.yml Outdated
Comment thread src/modules/plus/filter_dynamictext.c Outdated
Comment thread src/modules/plus/filter_dynamictext.yml Outdated
Comment thread src/modules/plus/filter_dynamictext.yml Outdated
@shadowfax65

Copy link
Copy Markdown

How much more difficult would it be to create a variable offset that the user can define? Instead of a new keyword for a fixed offset of one frame it would allow for more flexibility if there was a parameter offset that could be set by the user with an arbitrary value.

@bmatherly

Copy link
Copy Markdown
Member

How much more difficult would it be to create a variable offset that the user can define?

It's not really about difficulty. Its more about intuition and purpose. The dynamictext filter isn't exclusively about frame position. Would the offset parameter apply to "createdate" or "meta.media.0.codec.frame_rate"?

If we want to make advanced frame/position counting features, I would rather put that in the count producer which is intended for that kind of thing.

But i don't think a simple "+1" keyword confuses anything and it works with existing user interfaces (Shotcut, etc).

@RonOnGithub

RonOnGithub commented Sep 6, 2026

Copy link
Copy Markdown

It's not really about difficulty. Its more about intuition and purpose.

The original request came from a user doing animation - so the core of what they really want is a genuine frame count to know which animation cel is being shown rather than a timecode.

Which may also be interesting if we ever directly support variable frame rate video, where each frame can have its own variable duration?

Having a frame number starting at 1 is useful in some animation
workflows to have a more natural numbering of frames.
@bmatherly

Copy link
Copy Markdown
Member

The original request came from a user doing animation - so the core of what they really want is a genuine frame count to know which animation cel is being shown rather than a timecode.

I'm probably missing some context. I don't know your animation workflow or why you are burning a frame number on your image. If there is a more complex workflow that this filter wasn't intended for, maybe we need a new filter.

@frdbr

frdbr commented Sep 6, 2026

Copy link
Copy Markdown

The original request came from a user doing animation - so the core of what they really want is a genuine frame count to know which animation cel is being shown rather than a timecode.

I'm probably missing some context. I don't know your animation workflow or why you are burning a frame number on your image. If there is a more complex workflow that this filter wasn't intended for, maybe we need a new filter.

This is very handy in the pre-production phase. Usually animators use an animatic to help them work on their scenes, which is like an animated storyboard. It also helps productions with organizing audio stuff like speech, music, fx...

@camillem

camillem commented Sep 6, 2026

Copy link
Copy Markdown
Contributor Author

The original request is very simple, and I think this PR solves the problem.

Is there a way to make the on-screen frame counter start at 1 instead of 0?
Timer has an offset, but lacks a pure absolute "Frames" format in the dropdown.
Are we missing a hidden setting? If it's not possible right now, could this be considered for a future update (like adding an offset to Dynamic Text or a "Frames" format to the Timer)? It would be amazing for animation workflows. Thanks

Just to give some context on why starting at 1 is so important: In animation pipelines, we need to know the exact number of frames per shot. This allows us to measure the scope of the work and accurately track the workload for the animators during the production phase. Starting the count at frame 1 makes this tracking intuitive and aligns with standard animation workflows.

@bmatherly
bmatherly self-requested a review September 6, 2026 15:51
@RonOnGithub

Copy link
Copy Markdown

In animation pipelines, we need to know the exact number of frames per shot.

I think this is the key point of the original request in terms of what is needed from MLT for this use. They need to be able to perfectly track the actual frame/cel number being displayed, not the timecode divided by some arbitrary number of frames per second.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants