【发布时间】:2011-01-26 17:09:27
【问题描述】:
在 Mac 上,我可以从“iTunes Music Library.xml”文件中提取特定歌曲的“Persistent ID”,然后使用 Applescript 播放该歌曲,如下所示:
tell application "iTunes"
set thePersistentId to "F040658A7687B12D"
set theSong to (some track of playlist "Music" whose persistent ID is thePersistentId)
play theSong with once
end tell
在 PC 上,我可以以同样的方式从 XML 文件中提取“持久 ID”。 iTunes COM 接口的文档说函数“ItemByPersistentId”有两个参数:“highID”(64 位持久 ID 的高 32 位)和“lowID”(64 位持久 ID 的低 32 位) .但我不知道如何将基于十六进制的值转换为 ItemByPersistentId 函数想要的高低 32 位值。
var thePersistentId = "F040658A7687B12D";
var iTunes = WScript.CreateObject("iTunes.Application");
var n = parseInt(thePersistentId);
var high = (do something with n?);
var low = (do something else with n?);
iTunes.LibraryPlaylist.tracks.ItemByPersistentId(high,low).play();
【问题讨论】:
-
您是否有特定的示例 ID 以便可以试用和测试代码?
-
iTunes 中的持久 ID 示例:F040658A7687B12D、9CA9C40E86124232、1489F2F36DA31F95(它们都是 16 个字符)
标签: javascript itunes hex