Post Reply 
TagFormat is not working properly
29-01-2023, 21:34
Post: #42
RE: TagFormat is not working properly
(29-01-2023 19:40)ischowam Wrote:  Is it really necessary to create a line of code for every year existing in the library?

I fear the answer is yes (resp. no), otherwise you would have proceeded like this. Smile
Unfortunately you need to supply a value, not a tag. Similarly, you have to always match on a value, meaning you can't match on a missing value, which is why it's a little bit more difficult if you only have a tag to identify the non-album tracks. There are other restrictions too, like you can only update (=) or delete (-) the tags referenced in the @ instruction, so you need to get a little creative.

I've just had a quick look and the following export code should work in mp3tag:
Code:
£filename(D:\tagUpdate.txt,utf-8)
@#AUDIOCHANNELS=1
@#AUDIOCHANNELS=2
@#AUDIOCHANNELS=5.1
£loop(%year%,1)&DATE=%year%
+ALBUM_DATE=%year%
£loopend()

£loop(%year%,1)@ALBUM_DATE=%year%
&NONALBUM=1
-ALBUM_DATE
£loopend()

@NONALBUM=1
£loop(%year%,1)&DATE=%year%
+NON_ALBUM_DATE=%year%
£loopend()
NOTE: Replace the £ in the above with $ as the forum software doesn't like the $.
This assumes you're loading all your files into mp3tag when you do the export. If you can't do that, and if you know the earliest year in your collection we could probably knock up a batch script to do it.

Change the filename() path to whatever you want. This file will need to be uploaded to the Synology before you can make the MinimServer changes.
I've assumed a tag of NONALBUM=1 as the tag to identify your non-album tracks but change it to whatever you want (in both places).
The above code is different to what I set out before as I'm assuming you only have a tag to identify non-album tracks, but if there's a tag to identify album tracks then we can simplify it.

mp3tag logic
The loop command in the script is a way to loop through all the unique (the 1 in the function) values of a tag, the end of the loop being the loopend(). The text in the loop is output to the $filename.

MinimServer logic
The AudioChannels match is there to create a new tag called Album_Date for every track (it basically copies the date tag). This tag will ultimately be used in album.displayFormat. I'm assuming here that all your music have either 1, 2 or 5.1 channels.
The next step removes the Album_Date tag from non-album tracks.
The final step is to create a new tag called Non_Album_Date for non-album tracks that will be used in the title.displayFormat.
NOTE: When referencing tags in a MinimServer tagUpdate script the tag names must be in uppercase.

To create the tagUpdate script in mp3tag:
File > Export > New config (document with star image)
Give it a name then click OK
In the resulting window paste the code above (remembering to change the £), then close notepad
Click OK and it should create the file for you.

Then back in MinimSever you'd need to change:
itemTags: #AudioChannels, NonAlbum, Album_Date, Non_Album_Date
tagFormat: album.displayFormat={$album^^ $Album_Date^[^]^}, title.displayFormat={$title^^$#AudioDuration^ ^^$#AudioFormat^ | ^^ $Non_Album_Date^[^]^}
NOTE: I've used NonAlbum, correct this to whatever tag you've used above.
tagUpdate: <path and filename on synology where you've uploaded the tagUpdate file to>

Change the title.displayFormat to whatever you want, I've just appended it for now.

Then do a MinimServer restart and that should be it, but it's likely that I've forgotten something, or I have missed a step so just shout back if you have a problem.
Find all posts by this user
Quote this message in a reply
Post Reply 


Messages In This Thread
RE: TagFormat is not working properly - simbun - 29-01-2023 21:34

Forum Jump:


User(s) browsing this thread: 1 Guest(s)