iPhone: Как воспроизвести звук поверх звука iPod? - PullRequest
1 голос
/ 29 мая 2011

Я пытаюсь воспроизвести звук поверх музыки iPod, но когда я вхожу в свое приложение, звук iPod автоматически отключается. Я попробовал:

UInt32 sessionCategory = kAudioSessionCategory_AmbientSound; 
        AudioSessionSetProperty (kAudioSessionProperty_AudioCategory,                                 
                                 sizeof (sessionCategory),
                                 &sessionCategory                                 
                                 );

Но, вероятно, из-за того, что я использую RemoteIO / Audio Units для воспроизведения моего звука, это не имеет никакого эффекта (не уверен, что это причина, но это точно ничего не делает ... звук все еще останавливается)

Я что-то упустил?

Ответы [ 3 ]

3 голосов
/ 29 мая 2011

По какой-то причине код в вопросе не работает, однако это работает:

[[AVAudioSession sharedInstance] setCategory: AVAudioSessionCategoryAmbient error: nil];
1 голос
/ 29 мая 2011

AudioSessionSetProperty возвращает ошибку, вы ее проверяете?

Возможно, вы забыли вызвать AudioSessionInitialize, что вам не нужно делать с оболочкой AVFoundation.

0 голосов
/ 20 апреля 2017
@property (nonatomic, strong) AVAudioPlayer * avAudioPlayer;


NSString *zeroAudioPath = [[NSBundle mainBundle] pathForResource:@"customSound" ofType:@"wav"];
NSURL *file = [[NSURL alloc] initFileURLWithPath:zeroAudioPath];
AVAudioPlayer *audioPlayer = [[AVAudioPlayer alloc] initWithContentsOfURL:file
                                                                 error:nil];
self.avAudioPlayer = audioPlayer;
self.avAudioPlayer.delegate = self;
[_zeroAudioPlayer prepareToPlay];
AVAudioSession *session = [AVAudioSession sharedInstance];
[session setCategory:AVAudioSessionCategoryPlayback error:&error];
[_zeroAudioPlayer play];

Надеюсь, это поможет вам.

...