问题标签 [id3v2]

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 投票
2 回答
978 浏览

taglib-sharp - TagLib# File.Create 上的异常

我正在尝试使用 Taglib# 将 id3v2 标签添加到文件中。我让它在一些文件上工作 - 但是,在某些文件上它会失败。(可能是由于文件损坏)。

Create() 调用抛出此异常:提供的数据不以文件标识符开头

根据文档,我不确定如何解决此问题(或添加文件标识符)。

0 投票
1 回答
2876 浏览

java - Jaudiotagger ID3 TAG for android - 可以设置艺术品但不能设置其他字段

我对 Java 编程比较陌生。在这里,我正在尝试使用 Jaudiotagger 库为 mp3 更改/创建新的 ID3 标记,而我的一个 android 项目中没有一个。但是,我真的无法设置为使库正常工作。也就是说,对于已经设置了一些 ID3 标签的 mp3,我可以成功地写入和更改元数据而没有任何问题。但是对于那些没有设置ID3标签(空白)的mp3,我只能设法设置专辑封面插图,而艺术家,标题,专辑封面等其他字段仍然像以前一样空白。

这是我的代码片段 -

我可以运行程序而不会引发任何错误和异常。只是像标题、艺术家、专辑等这样的元数据标签不会设置,尽管可以成功设置艺术品。谢谢你的帮助!

0 投票
1 回答
1009 浏览

batch-file - 在 Kid3 ID3 MP3 标记器上运行批处理文件

在 120 小时没有找到可以读取和写入 ID3v2 MP3 音频文件中的 COMPRESSED 自定义用户框架 (TXXX) 的 .NET 或 javascript/jquery 插件后,我终于放弃了。

UltraID3Lib:无法读取或写入压缩帧(最后更新于 2009 年,作者 Mitchell S. Honnert 从地球表面掉了下来)。

ID3Lib-sharp:无法读取或写入压缩帧(最后更新于 2012 年)

JavaScript-ID3-Reader:可以返回字节,但大部分是错误的字节。什么都写不出来。

我不能在我的项目中使用大量的 Node.js 或 PHP 脚本,所以它们是不可能的。

我发现的唯一可以读写压缩帧的代码是 Kid3。 http://sourceforge.net/projects/kid3/

但是,它是用 C 编写的(我不知道)并且使用第三方框架,因为它不是在 Windows 中构建的。Command 程序需要 13MB 的支持 dll、QM 和其他任何东西。

在他的观点上我别无选择,只能尝试使用它的单独命令程序 Kid3-cli.exe

所以这是我的问题:

这是在命令提示符下使用程序读取 TXXX 帧的方法。“71F3-15-FOO58A77”是 TXXX 帧的名称,“2”获取它所保存的文本值:

问题:如何使用批处理文件来运行这些命令?根据kid3文件。它显示使用 -c 作为分组命令。Windows 上的 Windows cmd(或程序)确实知道 -c 是什么。

示例:我双击批处理文件,它应该:

  1. 启动程序
  2. 发送程序(不是 cmd)以上 4 行
  3. 每个都必须单独执行。

听起来很简单,但我什至无法在启动后执行其中一个程序代码。

有任何想法吗?并且有人可以编写一个 ID3 标签程序,它可以在不使用 node.js、PHP 或 Windows 中的服务器的情况下读取和写入 COMPRESSED TXXX 标签。

我会给他们买啤酒,因为我真的是一个(廉价的)设计师,只有当我也有的时候,我才是一名全职程序员。

  1. 下载 Kid3 并使用其 windows GUI (kid3.exe) 查看自定义用户框架 (TXXX)。
  2. 在命令提示符处运行包含的 Kid3-cli.exe 以执行相同的操作。
  3. 尝试在批处理文件中执行相同的操作。
0 投票
1 回答
168 浏览

mp3 - 需要 zLIB 专家对 VB.NET 功能的帮助

需要知道我是否在浪费时间。使用 UltraID3lib,它不会解压缩帧,而是使用异常函数将它们存储在数组中。使用的标志表示它们已压缩但未加密。

如果字节确实是 zLIB 压缩的并且格式正确:我该如何解压缩它们,因为我对 zLIB 完全一无所知,而且我只是一个兼职编码员,小时候被他压在头上。(请慢慢解释)。

MP3 用户定义帧 (TXXX) 包含一个小的 xml 字符串。获取 UltraID3Lib 存储的字节数组的快速(坏示例):

这个网站说如果它的 zLib 压缩的开头附近有 789C: http ://www.xtremevbtalk.com/showthread.php?t=318843

我使用这些函数2转换为十六进制: https ://social.msdn.microsoft.com/Forums/vstudio/en-US/fa53ce74-fd53-4d2a-bc05-619fb9d32481/convert-byte-array-to-hex-string ?forum=vbgeneral

文章开头的示例函数1:

000B0789C6330377433D63534D575F3F737B570343767B02929CA2C4B2D4BCD2B29B6B31D376367989B9A976C519F9E5ACE1989452536FA6019B924C206968017A10CA461F2C6AA3FD58A61427E5E72AA42228A114666E6F88CD04772110D5923799

文章末尾的示例函数2:

000000B0789C6330377433D63534D575F3F737B570343767B02929CA2C4B2D4BCD2B29B6B301D376367989B9A976C519F9E50ACE1989452536FA60019B924C20696800017A10CA461F2C6AA30FD58A61427E5E72AA42228A114666E6F88CD047721100D5923799

