Puzzling case of the reverting semicolons

Get answers about using the current release of MediaMonkey for Windows.

Moderator: Gurus

olivechicago
Posts: 58
Joined: Sat Oct 26, 2013 11:57 am

Puzzling case of the reverting semicolons

Post by olivechicago » Fri Feb 01, 2019 1:19 pm

I like to use the semicolon for multiple-value fields, as set under Library>Appearance.

Example track: Johnny Cash and June Carter on Johnny Cash's album "Orange Blossom Special." After organizing and tagging in MMW, the tags appear as follows
  • Title: It Ain't Me Babe
  • Album Artist: Johnny Cash
  • Artists: Johnny Cash; June Carter
  • Album: Orange Blossom Special
  • Genre: Country; Oldies
I select all and choose properties to bulk edit a field. It doesn't appear to matter which field, but let's say select comments to zero the value out, or manipulate the album art to apply to all.

Now within MMW and MMA the above tags remain unchanged.

However, seemingly anything else used to view the tags (Picard, Windows Explorer, Jaikoz for example) displays the tags in the following manner
  • Title: It Ain't Me Babe
  • Album Artist: Johnny Cash
  • Artists: Johnny Cash/June Carter
  • Album: Orange Blossom Special
  • Genre: Country; Oldies
I load the album into Picard for supplemental tagging, and it shows
Artist New Value: Johnny Cash; June Carter
Artist Original Value: Johnny Cash/June Carter

Apply changes. Subsequent tag viewing in anything but MMW has the semicolon shown as the separator. As soon as I manipulate the track in MMW the Artists field reverts back to forward-slash.

I do have auto-organized enabled. While that should not affect tags, I don't even use the Artist field.

Code: Select all

G:\Audio\Music\$If($Left($RemovePrefix(<Album Artist>),1) >= 0,#,$Left($RemovePrefix(<Album Artist>),1))\$Left(<Album Artist>,50)\$Left(<Album>,50)\<Track#:2> - $If(<Album Artist>=Various Artists,$Left(<Artist>,50),$Left(<Album Artist>,50)) - $Left(<Title>,50)
Relevant MMW settings:
Store MP3 properties using: ID3v2
ID3v2 text encoding: ASCII + UTF-16 (when needed)

In Picard:
Convert Unicode punctuation characters to ASCII is enabled
Tag Compatibility: ID3v2 version 2.4 (Same results with v2.3 and UTF-16)
ID3v2 Text Encoding: UTF-16 (Same results with UTF-8)

Beyond the annoyance that MMW and other products cannot agree on how the separator is handled in the the Artist field, why is it only affecting Artist and not Genre?

How do I get this to be handled uniformly?

Lowlander
Posts: 45994
Joined: Sat Sep 06, 2003 5:53 pm
Location: MediaMonkey 5

Re: Puzzling case of the reverting semicolons

Post by Lowlander » Fri Feb 01, 2019 1:37 pm

Are working with MP3's? Note that the separator in the file tags is different from what you see in MediaMonkey and differs per tagging standard. It's up to a program to show a specific separator (like ; in MediaMonkey).
Lowlander (MediaMonkey user since 2003)

olivechicago
Posts: 58
Joined: Sat Oct 26, 2013 11:57 am

Re: Puzzling case of the reverting semicolons

Post by olivechicago » Fri Feb 01, 2019 3:06 pm

Good question. MP3 and FLAC and it appears to affect both.

I kind of discovered something to help, but i've also confused things even more. While writing this up and changing various settings in both applications to make sure I have the timeline accurate, I managed to enable an additional field. This has me thinking this problem may be caused by differences between ID3v2.3/ID3v2.4 and-or UTF-8/UTF-16.

Image

Artists was not an option before. The Artist field is exactly what I've been experiencing. After changing between IDv3 and UTF versions in both MMW and Picard, the Artists field is now an option, and ironically more or less accurate. I say 'more or less' because Picard highlights changed fields. Since they both have the semicolon as the separator, that field should not be highlighted for the value changing. Since it is, I'm guessing one of them is interpreting the semicolon as literal, and one of them is not.

rivorson
Posts: 594
Joined: Thu Jul 25, 2013 4:17 am

Re: Puzzling case of the reverting semicolons

Post by rivorson » Sat Feb 02, 2019 12:40 pm

The forward slash is the required separator for the ID3v2.3 tag standard, so whatever character you choose as the separator within MM it will always be written to the ID3v2.3 tag as a forward slash.

ID3v2.4 changed the multi value separator to a 'null' character to fix the problems caused by using the slash and allow the slash to be used as a normal character (e.g. "AC/DC", which would have been split into two artists in ID3v2.3).

In both cases, the semicolon should not be written to the file. If somehow the semicolon is being written to the file, that could explain why Picard highlights the field as changed, as one could interpret the field as a single value and the other parse it as multi value.

Post Reply