That's just... Words fail me. No they don't -- Apple, that's stupid, stupid, stupid! Even worse -- mine is finding a renamed mp3 by its actual filename, but displaying the name using the metadata "Title" so it looks like it wasn't found!
Doing a "proper" Find lets you add the "Filename" tag which also lets you find by actual filename -- but the results are still displayed using the "Title" metadata.
Not even three "stupid"s can cover how stupid that is...
I remember trying out EasyFind about a year ago, hoping it might be able to find Logic sessions that contained a certain plugin.
I couldn't get it to work, but it might be an interesting challenge for anyone who has the faintest clue how to interpret Logic session data. Imagine being able to find all projects containing a plugin that will soon become incompatible, so you can open them and bounce/freeze those tracks. Even if the search took all night, it would be miles quicker than opening every session manually to check which plugins were used.
You have no idea how that would be a blessing for me right now!
Recently I bought a new computer and started the process of migrating stuff from one OS to the other. I now have 2 volumes on my disk, one for the current OS and another for the old one. Thing is, I want my Logic projects to only have my current set of plugins and trying to find the projects that only have those, means I need to open each project one by one, replace them with others for compatibility purposes, etc.
This kind of tool or feature would be super cool!
If you ever find a way to do this, PLEASE let me know!
Are you a member of the Logic Pro Help forum as well?
There's a lot of people there who have a deep understanding of some of the more specific stuff when it comes to Logic. Actually I will just post something about this in there just in case
Yeah I've asked there and a few other nerdy places, but nobody seems to know how to decipher the session data. I think it's encrypted somehow, so plugin names won't be explicit in any of the files. If anyone knows how, I'm yet to find them.
Ok here's what I just tested and maybe this could be a first step towards something...? I have no idea.
If you open a project file using the Show Package Contents, then go to Alternatives > 000 (if you only have 1 alternative) > Project Data and open it with the TextEdit, it will look like that crazy text with some weird characters combined with normal text. But for example I created a project with only the ES2 on the first instrument and when I searched for ES2, I got this (look at how you see the instrument track number and the name of the plugin):
Tried adding more instruments and effects and it kept showing me everything, so I guess it would be possible to somehow have a list of all stock plugins along with a way to scan all available plugins on our system, merge them, and perform a scan on the Project Data file, making it a list. Like "if you find the one of the words on our plugin list, copy and paste it on XYZ text file"
The heck?!?! I can't believe I never looked in Alternatives!!!
I've written a macro that will work, but there's one hurdle I haven't been able to overcome yet.
The ProjectData file is encoded in a way that KM can't read. If we can fix that, we'll have a working plugin test!
We'll also have to make sure the most recent alternative is used to draw the data from, but I think that's doable. This encoding thing isn't something I've encountered before.
des99 is also having some ideas. Maybe you two together can get there faster?
I'm just here throwing ideas at you. Apparently neither you or him were thinking about that file, so now that you do, maybe things get a little bit easier to prototype with the knowledge you both have (and I don't)...
I'm having a hack around the Logic file format again (ProjectData), and I'm having some success, just need to anchor down some data formats to reliably extract the plugins... I've done a bunch of reversing on Logic's various file formats over the years.
The names and AU id's are there and extractable, and can be compared to installed plugins on your system too. Working on hacking up a prototype to get started...
Yes, that's on my list of features as useful (as are a few other things).
Once I can reliably interpret the audio object data (which can be variable due I guess to object serialisation), the rest is all doable (though not with KM - much as I love KM and use it, it's not the right tool to programmatically parse binary files).
So probably best to continue on LPH for now, as a bit offtopic here I think... (although feel free to continue your KM-focused topic here though, of course!)
I'm sure you're right. However, there's no harm in starting a new topic, in case someone else on here has has been down this road before... If nobody has, it'll get ignored. No biggie. Just my ten cents.
Also -- the Logic file is binary. I'm not sure I'd trust anything extracted from that by a text search. But it looks like @beely is on the case, so fingers crossed for you all...
I think it was more because of potential notifications you would get...? Or maybe not... Neil is just a polite human being!
I think they are all figuring it out... my initial search was on a text file, just because I wanted to fee if there was anything there that could be used (apparently there is), but yeah, someone on the Logic Pro Help forum already stated the same.
I managed to dump out the contents of the ProjectData file from the latest Alternative and run a regex match to a user-defined term. It finds "Geist" for me, which is what I wanted.
Cool, man!
So as someone pointed out on LPH, if someone names the track "Geist" will it find that as well, or just the plugin? Are you just looking for the word Geist or any other parameter that makes the word be associated with a plugin, not a track name?
Also, would you be able to add multiple words and "sentences" (for 2 or more words)?
And what happens after it shows that it detected in X amount of projects? How do you know which? Does it create a list with that info or something?
I still haven't tested it, because I have to focus on some stuff today and I know that if I keep testing this stuff and being here on the forum, I don't do those things haha. Gotta focus for a little bit
As the data is 99% garbled and unreadable, I have no idea whether "Geist" is a track name or a plugin loaded. For my use case, it makes no difference, because I know that if I've named a track "Geist", it's because I stuck an instance of Geist on it.
Yeah, by adding a second regex condition.
It uses Finder tags. If it finds "Geist" it tags the project "Plugin: Geist"; if it doesn't, it actively removes that tag (in case I removed Geist since I last ran this macro on that project).
True. If Geist it the track name, but you have a Sampler there, Houston we got a problem!
Can you upload a version of that as well next to the other one?
That's a good technique. I use tags a lot, especially since I started using Hazel (don't know if you know that app?). So your macro, does it create the tag automatically inside Finder's list of tags or uses that tag as long as you have previously created it?