@mr_j
Unfortunately, I do not think you will be able to dynamically sort and search for media in such a complex way (using text parsing to build a database) without any code at all.
If you have a set amount of media with tags and nothing is changing about that, you can manually import media into bins based on what tags a file has (any file with more than one tag would be imported into multiple bins, which is fine). You could do this manually, by hand, without code, but not dynamically without code. When you get additional media you'd just import it into each bin that it has a tag for.
@mr_j wrote:
1. add tags to 500+ video file names e.g. "Cyborgs in the Year 2050 #square #red #robot.mov"
You'd need to add the tags manually anyway, but once you did you'd be able to use the Get Media File Name actor to find which media has which tags. In order to store and recall the resulting lists, you'd need Javascript or Python to make a database. I have a patch that does something similar, but it was a paid commission so I'm not at liberty to share it. This is the basics of how to cycle through your media searching for tags though:
Anytime you get a true trigger for a specific file name with a specific tag, you'd trigger a Trigger Text and a Trigger Value to push that media's name and index into a database containing a list of media for that specific tag. You need this to cycle through all your media once per tag so you record the media matches for that tag in a database. Either way, that "Text Comparator Expanded" User Actor of mine that relies on Javascript to search the incoming text for a set string of characters relies on code, so there's already code involved in this solution (though not code you have to write yourself).
parsing-media-files-for-tags-2025-02-14-4.0.9.izz
@mr_j wrote:
2. import 500+ video files into video bin
Importing media to specific video bins programmatically can be done on macOS using AppleScript: https://support.troikatronix.com/support/solutions/articles/13000093597-isadora-and-applescript
Python can be used to run AppleScript, so that's how you'd made the AppleScript dynamically target specific video bins.
@mr_j wrote:
3. type/enter or toggle select required tags within control interface
This is searching a database using the Edit Text control, for which you need to have first done dynamic text-parsing and database building. You want to search for tags in the file names of all your media and get media index numbers back. This relationship between the contents of a file name and the media index of that file requires a database of some sort. You could build such a database in a Data Array actor (by storing everything in a Data Array actor as JSON and searching every entry, parsing the JSON, and then making a smaller temporary database of the matches), but it would be very complex and still require at least JavaScript code for various parts of the logic.
@mr_j wrote:
4. auto load relevant video files matching selected tags into "bin picker"
5. retype or toggle tags to automatically re-sort video files displayed in "bin picker"
The only way I can think to do this would be to make a bin for each tag and dynamically or manually import media with that tag into that bin, then the Bin Picker can let you pick which bin to select. Then any bin selected would only contain videos with that tag. So it's not doing the sorting for you, but it's a way to navigate media that you've sorted yourself. It would only be possible to display one tag's worth of media at a time per control though; you couldn't display multiple tags worth of media unless you had multiple Bin Picker controls going and manually selected which bin each one was focused on. (So if you had 4 Bin Picker controls and 100 tags, you could pick any four tags to show at a time, one tag per control.)