Wish some functionality like PHP


My suggestion/wish: to have some possibility like PHP.

Now I have 7,000 mp3 files catalogized and about 30,000 that is waiting for catalogize them. From catalogized, 5,500 files are in folder structure; these are those files, where I have a big quantity of files from one artist or less files from him, but min. 1-2 with 5* rating. The remaining 1,500 files are in <_various> folders.

Now, when I decide (and have time... :rolleyes: ) to catalogize next bunch of files, I must to search (with filter) for every artist: have I already some songs from him? and where? It will be a big help if I could use filters like functions in PHP html-coding language.

For example, I look 2 new files:
12 - Electric Light Orchestra - Hold on tight!.mp3
06 - Quatro, Suzi - If you can't give me love.mp3

I wish a filter that will work like PHP code and do this:

FIND all files in my catalogized files
where artist have ELECTRIC or LIGHT or ORCHESTRA or QUATRO or SUZI
AND if founded more than zero
highlight the accordant new files.

So I could to move them easely to a new temporary folder for catalogizing them later artist by artist - but all other files I can move simply to <_various> folder. Because (in case of mixed downloads, with var. artist) usually these files are 80-90 % of all, so I can save a lot of time if not to search for every artist of these files too.

I not believe in this suggestion, so I plan to make a helper PHP-page... anywhen in future, when I have time.

Sorry for my English.

Try the filter in Mp3tag:

Hi, Dano!

I use it. But, I must to use it with EVERY artist, step by step. If I looking, for example, 1,000 new files, I must to use filter appr. 300 times. PHP can do it instead of me (with cyckle-process). If there will 40 results - big difference to filter 300 times or 40 times.

How do you know by which artist the track is? If the %artist% tag is filled, it should be no problem to move the files to the appropriate folders using the tag-filename function.
Have you tried to include the backslash when renaming files from the tags to move them to certain folders?
What about sorting tracks by artist? this would eliminate the need to look for an artist over and over again as all artists with the same name are now together.
Loads of questions - but, if I am honest, I shouldn't bother but I am sure that there are loads of functions inside of MP3tag that do exactly what you need without php.

Yes, I used these solutions, but it's not enough. I downloaded Bravo Hits 1-50. 1,900 songs. (I thought, if "hits", so must be good music - I was mistaked...).

  1. Every second file with multiple artist - so sorting will not help.
  2. Artist, for example, Jean. What-the-hell Jean? Jean Firstthehell or Jean Secondthehell or Jean Thirdthehell? Have I got something from him (or her?) already?
  3. In one file Captain Jack, in the next Capitain Jack, in the third Cap. Jack and so on...

With PHP I can separate words (or first 3-4 letter of every word) and then search for these fragments - and do this in cyckles, all at once.

I think I must to insert here: of course Mp3tag is an excellent application. And this is the cause. When you get (free!) gold 24 carat, you want more, platinum... :smiley:

Have you had a look at MediaMonkey? It has powerful SQL database functions. Good luck.

Never. Thank you for a tip!

I'd love to see a more powerful scripting language in Mp3tag. Maybe for 5.0? Just a few of the things I could use would be:

  • Variables. Instead of having to use tag fields to hold temporary values.
  • Multiline (block) statements, such as
    if (something)
      do this
      do that
      do something else
  • The ability to work with multiple files (all files loaded, or all files selected by a filtering statement)
    for each file do
    end for
    for each file in (filtered_list) do
    end for
  • User defined functions, so that code could be reused. Would be more powerful than Action Groups.


  • Operators(!)

    Instead of neq(%artist%, %albumartist%). simply %ARTIST% <> %ALBUMARTIST%.

  • And, of course, the ability to set tag and file fields from within the language. Most (or all) of the different actions then become superfluous. For example
    # Determine if an album is a compilation and tag files accordingly (simplified)
    iscompilation = FALSE
    artist = ''
    count = 0
    for each file do
      count += 1
      if ((%ARTIST% <> artist) and (count > 1))
        iscompilation = TRUE
        artist = %ARTIST%
      end if
    end for
    if (iscompilation)
      for each file do
        %COMPILATION% = '1'
        %ALBUMARTIST% = 'Various Artists'
      end for
    end if</li></ul>