0

我正在使用 NSSound,我可以让声音正确播放/暂停,但由于某种原因,我无法让 currentTime 方法返回零以外的任何内容。

这是我遇到问题的代码:

NSSound* sound = [[NSSound alloc] initWithContentsOfFile:@"path_to_sound.mp3" byReference:NO];
[sound play];
sleep(1);
NSLog(@"Current time: %f", [sound currentTime]);

声音播放但 NSLog 始终返回零。有任何想法吗?

4

2 回答 2

0

NSSound默认情况下使用默认声音设备。您可以使用NSSoundsetPlaybackDeviceIdentifier:的方法更改输出设备。 看看这个以及如何让音频设备 UID 传递到 NSSound 的 setPlaybackDeviceIdentifier:以获取声音输出设备的唯一标识符

于 2012-07-24T07:22:15.217 回答
0

我没有机器来测试东西,但我希望您可以从以下内容中学到您需要的东西:

NSLog(@"Playback on %@, current time: %@ / %@",
   [sound playbackDeviceIdentifier], [sound currentTime], [sound duration]);
于 2012-07-24T08:40:17.160 回答