Add file name to picture

Hello! I have more than 100 images and I want to create a Slideshow using Shotcut. I separated all the images into a folder and gave the desired name to the image files. However, I would like to put the name of the files directly on the images that I will make the slideshow. I would like to know if I can do this all at once in Shotcut, that is, have Shotcut automatically place the file names en masse and I can just adjust the position of the text afterwards, or if I need to add the text underneath for each image of the desired image. Because it would take me hours to do that. If you don’t have this feature in Shotcut, I think it would be interesting.

This was the only article I found on the internet, but it talks about photoshop, and I couldn’t do it using any other editing tool:

Thanks for your answer. If possible, it would save many hours of work. I asked ChatGPT this, and he provided me with programming code using the Python programming language. For those who are not a programmer like me, this becomes difficult. Yes, adding this filter would be more work, as I need to copy and paste each image name to add the text in the shotcut. But I will wait for the answers. Thank you again!

Nevermind, they already added it! SWEET.

Add a Text:Simple filter to your images, and add this code in the text:

I’m impressed that they thought of this detail. There are other meta tags available too, though I don’t have a complete list.

Once you have the text sized and positioned where you want in the first image, you can cut and paste the filter to the other images, and the filename will update for each image.

1 Like

Thanks for your help! I’ll do a test later and come back to the topic to tell you how it turned out. I’ll do a test with all the images.

1 Like

You can add the Text: Simple to the track, and use the #filename# tag.
This will apply the name of the image to all your images.


That would be sick if that worked adding to the track to apply to all images on the track instead of pasting on each image within the track. When I add the filter to the track with the #filename# meta tag, however, it creates a blank text result in the preview window. The #timecode# field works on the track level, but seemingly not the #filename#?

Now I see that the interface has a dropdown list of fields under “Insert field” though. Nice!

In your example video, MusicalBox, why is there a second timeline on the bottom-right of your interface? I’ve never seen that view before. I’m learning stuff through this too. I might never use this feature, but it’s interesting anyway.


Ok, fiddled around and got it. In the past, I was adding filters to “Output” to add to track level. But now I see you can double click on “V1” to add filters there. That works now with the #filename# tag to propagate to all the images contained on the timeline. Cool. Lots of different nested levels where filters can be added that I didn’t realize.

Pretty flexible. Reminds me a bit of old Serif MoviePlus, which had grouped track concepts.

Took a second look at your video, and now I see you have the keyframes docker in its own space. I didn’t realize you could do that. I’ll switch mine to that layout too. It’s cool. Honestly, I think the repositionable dockers are better in Shotcut than DaVinci Resolve in some cases. At least in free DaVinci, it seems some of the panes can’t be moved at all, and their default positions are kinda meh.

I’m gonna delete my comment about the xml stuff. Even though that would also be possible, and there are many advanced things possible with xml I bet… doesn’t really add to this particular solution since there’s a far superior built-in method.

1 Like

I single click is enough :slight_smile:

I like to have both the timeline and the keyframes panel visible at the same time.
Makes things easier for me. Especially when using markers.

1 Like

Good demo @MusicalBox. You can also choose “File base name” to remove the file extension.


I deleted my previous comment to add and correct some information.

Yes. It’s an interesting feature and can help a lot with automated tasks.

Thank you very much for your help! This option is really amazing and it worked for me. I usually number the images in the folder to be in the desired order, for example: 01, 02, 03… So I realized that the ideal is for me to import them directly into the program when I make a slideshow, this saves time. Because I need to remove the numbers from the file names. In this option that you demonstrated, I noticed that it chooses a font and color for all images. I realized that for very different images it is better to create a text filter for each image. I realized that adding black frames around the images solves the problem of me writing on top of the images. I needed an image editor to do this in large quantities, FrameFun, but it worked very well. I also noticed that Shotcut didn’t add the name #basename to all the images, some he didn’t write, but there were few. Out of 200 images it only didn’t write to 10 images, so I did it manually. Anyway, if this is possible, it would be interesting to be able to add the text filter to all images at the same time with the same configuration, just making small positioning adjustments if necessary. You were always involved in this:

I apologize for my previous comment. In fact, it wasn’t this GPU effects (unstable) option that improved the quality of my editing. What I noticed was that I was only able to import the images into the timeline using the Proxy option. Shotcut does not close automatically when importing proxy images into the timeline.
But when I tried to put text with #basename, the Proxy images had a different name than my original images, so I reverted the Proxy after the images were already in the timeline. Even with Proxy reversal, Shotcut works better with images.
So if possible, it would be interesting if the proxy images managed to keep the same names as the original images.