List filters in use

How can I show a listing of filters in use in my project?

I have stumbled onto a way to display this, but can’t reproduce it.

I’ve seen a reference to a ‘cornerstone’ on the top left of the Timeline, but don’t see any such thing on the current version.l

Go here for the latest official version of Shotcut.

This is what you need to click on to see all of the video filters.
You actually need to have something in the source, or something selected in the timeline (or playlist) to see the filters.

Make a copy of your project (.mlt file), just in case. Open the copy in an editor, such as Notepad++ (Windows). Find all occurrences of the string “shotcut:filter”, et voilà.

Or if you are using any Unix based OS (Mac or Linux), can also use the command line:

cat /path/to/file/MyProject.mlt | grep “shotcut:filter”

If your mlt project is using any filter, it will be listed below, for example:

It would be a simple matter to create an “App” to just drag and drop a mlt file into it
and get a list of filters used.
I know how to do it using Applescript for Mac or Bash+GTKdialog for Linux, but no idea on Windows.

Since most users will be using Windows, it would be pretty useless.
Perhaps someone on the forum can write something using C/C++ and Qt (since it’s already installed with SC) or even a batch(bat) file, although the latter would have no GUI.

The Windows equivalent to Unix’s “grep” command is “findstr”:

https://docs.microsoft.com/en-us/previous-versions/windows/it-pro/windows-xp/bb490907(v=technet.10)

It can be used from the CMD or Powershell terminal:

Findstr

2 Likes

Thanks Neil, didn’t know about “findstr”, I suppose it descriptive enough.
I’m assuming that Windows Batch files support drag and drop.
Thinking about it, they should as the OS will push any cmd line parameters along with the actual batch file when it calls cmd.exe

Does cmd.exe still exist in Win10?

Yes, and it’s on steroids.

There’s also PowerShell and Python as cross-platform scripting solutions.

Python is cross-platform forgot about that one, although it seems a bit of an overkill to have
to download Python just to get a small script working.

I still prefer the GUI aspect of Notepad++. It has so many options for the “find” command: “text”, “regular expression”, search only in highlighted text, search in only 1 file, search in all files open in Notepad++, search in files within a directory, match case, match words, wraparound etc… see below where I search for the text “<fe” (filter effect) within <SVG> tags (the results, including line-numbers, are shown at the bottom):

You have a point there, NP++ is very good with that sort of thing.
Just thinking about the whole procedure of having to open NP++,
if you haven’t made a quick link (short cut to it).
You may also find that some users will be scared off by all the other XML.

A cut-down “App” would just list the filters used, less intimidating to some.

When you install Notepad++ it creates an option in the context menu of Windows Explorer “Edit with Notepad++”. This will appear on the menu whenever you right-click a file in Windows Explorer.

If you have XML-phobia, just increase the size of the find sub-window to fit the whole window. Out of sight, out of mind, as my old mum used to say. But be careful, it’s sometimes not so easy to grab the handle to decrease the size.

I suspect more Windows users would be worried about getting a terminal window pop up that they’ve probably never experienced before.

Regarding cross-platform, it is simple to create an HTML/javascript file to grep lines from one or more files and display them. That way users click on an HTML file and are immediately faced with the comfortable familiarity of a browser window, with the options laid out before them. I may have a go myself at doing this.

Good point, plus you will find that those that have XML-phobia, will probably suffer from CLI-Phobia as well.

All things considered, your idea of using a Web browser is probably the most cross-platform and “friendly” way to approach this.

The added benefit of being html+js, it would be rather simple to modify it to display other parameters, like clips used, project settings (video mode), etc.

Could actually be very handy to solve many queries on the forum.

I’ll look into this. As you intimate, such an “app” might well be help in resolving some queries.

Cool.

Just call it an “App”, if you call it an executable, program or a script, the youngsters will be running for the hills in horror. :grinning:

Screen Shot 2021-03-23 at 4.11.10 PM

Thanks for the insight.
My concern was the listing of filters in the Shotcut GUI, to review or edit in place. The filter icon (triangular flag) disappeared from the Timeline panel on the left, and I couldn’t find a way to get it back.
The set of filters had appeared in the filter panel as I was building it. I want to get back to that view.
I’d rather not have to edit the mlt file, but I see the information there, using N++.

Is this what you are talking about?

filter

If so it means that the filters were applied to the TRACK not to the CLIPs. If the icon is no longer there it would mean that you have somehow deleted the filters.

The first thing I would do would be to make a copy of the project file (.mlt). If you have deleted the filters then when you close Shotcut, the MLT will by default be overwritten and the filters will be permanently lost.

If you open the copy, the filters should magically reappear, but of course you will lose any editing you had done since you last saved the original file. Editing the XML (MLT) file could re-instate the filters, but it is fraught with risk and you’d have to be very careful you didn’t totally screw up the file. If you do do any editing use copies and keep the originals

PowerShell is also cross-platform, but to the same point, it may be overkill to install on Linux and Mac for small scripts.

PowerShell is surprisingly popular on Linux in enterprise shops. It’s pretty beastly for administrative tasks.

Lashed together some javascript and html to analyze MLT files in a web browser,
as per @Elusien idea.

Tested and works for me, Chrome on MacOS.
No reason why it should not work on other OS’es and browsers.

Very easy to use, download the attached file:

AnalyzeMLT.txt (913 Bytes)

Change the extension from .txt to .html
Double click on it, it will prompt for a file, browse to a mlt file and open it.

It will list any filters used, plus the video mode of that project.
You can then select/copy all the text and post it on this forum.
Might be useful to some.

Please note that it’s still very crude, no error checking etc.
Maybe a starting point for others to improve on.

Here is a screenshot when run in a browser:

2 Likes

No need to download and edit, now.
Analyze MLT

If anyone wants to work with me and @Paul2 on the formatting of the output, or any other improvements, contact me here or by PM.
:grinning:

@kagsundaram

Thanks for making it available on your server.
One thing I would change, is add an “accept” filter on the file types to restrict it to .mlt.
This way, people don’t accidentally try and analyze other file types.

Screen Shot 2021-03-23 at 8.05.11 PM

Other changes would definitely be in order like you say, formatting of the output and making the page look a bit nicer.

1 Like