【发布时间】:2012-09-21 22:14:34
【问题描述】:
我的应用程序正在通过脚本桥控制 iTunes。 其他应用程序可以选择一系列歌曲并按顺序播放它们,而无需创建播放列表。我在网上搜索了示例并将 iTunes.h 文件红色了十几次,但我没有找到解决方案。 也许你们中的某个人可以帮助我吗?
在此处查看 iTunes 头文件: iTunes.h
谢谢!
【问题讨论】:
标签: cocoa queue itunes scripting-bridge
我的应用程序正在通过脚本桥控制 iTunes。 其他应用程序可以选择一系列歌曲并按顺序播放它们,而无需创建播放列表。我在网上搜索了示例并将 iTunes.h 文件红色了十几次,但我没有找到解决方案。 也许你们中的某个人可以帮助我吗?
在此处查看 iTunes 头文件: iTunes.h
谢谢!
【问题讨论】:
标签: cocoa queue itunes scripting-bridge
在 iTunes 10 中,如果不创建播放列表是不可能的。您正在谈论的功能(这是从其他伟大的音乐播放器中知道的)即将在 iTunes 11 中推出,该功能将于 10 月推出。 它被称为下一个。 我想只需等待几周,然后详细信息就会显示如何以编程方式进行操作
【讨论】:
您可以在自己的应用中跟踪歌曲,当您开始播放第一首歌曲时,设置一个计时器以在您开始播放的曲目的结束时间触发。当计时器触发时,开始播放下一首歌曲并重复计时器。如果没有歌曲可以播放,则向 iTunes 发出停止命令。
@property (retain, nonatomic) NSMutableArray *songsToPlay;
- (void)playNext:(NSTimer *)aTimer {
if (songsToPlay.count) {
iTunesTrack *track = songsToPlay.firstObject;
[track playOnce:YES];
[NSTimer scheduledTimerWithTimeInterval:track.finish - 1.0 target:self selector:@selector(playNext:) userInfo:nil repeats:NO];
[songsToPlay removeObjectAtIndex:0];
}
else {
[iTunes stop];
}
}
您可以在某个地方为songToPlay 播放 iTunesTrack 歌曲,然后致电[self playNext:nil]。
【讨论】: