我正在尝试编写一个脚本来使用Python和eyeD3清理mp3文件名,但是当我尝试使用以下脚本加载一个mp3文件时,我得到了“WARNING:Eyd3.mp3.headers:Lame tag CRC check failed”的提示
import string
import os
import eyed3
count = 0
for root, dirs, filenames in os.walk('path'):
for song in filenames:
audiofile = eyed3.load(song)因此,我无法重命名我的库中的大多数文件。在这个主题上有什么经验,或者有其他库可以使用吗?
发布于 2020-04-11 01:28:56
我发现了第一个方法来检测那些不幸发送到标准输出的eye3d“错误”:实际上,eyed3并不像它看起来那么脏,因为它的错误和实际上的log.warnings,所以我通过这样的方式查看日志得到了这些错误:-在eye3d调用之前,我将日志重定向到一个stringIO -在eye3d调用之后,我检查这个stringIO是否仍然是空的(或不是)。
示例代码:
import logging
import io
import eyed3
log_stream = io.StringIO()
logging.basicConfig(stream=log_stream, level=logging.INFO)
audiofile = eyed3.load('myfullfilename')
llog = log_stream.getvalue()
if llog:
# deal here with the error message which in llog
# and then purge the log_stream to reuse it for next eye3d call
log_stream.truncate(0)
# all this code can be improved : enclose it in a try..catch, etc.发布于 2020-10-02 09:05:34
看到几个问题没有明确的答案;这个问题似乎最有作用。我也遇到过这个问题,但很明显,这个错误与任何人的特定Python脚本无关。您可以通过运行命令行eyeD3工具进行判断,如下所示(输出已缩短):
% eyeD3 -v '03 - The Presidents Of The United States Of America - Lump.mp3'
eyed3.mp3.headers:WARNING: Lame tag CRC check failed
.../03 - The Presidents Of The United States Of America - Lump.mp3 [ 5.28 MB ]
ID3 v2.4:
title: Lump
artist: The Presidents Of The United States Of America您可以通过以下方式查看有关LAME标记的更多信息:
% eyeD3 -P lameinfo '03 - The Presidents Of The United States Of America - Lump.mp3'
eyed3.mp3.headers:WARNING: Lame tag CRC check failed
Encoder Version : LAME3.82U
LAME Tag Revision : 10
Music CRC-16 : 5555
LAME Tag CRC-16 : 5555我还没有真正研究过它,但我猜测它是如何工作的,那就是计算出的CRC与标签中的不匹配?
不幸的是,我不确定如何使用eyeD3或任何其他工具来修复这个LAME标记。然而,我能够修复的警告是重新编码和覆盖文件(在Mac上,我使用程序“开关声音文件转换器”)。LAME标签似乎在这个过程中丢失了(这是有意义的,因为LAME与编码相关):
% eyeD3 -P lameinfo '03 - The Presidents Of The United States Of America - Lump.mp3'
03 - The Presidents Of The United States Of America - Lump.mp3 [ 5.71 MB ]
-------------------------------------------------------------------------------
No LAME Tag和
% eyeD3 '03 - The Presidents Of The United States Of America - Lump.mp3'
.../03 - The Presidents Of The United States Of America - Lump.mp3 [ 5.71 MB ]
ID3 v2.3:
title: Lump因此,警告消失了(注意ID3标签版本也更改为旧版本……然后我使用一个名为Tagr的程序更新了标签,它写回了最新版本)。我现在不确定还能怎么做,但我很想知道是否有人对不同的工具有想法,或者对这一切是如何工作的有更深入的理解。
发布于 2016-10-18 11:55:29
我遇到了同样的问题,我的mp3文件是由ffmpeg生成的,有这个问题。而且,它没有任何信息集。
我手动(在Windows中,使用文件属性)只编辑了标题并将其设置为"X",之后我就可以使用eyed3而不会遇到CRC错误。
https://stackoverflow.com/questions/36636063
复制相似问题