iTunes使用的"专辑艺术家"标签是什么?有没有办法用java设置它?

Coo*_*ter 18 java mp3 id3

iTunes使用名为"专辑艺术家"ID3标签,并且要将一个专辑实际分组为iTunes中的专辑,专辑名称和专辑艺术家必须相同.

就我而言,专辑艺术家不是官方ID3标签,而且到目前为止我看过的ID3库中没有人支持"专辑艺术家".

预习

有没有人更多地了解这个奇怪的标签,以及如何在java(或任何命令行实用程序)中设置它.

Cow*_*wan 26

上述评论者是正确的TPE2("乐队/管弦乐队/伴奏")是ID3标签,通常为此重新利用.我知道至少iTunes,Windows Media Player,J River Media Center和XBMC都使用这个标签,因为我在我自己的音乐收藏中广泛使用它,并且所有这些应用程序都无缝地支持它.

要编辑此标记:

图形化:你真的不能错误地使用mp3tag,这是唯一的图形编辑器(在这种情况下是Windows,但在Wine下工作正常)我使用过很好处理多个文件(除非你专门更改它们,否则单独保留值),让你可以自定义你拥有的字段(以及它们如何映射到ID3或FLAC标签等),还有其他很好的东西,例如APIC干净地处理标签(封面,封底,光盘图像,乐队照片)的多种图像类型等.强烈推荐.

从命令行:id3v2命令行工具在这种情况下处理:

$ id3v2 -l foo.mp3 
[...]
id3v2 tag info for foo.mp3:
TFLT (File type): MPG/3
TIT2 (Title/songname/content description): Because Of The Blood (Single Version)
TPE1 (Lead performer(s)/Soloist(s)): Sin Fang
TPE2 (Band/orchestra/accompaniment): Sin Fang
[...]

$ id3v2 --TPE2 "Spice Girls" foo.mp3

$ id3v2 -l foo.mp3 | grep TPE2
TPE2 (Band/orchestra/accompaniment): Spice Girls
Run Code Online (Sandbox Code Playgroud)

(此工具默认在Ubuntu repos中可用,sudo apt-get install id3v2)

来自Java:

使用类似javamusictag项目的东西.我有一段时间没用过这个,但有点像:

MP3File file = new MP3File(new java.io.File("foo.mp3"));
((FrameBodyTPE2) file.getID3v2Tag().getFrame("TPE2").getBody()).setText("Backstreet Boys");
file.save();
Run Code Online (Sandbox Code Playgroud)

是非常接近(或至少,足够接近让你开始).

  • 我非常感谢!非常好的示例代码!你真的配得上50分:P (2认同)