我该如何纠正错误的iTunes播放次数?


9

iTunes库中的播放计数以某种方式变得不正确。它显示了一些从未播放过的歌曲,而我知道我曾经播放过很多次。这些歌曲的确还有“最后播放”日期。

另外,有些歌曲被列为只播放一次,而我知道它们已经播放了多次。

我有一台iPhone 4S,带有iOS 6.0.1,iTunes11。我的PC是在Windows 7上运行的VAIO。我有一个iTunes帐户的备份。我认为将iTunes帐户更新为版本11后,问题就开始了。

我需要恢复原来的播放计数数据。谁能帮我这个?

Answers:


12

对于较小的播放计数错误,我使用一些AppleScript来设置计数:

tell application "iTunes"
  activate
  set played count of track named "Vaseline Machine Gun" to 16
  return
end tell

显然,可以将其详细说明来处理涉及多个曲目和播放列表的更复杂的情况。


3
既然如此,您是否有一个适用于iOS或Windows的答案,因为发问者可以从问题的措辞中直接使用iTunes的那些版本。
bmike

@bmike Nope,除了丑陋的“将所有内容移植到Mac,修正计数,然后将其移植回”。看起来可能有一些Windows方面的脚本编写可能(projects.nateweiss.com/nwdc/itunes/scripts),但我从来没有弄过它。
Wayfaring Stranger

3

iTunes 11中有一个错误,如果在播放设置中启用了音轨的交叉淡入淡出,则播放计数不会更新。这可能是其中的一部分。


感谢您的回复。我不确定交叉淡入淡出是否引起了问题,就我而言,它从来没有打开过。
拉菲

2

这是真正的重型电源解决方案:

使用记事本创建一个新文件,名为:iTunes_SetPlayCount.VBS

使用此脚本:


Dim iTunesApp, selectedTracks, newPlayCount
Dim prompt, title, defaultValue

Set iTunesApp = WScript.CreateObject("iTunes.Application")
Set selectedTracks = iTunesApp.SelectedTracks

prompt = "New playcount:"

For Each IITTrack In selectedTracks
    title = IITTrack.Artist & " - " & IITTrack.Name
    defaultValue = IITTrack.PlayedCount
    newPlayCount = InputBox (prompt, title, defaultValue)

    'MsgBox("NewPlayCount = " & newPlayCount)

    If Len(newPlayCount) > 0 Then
        If IsNumeric(newPlayCount) Then
            If newPlayCount >= 0 Then 
                IITTrack.PlayedCount = newPlayCount
            End If
        End If
    Else
        Exit For
    End If
Next

KaaBAM!


1

摘要

如果退出iTunes并清空iTunes Library.itl文件内容,则iTunes将从中的内容重建您的资料库iTunes Media Library.xml。通过导出媒体库并复制文件来确保它是最新的,然后在其中编辑播放计数。当您重新启动iTunes时,它将使用XML文件,并且您接受的编辑信息也将被接受。

一步步

检索以前的信息:

如果您有iTunes库的备份,请iTunes Media Library.xml在出现问题之前查找from的最新版本。在此文件中,搜索要还原其播放计数的歌曲。您将在这里寻找:

<key>Play Count</key><integer>1337</integer>

现在您知道准确的打球次数了。将它们复制并粘贴到文本文件或其他内容中,以便接下来可以将它们放入当前库中。

修改当前库:

这是棘手的部分,因此在编辑文件之前先备份它们。

  1. 使用File > Library > Export Library…让您的图书馆的跟上时代的XML表示。我将此文件称为Library.xml

  2. 退出iTunes并使用任务管理器确保它(和iTunes Helper)完好无损。

  3. 浏览至iTunes文件夹。替换的内容iTunes Media Library.xml,并iTunes Library.xml与新创建的Library.xml。这将确保它们是最新的。

  4. 更改iTunes Media Library.xml文件中的播放计数。该文件将成为您图书馆的元数据的基础。

  5. 删除内容您的iTunes Library.itl文件。该文件本身需要存在,但必须为空,以便iTunes可以回退到iTunes Media Library.xml。(更多信息)如果一切正常,则不需要此文件的旧内容。

  6. 重新启动iTunes。它会报告您的库已损坏,因此它将退回到您已编辑的XML文件并重建该.itl文件。完成后,您将看到的播放计数iTunes Media Library.xml


我尚未验证使用此方法绝对不会丢失任何数据,但是当我在OS X 10.8上使用iTunes 11测试它时,我的媒体库似乎完好无损。进行调整之前,请始终备份文件。请享用!


1
我只想补充一点,该方法删除了我从Apple Music订阅中添加的音乐。
路加·梅拉

0

纠正错误播放计数的一种方法是打开以前的Itunes库并手动调整播放计数。

您可以加载旧的音乐库(在我的情况下,它与新的音乐库非常相似,因为它只有1个月的历史),并且可以手动调整播放次数(通过多播放几次歌曲),也可以手动调整新添加的歌曲当然,您也可以只使用旧库来识别错误的播放计数并在新库中进行调整。

如何加载旧库?在打开Itunes时按住SHIFT键(首先按SHIFT,按住不放,然后打开Itunes)。Itunes将询问您要打开哪个Itunes库,单击“选择库”,然后单击文件夹“ Previous Itunes Libraries”。在该文件夹中,您会找到许多旧的ITL文件(ITL代表Itunes库文件,这些文件包含播放计数等元数据),选择一个将日期更新到版本11的日期(在我的情况下为名称)文件的名称为“ iTunes Library 2012-12-02”)。Itunes现在将使用旧的播放次数,歌曲名称,最后播放的曲目等打开旧的库。您可以使用相同的SHIFT步骤返回到新的库,但是在“ iTunes”文件夹中选择“ iTunes Library”。

比较旧库和新库的播放计数可以(例如)在Excel中完成。只需选择Itunes中的所有歌曲(CTRL A,CTRL C)并将它们粘贴到Excel中(CTRL V),别忘了先按名称排序。

希望这可以帮助。

乔,拉斐


0

超载超级电源解决方案;

将播放时间设置为一秒,根据需要单击文件上iTunes中的播放次数。

WhaBAM。


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.