翻录的mp3文件显示错误的曲目长度


13

使用Banshee和Sound Juicer时,我都已经看到了这个问题。我在Thinkpad 14上使用Ubuntu 12.04。我不确定内部CD驱动器的品牌,但是如果有人告诉我该如何操作,我们将很乐意为您提供该信息。我无法访问外部CD驱动器,这样我就可以确定问题是否出在我的内部CD驱动器上。

无论如何,问题是:我翻录的mp3文件显示的长度错误。例如,根据我的手机和女妖,当我用Animal Collective撕开Peacebone(长度为5:13)时,文件长度为25分钟。播放器在播放整整25分钟之前跳到下一首歌。但是,我不知道自己是在听整首歌还是在听这首歌的真实长度,我感到非常不自在。

到目前为止,问题再次消失了,尽管有时文件长度仍然比预期的要长几秒钟。


经过更多测试后,音乐本身似乎具有正确的长度:长度似乎太短的文件在显示的曲目时间结束后仍继续播放,而太长的文件在播放时会跳到下一首歌曲应该。但是,问题仍然很烦人,使我担心翻录音乐的质量。
Heihej 2012年

2
轨道长度通常根据文件长度和平均预期mp3数据吞吐量来计算。有些玩家会不断重新计算持续时间,有些则不会。有的一旦确定了磁道长度,就将其存储在数据库中,有的则没有。。。只有完全处理了磁道,才能知道确切的持续时间。
吉比2012年

我的所有歌曲都没有出现此问题,因此很难相信这是由播放器读取文件的方式引起的。这仍然意味着文件有问题。
Heihej,2012年

Answers:


12

从Ubuntu 12.04开始,当您使用Rhythmbox或Sound Juicer在Ubuntu中翻录CD时,默认设置将创建VBR MP3,但是不会添加VBR标头,因此,打开MP3所使用的任何程序几乎都会显示错误的轨道长度。 ,包括默认的音乐播放器(Rhythmbox)和默认的文件管理器(Nautilus)。

最简单的解决方案是在翻录后将VBR标头添加到MP3:

  1. 通过在终端中运行以下命令来安装vbrfix:

    sudo apt-get install vbrfix
    
  2. 现在CD到您需要修复mp3的文件夹中:

    cd /path/to/mp3s
    
  3. 运行以下命令以将VBR标头添加到mp3:

    find . -type f -iname '*.mp3' -exec vbrfix {} {} \;
    
  4. Vbrfix似乎留下了一些临时文件,因此请清理它们:

    rm vbrfix.log vbrfix.tmp
    

另一种解决方案是更改默认预设,以便将CD翻录为CBR而不是VBR MP3。这里有一个很好的解释:https : //askubuntu.com/a/154933/18665

像这样的配置文件应该可以解决这个问题(根据需要更改比特率):

[mp3-cbr]
name=lamemp3enc
target=bitrate
bitrate=192
cbr=true
encoding-engine-quality=high
mono=false

与任何错误一样,如果您遇到此问题,我强烈建议您转到错误报告并标记它会影响您(在左上方附近),以便引起更多关注。错误报告在这里:将CD翻录到MP3时,Rhythmbox不会添加VBR标头


1
vbrfix对我有用。然后,我重新扫描了女妖图书馆以获取更改。
isaaclw 2015年

4

根据我的经验,当ID3标签无效时,会发生此问题。您可以尝试从给定文件中删除所有ID3标签,然后重写它们。我为此推荐mutagen,它是一个带有一些有用工具的元数据操作库。

首先安装诱变剂

sudo apt-get install python-mutagen

现在转到包含一些有问题的MP3文件的文件夹,然后在其上运行mid3v2:

mid3v2 --delete-all your_file.mp3

这将从给定文件中删除所有元数据,这意味着没有标题,艺术家,专辑封面,但文件应显示正确的长度。

您可以使用Picard重新填充元数据,例如Picard,它在Ubuntu中作为picard软件包提供。

编辑:还有MP3 Diags应用程序应该能够修复VBR标头和MP3文件的其他一些问题。它可以在Ubuntu mp3diags(或从Ubuntu Software Center)获得

另一个更具体的解决方案是VBRFixvbrfix软件包中提供了控制台版本(无Qt GUI)。如果需要GUI,则可能必须自己进行编译。


感谢您的回答,我不知道磁道长度被标记。Picard告诉我,该标签在Peacebone中是正确的,但是在详细信息窗口中,它给了我25分钟的价值。我从文件中删除了所有标签,由于某种原因,无法使用picard重写标签,您知道应该怎么做吗?
Heihej,2012年

Picard的工作方式与其他标签编辑器略有不同,您只需将其添加到轨道中即可进行标记,并将其与MusicBrainz数据库中的专辑进行匹配。请参阅操作指南:musicbrainz.org/doc/How_to_Tag_Files_With_Picard如果这种类型的编辑不适合您(或者您无法在MusicBrainz数据库中找到专辑),请尝试EasyTAG(easytagpackage)
jnv

另一方面,使用MP3 Diags可能有一个更简单的解决方案– mp3diags.sourceforge.net我已经编辑了答案,请看一下。
jnv 2012年

重新标记文件似乎没有帮助。我尝试使用mp3diags重建VBR数据,据称该文件可修复显示时间不正确的问题。确实确实可以更好地更改设备上显示的持续时间,但是它们仍然不正确(Peacebone现在的时间为6:53,而应该是5:13)。
Heihej 2012年

还有vbrfix一个软件包,它是上述VBRFix的控制台版本。否则,您可以尝试再次翻录这些文件。我只能建议使用FLAC,Ogg Vorbis或AAC(如果您的电话可以播放其中的任何一种),但是您也可以将CD翻录为CBR或ABR MP3,这样不太容易出现无效的长度信息。翻录为WAV(或FLAC)并重新编码为VBR MP3也是一种选择。或者只是使用原始设置再试一次,也许编码器的日子不好过。
jnv 2012年
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.