问题标签 [id3-tag]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1453 浏览

python - 在 Python 中通过 eyeD3 更新 mp3 标签

我想用日语更新 Mp3 (ID3) 标签,但是当我尝试这段代码时它给了我错误

tag.update()穿过这个错误

UnicodeEncodeError:“latin-1”编解码器无法对位置 0-1 中的字符进行编码:序数不在范围内(256)

如何在 mp3 的艺术家标签中添加日文名称?

0 投票
2 回答
14249 浏览

c# - 带有 taglib 的 C# mp3 ID 标签 - 专辑封面

我正在制作自己的 mp3 标记器,到目前为止一切都很好。虽然我坚持阅读专辑封面标签。

我想知道如何在 C#.NET 图片框中显示封面,但是关于该特定标签的所有内容都让我感到困惑。

我知道我可以从这样的文件中获取标签

但我需要做的就是从文件中抓取图片并将其放入图片框中。然后我想知道如何将图片(jpg,png)写入文件并覆盖现有的。

任何帮助将不胜感激,并感谢您宝贵的时间。

0 投票
2 回答
1226 浏览

vim - 用vim编辑id3标签

有什么方法可以使用 gvim 或 vim 来编辑已经翻录的 .flac 文件上的 id3 标签?另外,也许有人知道将 gvim 标签编辑与 ruby​​ripper 集成的方法?另外,我想在 flacmp3 文件上编辑 id3 标签。

可以以某种方式与 vim 集成的命令行工具也可以完成这项工作。

提前致谢,

伊格纳斯

0 投票
1 回答
418 浏览

c++ - 删除 id3v2 标签 c++

有谁知道如何在给定 mp3 文件的情况下在 c++ 中从中删除 id3v2 标头?我正在使用 Windows 机器,但找不到任何关于如何让 id3lib 在 Windows 上工作的说明。否则,我只会使用它。

0 投票
1 回答
1233 浏览

python - 如何在 ID3v2.2 MP3 标签中获取帧大小?

ID3v2.3标签我已经整理好了,因为有4个字节,但是这里的帧头标签总共只有3个字节,而不是4个。这似乎意味着我不能struct.unpack用来获取int出它。

例如,我现在使用的标签是:名称标识符TT2\x00\x00\x0c\x00Torn Within在哪里,尺寸标识符在哪里。标签的内容是,大小为 12 个字节。 TT2\x00\x00\x0c\x00Torn Within

这也是这首歌的 ID3 标题。'ID3\x02\x00\x00\x00\x04NP',您可以在其中看到未设置编码和标志。

我已经尝试过struct.unpack('>3b', '\x00\x00\x0c'),但这只会获取每个单独字节的值。

但在那之后,我被卡住了,因为除非我\x00在尺寸标签前面加上 a,否则我无法继续。我该怎么办?

这是 ID3 标签文档http://id3.org/id3v2-00struct模块文档http://docs.python.org/library/struct.html#format-characters

编辑发现我可以这样做:int(binascii.hexlify('\x00\x00\x0c'), 16)但我认为这不是一个很好的解决方案

0 投票
1 回答
8121 浏览

android - 将封面艺术添加到 Android 上下载的 mp3

如何以编程方式将封面艺术(专辑艺术)添加到下载的 mp3?

我让我的应用程序通过 Android APIS 的 DownloadManager 下载一个 mp3 文件,如下所示:

是否可以在下载的 mp3 文件中添加封面,以便手机上的 mp3 播放器在播放歌曲时显示图像?

0 投票
3 回答
1962 浏览

java - Java/JAudiotagger:Mp3 错误 ID3 标签大小

我正在使用JAudiotagger库构建一个 mp3 标记应用程序。我的应用程序可以很好地读取 mp3 元数据,并且也可以很好地写入元数据,除了艺术品。所以我的问题如下:

当我在 mp3 文件中添加一些艺术作品并保存时,文件变得越来越大,这是有道理的。但是当我删除一件或所有艺术品时,文件大小并没有变小

实际问题在于我的 mp3 文件的 ID3v2 标签。当我移除艺术品时,它实际上已从标签中移除,但标签大小本身并没有缩小。

我在删除艺术品时使用的方法是这样的:

,它实际上从列表中删除了一件艺术品,然后通过删除其所有艺术品并从更新的列表中重新复制它们来更新标签本身。

我对解决方案的尝试是:

  • 从更新的旧标签创建一个新标签(在调用之后tag.deleteArtworkField()),然后将艺术品添加到新标签,但新标签的大小与旧标签相同。

  • 在保存之前使用 修剪 mp3 文件tag.adjustPadding(File fileToBeTrimmed, int sizeToStoreTagBeforeAudioInBytes, long audioStartByte),这会调整 MP3 文件开头的填充长度。
    这里的问题是我只知道错误的标签大小而不是正确的,所以我无法正确修剪 mp3 并最终丢失音频数据。

为了更好地说明问题,我添加了一些图片:

之前的mp3文件:

前

移除一幅作品后的 mp3 文件。请注意,尽管艺术品较少,但标签仍保持其先前的大小:

错后

以及文件应该如何:

改正后

我希望任何人有任何想法。提前致谢。

0 投票
1 回答
2453 浏览

c# - 使用 Tag Lib C# 在 Mp3 中嵌入专辑封面

尝试使用 c# 标签库添加专辑封面,

我在 windows 媒体播放器、itunes 和 iphone 中获取图片(仅在纵向模式下)。当我切换到横向模式时,会显示专辑封面,但是当滑过封面流时专辑封面会消失。

我在代码中遗漏了什么吗?

我在 iPhone 4s 上使用 iTunes 11、iOS 6

0 投票
1 回答
6062 浏览

java - 如何解决 Java IOException: Negative Seek Offset?(Java ID3 标记库)

我正在尝试使用Java ID3 Tag Library操作 MP3 文件中的 ID3 标签。但是,当我尝试使用“MP3File”类做任何事情时,我得到 IOException: Negative Seek Offset;

这是一个示例代码和堆栈跟踪:

如您所见,即使是基本操作也会给我抛出异常,这让我很难真正开发一些东西......我正在尝试阅读的 MP3 文件工作得非常好。那么,关于为什么会发生这种情况和/或如何解决它的任何想法?

0 投票
1 回答
691 浏览

iphone - iOS 中 ID3 标签的正确编码

我正在尝试从我的项目中的一堆 mp3 文件中获取 ID3 标签。

如果标签不包含西里尔符号,则设备上的输出看起来正常。但是我有时会得到这样的值:

它会导致符号显示失真(http://d.pr/i/X9wG)。

有没有办法将这些符号解码成可读的形式?我已经试过了

但结果保持不变。

任何帮助将不胜感激!

[更新]

我倾向于尝试这个 SO answer中提供的解决方案,但是还有其他方法吗?