Я пытаюсь воспроизвести звук, используя AVAudioPlayer
на os x (не iOS!). Я использую следующий код:AVAudioPlayer на OS X не играет никакой звук
AVAudioPlayer *player;
NSString *soundFilePath = [[NSBundle mainBundle] pathForResource:name ofType:@"mp3"];
NSURL *soundFileURL = [NSURL fileURLWithPath:soundFilePath];
player = [[AVAudioPlayer alloc] initWithContentsOfURL:
soundFileURL error:&err];
if(err){
NSLog(@"Failed with reason: %@", [err localizedDescription]);
}
else{
player.delegate = self;
player.numberOfLoops = -1;
player.currentTime = 0;
player.volume = 1.0;
[player play];
}
Все в порядке, и игрок вызывает функцию воспроизведения без ошибок. Однако после этого я не слышу никакого звука. Я уверен, что мой аудиофайл в порядке, потому что я смог воспроизвести его, используя класс NSSound
. Причина, по которой я хочу использовать AVAudioPlayer
, заключается в том, что когда я использую класс NSSound
, и я играю его в цикле, между ними короткая пауза, и поэтому я хотел попробовать AVAudioPlayer
.
Определите игрока как свойство, чтобы оно не испарилось после того, как ваш метод заканчивается? –
Спасибо, много. Вот и все: если вы напишете свой комментарий в качестве ответа, я соглашусь с ним. – Wojtek