我正在使用NSSound,我可以正确地播放/暂停声音,但由于某种原因,我无法让currentTime方法返回除零以外的任何内容。
以下是我遇到问题的代码:
NSSound* sound = [[NSSound alloc] initWithContentsOfFile:@"path_to_sound.mp3" byReference:NO];
[sound play];
sleep(1);
NSLog(@"Current time: %f", [sound currentTime]);
声音播放但NSLog始终返回零。有什么想法吗?
答案 0 :(得分:0)
NSSound
使用默认声音设备。您可以使用NSSound类的setPlaybackDeviceIdentifier:
方法更改输出设备
请查看this和how to get Audio Device UID to pass into NSSound's setPlaybackDeviceIdentifier:以获取声音输出设备的唯一标识符
答案 1 :(得分:0)
我没有机器来测试,但我希望你可以从中学到你需要的东西:
NSLog(@"Playback on %@, current time: %@ / %@",
[sound playbackDeviceIdentifier], [sound currentTime], [sound duration]);