0 投票
1 回答
3884 浏览

mp3 - 标记后mp3文件损坏

如果我从 gaana.com 下载歌曲,它会进入SD card\Android\data\com.gaana\files\.gaana没有任何扩展名的文件夹。当我用 .mp3 扩展名重命名文件时,我可以在 windows 媒体播放器中播放歌曲。

一切都很好,直到这里。现在,当我使用 Mp3Tag、EasyTAG 等软件更新专辑/曲目/艺术家和其他元数据标签信息时,它会损坏 mp3 文件,并且无法在 windows 媒体播放器中播放。

有人能告诉我标记从 gaana.com 下载的 mp3 文件的正确方法吗?

0 投票
1 回答
1531 浏览

vb.net - VB.Net - 音频文件专辑艺术

基本上我很绝望。

我已经尝试了所有关于这个问题的谷歌搜索结果。

我有一个与 WMP 非常相似的程序。它使用axWMP控件来播放歌曲等。

我有许多类型的音频文件,mp3、m4a、wma 等。我已经成功地编写了一些代码来获取标签:曲目#、标题、专辑、艺术家、年份。我似乎无法正确完成的唯一一件事是专辑封面。

我使用的代码仅适用于某些 mp3 文件。当然这是因为我使用的是 UltraID3,而且它只适用于 mp3。

这是代码:

但后来我尝试通过 WMP 控件本身获取专辑封面,就像我对其余标签所做的那样:

此功能进入 Internet Explorer 临时文件夹并将图像复制到外部以使用它。它有效,但又只适用于相同的 mp3 文件。

我已经阅读了有关可用于 m4a 文件的 Apple Quick Time 控件,但我无法从中得到任何东西。

真正困扰我的一件事是它适用于 mp3 但不是全部。

我对它为什么不起作用的唯一线索是:“索引超出范围。必须是非负数并且小于集合的大小。参数名称:索引”在上面的 MP3Tag.Read(path) 行和“The参数不正确。(来自 HRESULT 的异常:0x80070057 (E_INVALIDARG))" on line pic = tWMP.currentMedia.getItemInfoByType("WM/Picture", "", i) 用于文件不是工作的 mp3 或其他文件格式。

我知道这并非不可能,因为 WMP 12 本身可以很好地显示任何文件的专辑封面。

谢谢你的协助。

0 投票
1 回答
139 浏览

python - hachoir 元数据或 libextractor 是否从 ID3v2 和所有其他格式中提取封面?

我尝试使用 hach​​oir-metadata 处理多媒体文件,但我找不到如何解析 ID3v2 元数据中的封面。我在源代码中看到它知道很多封面标签,但在解析器中没有返回任何标签。而且我什至尝试使用 libextractor 和 python-extractor 绑定,也没有找到如何从多媒体中获取封面。

0 投票
1 回答
158 浏览

java - Charset error while reading ID3 tags

I'm trying to retrieve ID3 tags from mp3 files by using Java ID3Tag Library. But I get some errors while retrieving strings with special characters (çáêü...). So I've converted these strings to byte arrays:

And then I've found that every "unknown" char (as well as the first bytes in the string) has been read as the three-byte sequence -17 -65 -67 ("�" in the string). Also, after each letter there is a byte 0. So, if I want to read "Blue Öyster Cult" ,I get something like "��B l u e � y s t e r C u l t".

What can I do to normalize these strings?

[EDIT]

  • A few mp3 files with special characters are displayed correctly.

  • Reading from charsets like US_ASCII or ISO_8859_1 will cause the char � to be displayed as byte 63.

0 投票
1 回答
691 浏览

id3v2 - 批量添加图像到 mp3 文件

我有几个 mp3 文件:

  • 第一个文件.mp3
  • 第二个文件.mp3
  • 第三个文件.mp3

和他们的艺术品:

  • 第一个文件.png
  • 第二个文件.png
  • 第三个文件.png

如何在批处理模式下将图像作为标签添加到 mp3 文件(1 到 1;2 到 2;3 到 3)?

0 投票
1 回答
90 浏览

id3v2 - 支持 id3v2 标签图片为每个单独的歌曲文件

我想为专辑中的每首歌曲附加不同的图像。但是,由于我的相册是采访集,我希望能够在所有这些采访中附加不同的图像。

正如我一直在阅读规范,有支持的图像类型:

  • $00 其他
  • $01 32x32 像素“文件图标”(仅限 PNG)
  • $02 其他文件图标
  • $03 封面(正面)
  • $04 封面(背面)
  • $05 宣传单页
  • $06 媒体(例如 CD 的标签面)
  • $07 首席艺术家/首席表演者/独奏者
  • $08 艺术家/表演者
  • $09 导体
  • $0A 乐队/管弦乐队
  • $0B 作曲家
  • $0C 作词/文字作者
  • $0D 录制地点
  • $0E 录音期间
  • $0F 演出期间
  • 10 美元的电影/视频屏幕截图
  • $11 一条颜色鲜艳的鱼
  • 12 美元插图
  • 13 美元乐队/艺术家标识
  • 14 美元的出版商/工作室标识

问题是,如果我选择封面(正面),专辑中的所有歌曲都使用相同的图像(来自专辑中的第一首歌曲),而我的 Android 音乐播放器无法区分图像。

谢谢,马丁