I have created subtitles in .SRT format for a video. SRT records the text and the timings. An example file can be seen here https://raw.githubusercontent.com/andreyvit/subtitle-tools/master/sample.srt . I’d like to bring this SRT file into Natron so that I can overlay it onto some other graphics. Is this at all possible?
Possible, but someone will need to create a python plugin or expand the Text node to support this feature.
srt looks easy to parse.
ability to control text using time stamps would be a good update to the text node… subtitle files can be imported and the time stamps can be used as in/out points for the text…
I will add support for SRT when I get the time, unsure if I will expand the current text node or make a new one, most likely the later. Will post a update when I get the time to look into this.
this is great, thanks so much! Looking forward to using it
@rodlie is this update available yet?
The feature was added in October, but we have not had any builds of Natron since then, I have a Linux build available for crash testing, it has the latest version of the Text node if you want to test.
Release crashtest01 · rodlie/Natron · GitHub, you can use this build or copy Arena.ofx.bundle and use it on the latest RC release.
You can also build openfx-arena from source if wanted.
Thanks. Got it compiling and it’s working great so far!
Great, please report any issues if found.
Hello, thank you so much for adding the .SRT file (subtitle) import in Text node - this is much-needed and awesome feature for us subtitlers!
However,… I have noticed one issue with it and I can’t seem to find a way around it, even with a combination of multiple functions (nodes)-
so I have decided to request help for this issue -
I am aware that when ‘transform’ check box is enabled for Text node, I can move around the text but the ‘horizontal alignment’ feature is disabled simultaneously.
But as all subtitles need to be centered, we need the horizontal center alignment.
I know we can 'enable transform check box → enable center interact → then move the center point around for the text to be centered, but this is only for single-lined texts, and if it’s multi-lined, then we need the ‘horizontal align-center’ to be enabled, otherwise, this only centers the left-aligned text to the center point.
I’m sorry for the confusing description I will explain this more clearly here:
- What Subtitles Need:
- horizontally centering each line of the multi-lined text to the center of the screen
- What Seems Like a Solution:
- Centering the text to the center point of the node with ‘center interact’ box checked (with ‘transform’ checked)
- but this disables horizontal center alignment check box
- Shortcomings in Reality:
- Number 2 solution is only for single-lined text - if it is multi-lined, then we need the 'horizontal-align: center" enabled - if not, everything is left-aligned
- If ‘horizontal align: center’ is enabled, ‘center interact’ feature is disabled that lets the text to be centered to the center point
- What I Have Tried
- Adding ‘transform’ node for the horizontally center-aligned texts to be at the center of the screen,
- However, I noticed the horizontal center alignment centers the text to the ‘width of the text’ not the canvas, so for every dialogues in the subtitles, it’s left-aligning the ‘text canvas’ - resulting in broken center…
If anyone can suggest a way for us all subtitlers who would like to utilize this wonderful program, I welcome whole-heartedly!
What the subtitlers desperately need is ‘center interact’ to work without transform enabled (as transform disables horizontal alignment)…
please help me and all subtitlers on this desperately needed request - thank you in advance!!
I know it’s an old topic but sharing this solution in case anyone else is facing it. I was able to achieve this by doing the following.
- Set the Horizontal align in the Text node to Center and Vertical to Top
- Attach a Transform and Crop node before the Text node (Crop → Transform → Text)
- Bring the bounding box of the Crop node down to where you want the top of the text to be
- Use the Transform node to put the text to the centre of the screen
Here’s my node setup and example file.
subtitle_example.zip (4.3 KB)