[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: emms-info-functions tested, and more data to the tag editor topic

From: Petteri Hintsanen
Subject: Re: emms-info-functions tested, and more data to the tag editor topic
Date: Wed, 27 Dec 2023 22:51:01 +0200
User-agent: Gnus/5.13 (Gnus v5.13)

Titus Müller <mail@titusmueller.de> writes:

> Now, what I found out, is: Setting emms-info-functions just to
> '(emms-info-native) works fine, also '(emms-info-mp3info
> emms-info-native) works. But if I change the order of the two and use
> '(emms-info-native emms-info-mp3info), it produces the problematic
> data: all titles cut down to max 30 characters, strange numbers
> instead of Umlaut characters.

If at all possible, do not use emms-info-mp3info.  The reason is that
mp3info program recognizes only ID3v1 tags.  ID3v1 is a limited format
with only artist, album, title, comment, genre, and (possibly) track
number fields.  Text fields are limited to 30 characters.  This is why
you see capped titles.  However, umlauts shown as octal digits in Emms
looks like a decoding bug on Emms side.  Umlauts in your files are
probably fine.

Nowadays most MP3s have ID3v2 tags, or both v1 and v2.  Therefore it is
best to use emms-info-native, or some other info method that works with
ID3v2.  Since ID3v2 is a superset of ID3v1, you will usually get much
richer metadata without the aforementioned v1 limitations.

The ordering of emms-info-functions can, unfortunately, have a profound
effect on your metadata cache, as you already witnessed.  Namely, Emms
works by passing a new file to each info method in emms-info-functions
in turn, starting from the first method and ending with the last.  Each
info method will override the values from the previous methods, should
it find the same tags.

For example, if you set emms-info-functions to

  '(emms-info-native emms-info-mp3info)

an MP3 file will be passed first to emms-info-native.  That method will
parse ID3v2 tags from the file.  Next, the same file will be passed to
emms-info-mp3info, which will parse ID3v1 tags from the file.  Now
suppose that there is a title field with more than 30 characters.  That
title will be parsed completely by emms-info-native, but
emms-info-mp3info will cap it to 30 characters.  Because
emms-info-mp3info is the last method, the truncated title will be
eventually used in Emms.

So, generally, you want to avoid mixing similar info methods, or just
use one info method that can handle most, if not all, of your files.
The manual tries to emphasize this (see Section 13.1 Metadata Utilities)
but perhaps not enough.  If you have only MP3 files, I'd recommend to
stick with emms-info-native.

> As to the other concern I wrote about a few days ago, the "deleting"
> of the other tags by the emms tag editor, I looked closer into it. The
> deleted ones are the id3v2-tags. Here is a case example, maybe it is
> of use.

I cannot help you with this right now, since I really haven't used Emms
tag editor at all, and I don't know how it works.  But it seems very odd
that ID3v2 tags would get discarded.  They definitely should not, as
they are the de facto standard nowadays.

I will try to replicate this behavior myself.

Thanks for your report and best regards,

reply via email to

[Prev in Thread] Current Thread [Next in Thread]