Windows Media Player - 一些翻录的 CD 曲目缺少 ID3 标签

Windows Media Player - 一些翻录的 CD 曲目缺少 ID3 标签

假设您已将 WMP 配置为在插入 CD 时自动翻录 CD。

  1. 您插入一张 CD

  2. WMP 开始翻录,并开始在线查找 CD 元数据。在查找过程中,CD 曲目最初存储在“未知艺术家/未知专辑”文件夹中(添加了日期/时间戳)。

  3. 元数据查找完成,艺术家/专辑文件夹被适当重命名,并且各个曲目文件也被重命名。

请注意,在初始处理期间,在专辑/艺术家信息可用之前,已翻录了几首曲目。虽然 WMP 正确地重命名了文件夹/文件,但它没有将 ID3 标签信息应用于在检索元数据之前翻录的曲目文件。如果您使用 mp3tag 等标签工具检查文件夹,您会发现前两三个曲目文件没有 ID3 数据,而后面的曲目文件有。

是否可以让 WMP 再次检索元数据并将其应用于未标记的曲目?我已经尝试过“查找专辑信息”和“更新专辑信息”,但这两个操作都不会对 ID3 标签进行任何更改。

  • 操作系统版本:Windows 10 Pro X64 1803
  • WMP版本:12.0.17134.799
  • 将媒体信息更改写入文件:已启用

答案1

我遇到了同样的问题,并找到了解决方法。但是,只有当您的文件命名正确且相同时(例如曲目编号_艺术家_标题),它才有效。

  1. 下载免费软件 Mp3tag
  2. 导入包含音乐的文件夹(当时不是太多 - 我以前每次导入大约 1000-2000 首音乐曲目)
  3. 将所有“未知”的曲目依次排序
  4. 按住 Shift 键,用“未知”ID3 标签标记所有曲目
  5. 点击图标“文件名 - 标签”(日期名称 - 标签)
  6. 定义文件命名规则(例如曲目编号_艺术家标题 --> %track%%艺术家%%标题%)
  7. 单击“确定”,ID3 标签即生成
  8. 重复此操作,直到正确命名所有文件。

答案2

这个问题让我抓狂了好一阵子。我把很多 CD 翻录成 FLAC 格式,然后才发现(通常是)第一首曲目的元数据丢失了。

我创建了一个 Python 脚本来快速修复这个问题。你需要有点技术知识,但它确实能解决问题!

查看https://github.com/joegiglio/FixTracks。 祝你好运。

答案3

解决方案是使用 Windows Media Player 翻录 CD,然后取出 CD,从硬盘中删除翻录的 CD 文件(或移动它们),然后重新插入同一张 CD 并进行第二次翻录,你会看到任何缺失或未知的曲目或专辑属性神奇地变得可用(通常曲目 1-3 中的一些属性在第一次翻录后显示为“未知”,但您的情况可能有所不同)。

这可能是由于 Windows Media Player 的一些数字版权管理处理限制,因此需要投入更多的时间来阻止音乐 CD 的大规模非法复制。

答案4

还创建了一个 Python 脚本。假设文件夹路径包含艺术家/专辑信息:

#When ripping music CDs with windows media player the metadata may not come through. 
#Install Anaconda https://www.anaconda.com/ and run the cmd prompt
#!pip install eyed3
#Use Spyder to write/execute a .py script file

import os
import eyed3

def update_mp3_metadata(folder_path):
    # Iterate through all MP3 files in the specified folder
    for root, _, files in os.walk(folder_path):
        for filename in files:
            if filename.lower().endswith(".mp3"):
                mp3_path = os.path.join(root, filename)

                # Extract artist and album from folder path
                artist = os.path.basename(os.path.dirname(os.path.dirname(mp3_path)))
                album = os.path.basename(root)

                # Extract title from filename (excluding track information)
                title = filename[3:-4]  # Assuming track info is 3 characters long

                # Update MP3 metadata
                audiofile = eyed3.load(mp3_path)
                audiofile.tag.artist = artist
                audiofile.tag.album = album
                audiofile.tag.title = title
                audiofile.tag.save()

                print(f"Updated metadata for {filename}:")
                print(f"  Artist: {artist}")
                print(f"  Album: {album}")
                print(f"  Title: {title}\n")

if __name__ == "__main__":
    folder_path = r"G:\My Drive\Artist\Album" #paste own path here
    update_mp3_metadata(folder_path)

相关内容