我找不到通过 mutagen(Python 库)将情绪写入 mp3 文件的方法
初始化:
from mutagen.mp3 import MP3
from mutagen.id3 import ID3, TIT2, TALB, TPE1, TPE2, TCON, TPUB, TENC, TIT3, APIC, WOAR, PRIV
audio = MP3(mp3_file, ID3=ID3)
我可以使用
audio['TIT3'] = TIT3(encoding=3, text=subtitle)
编写字幕
audio['WOAR'] = WOAR(encoding=3, url=author_url)
此外,我可以使用
编写作者 URL
mutagen.File("file.MP3").keys()
但是我找不到写心情的方法
dict_keys(['TIT2', 'TALB', 'TCON', 'TPE2', 'TPUB', 'TSSE', 'TENC', 'TIT3', "APIC:'Album Cover'", 'APIC:', 'WOAR:https://youtube.com', 'PRIV:WM/Mood:S\x00a\x00d\x00\x00\x00', 'TPE1'])
我在文件属性中手动写了心情(悲伤)然后运行
你已经发现了正确的方法,只是语法需要微调。
PRIV
框架可以用来存储自定义标签,包括情绪。
以下是如何使用
mutagen
添加情绪标签:
from mutagen.mp3 import MP3
from mutagen.id3 import ID3, PRIV
# ... (其他代码)
mood = "Sad" # 设置情绪值
audio = MP3(mp3_file, ID3=ID3)
audio.tags.add(PRIV(encoding=3, owner="WM/Mood", text=mood))
audio.save()
这段代码做了以下几件事:
-
导入必要的库
:
MP3
用于读取和写入 MP3 文件,ID3
用于处理 ID3 标签,PRIV
用于创建自定义标签。 -
设置情绪值
: 将
mood
变量设置为你想添加的情绪,例如 "Sad", "Happy", "Energetic" 等等。 -
打开 MP3 文件
: 使用
MP3(mp3_file, ID3=ID3)
打开 MP3 文件。 -
添加情绪标签
: 使用
audio.tags.add()
方法添加一个新的PRIV
标签。-
encoding=3
指定使用 UTF-8 编码。 -
owner="WM/Mood"
设置标签的拥有者为 "WM/Mood",这是 Windows Media Player 用来存储情绪的标准标识符。 -
text=mood
设置标签的值为我们之前定义的情绪。
-
-
保存文件
: 使用
audio.save()
方法保存修改后的 MP3 文件。
这样,你就成功地使用
mutagen
为 MP3 文件添加了情绪标签。
需要注意的是,不是所有音乐播放器都支持读取自定义标签。 Windows Media Player 和一些其他播放器可以识别 "WM/Mood" 标签,但其他播放器可能无法识别。
标签:python,python-3.x,mp3,id3,mutagen From: 78771991