How do I change selected portions of text in video filter:text?

I’ve been adding subtitles to my video using the text video filter, but I can’t find a way to edit (color, size, font, etc.) only a highlighted portion of the text instead of changing all the text.

Is this possible? or do I have to create another text filter and somehow position it over the previous text filter I created…?

TY for the reply!
Is this the only way…? I gotta make another textbox and position it properly back into a sentence if I want to bold/color a single word from a sentence…?

Here is another way.
Main video on V1
Highlight color on V2

Text on V3

might give this a try, thank you so much

The text tool in Shotcut is nothing real fancy, but if you need specialized text with bold, italics, highlights, etc… you might want to consider making up png images of what you want for subtitles and bringing them into shotcut.

Another alternative would be what @Elusien, @sauron & @jonray have been working on with their projects. Using HTML might be a better solution. I’m not gifted in this area at all, but they have done some amazing work. Perhaps they can offer better solutions that will help you out.

Yes, they have, but it is very easy to use the Overlay HTML filter if you do not need anything more than a simple scrolling animation. It lets you have long text and includes a visual editor to format selections in different ways.

@11121 as @shotcut said a very simple way of making subtitles is to use the Overlay Html filter.

Made a quick sample for you to see how it works. This is not scrolling. I used the blank html template. It’s just 2 lines of text.
Each line has to be in a separate html file. I used a green background with chroma key for the text. If you add the overlay to a video or image then chroma key is not needed.

Multi (2.0 KB)

What you are trying to do is possible with the text filter, but requires some gymnastics to get it done.
It’s much easier to do it with the Overlay HTMl filter.

Here’s an example using both methods.

Text with text filter and OH (2.6 KB)

It’s much easier doing it with the OH filter.

Hi @11121

If you use the text filter method, do it like this: place a different text clip above your base video for each word which you want to change the font /font size etc. The screenshot below should make it clear.

(Note in the example the words will appear one-by-one (stepped), but if you want the whole sentence to appear immediately, just stack them vertically).

You can then easily position each text filter so that the result is a sentence containing words with different attributes, if that is what you want to achieve.

@shotcut, are there any plans to further develop the Text filter? I understand the whole HTML option but it involves creating an external item and it also has limitations like not being able to put it on a transparent layer. There are some basic features of titling that are needed and expected in the Text filter that are not there.

All you need to do is specify that the background colour of the HTML is “transparent”… In fact you don’t even need to that since that is the default value of “background-color”.

I think @DRM might be referring to the issuet that when you add an OH filter with the, for example, simple scroll template it needs to be added to a video or image clip. If it’s added to a transparent clip the text does not show.

Unless I’m doing something wrong.

That’s it. :slight_smile:

There are no plans to improve the Text filter. That does not mean someone will not. It is possible to use HTML (WebVfx) as a generator with a transparent background (does not require a transparent clip like the Text clip), but that is not yet exposed due to instability it exposes. It might not be too difficult to get HTML filter working with a transparent color clip. Like most things in Shotcut, these things need additional work. Meanwhile there are still major problems and essential missing features that will get more immediate attention from me.

Thanks for clarifying - never tried this so didn’t realise it wouldn’t work. I usually apply the transparent Overlay HTML Filter to the clip rather than a separate transparent clip.

The OH filter works fine just not on a transparent clip. Workaround that I use is to put the OH filter on a green clip and chroma key it.

Great idea @sauron - one thing to bear in mind though is that if the text is animated with fade ins/outs then the lighter green will show through as the text fades. Will work fine for static or even scrolling text though.

This topic was automatically closed after 90 days. New replies are no longer allowed.