IPB

Welcome Guest ( Log In | Register )

> foobar2000 General Forum Rules

This is NOT a tech support forum.
Tech support questions go to foobar2000 Tech Support forum instead.

See also: Hydrogenaudio Terms of Service.

 
Reply to this topicStart new topic
Help needed with output style and filename formatting, Can somebody familiar with foobar title formatting help please?
kidamnesiac
post Nov 20 2012, 00:03
Post #1





Group: Members
Posts: 3
Joined: 20-May 12
Member No.: 100018



Basically, I'm trying to figure out this formatting style for conversion filenaming so my music collection would be styled like this (best show this on an example):

...\Music\Pearl Jam\[1991] Ten\1.01 - Once.flac
...\Music\Pearl Jam\[1991|2009] Ten\1.01 - Once.flac

Most of it is self-explanatory, but the tricky part to do here (automatically) is the year part. For example, this album, Ten, was re-released in 2009, and if the year of release differs from the original date of release, I want that to show in the filename/directory structure.

I tag my music with the MusicBrainz Picard semi-automatic tagger, which saves the date of release in %date%, and creates a new tag named 'ORIGINALDATE' to store the original date of release. What I've come up so far (posting just the part in brackets as everything else works!):

'['$left($meta(originaldate),4)$if($left($meta(originaldate),4)==$left(%date%,4),,|$left(%date%,4))']'

I'm using the $left(string,4) function as Picard stores dates in the format yyyy-mm-dd and extracting the four left characters gives you the year.

So, as I said, this isn't working right now (the else statement does not execute) and if anybody could help me, thanks a lot!

This post has been edited by kidamnesiac: Nov 20 2012, 00:17
Go to the top of the page
+Quote Post
Daeron
post Nov 20 2012, 01:32
Post #2





Group: Members
Posts: 362
Joined: 9-October 08
Member No.: 59818



CODE
'['[$ifequal($left(%date%,4),$left(%originaldate%,4),,$left(%originaldate%,4)|)]$left(%date%,4)']'

'==' is not a valid function in titleformatting.

http://wiki.hydrogenaudio.org/index.php?ti...ormat_Reference

This post has been edited by Daeron: Nov 20 2012, 01:36
Go to the top of the page
+Quote Post
BenB
post Nov 20 2012, 07:40
Post #3





Group: Members
Posts: 716
Joined: 17-April 12
Member No.: 98921



The pipe "|" is an invalid character for file and folder names. foobar interprets its presence in a string as a backslash "\" using Copy or Move in File Operations. Thus it will result in a folder named "[1991" containing a folder named "2009] Ten".

Now, as for what I'd use to accomplish what you want:
CODE
'['[$if($stricmp($year(%originaldate%),$year(%date%)),,$year(%originaldate%)-)]$year(%date%)']'

However, you might want to reconsider using this at all since it will result in multiple folders for an album when the tracks of that album have differing "originaldate" tags such as artist compilations/retrospectives.

Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 User(s) are reading this topic (1 Guests and 0 Anonymous Users)
0 Members:

 



RSS Lo-Fi Version Time is now: 25th July 2014 - 03:37