AVAudioPlayer через Динамики

Я получил следующий код:

- (id)init {
    if (self = [super init]) {
        UInt32 sessionCategory = kAudioSessionCategory_MediaPlayback;
        AudioSessionSetProperty(kAudioSessionProperty_AudioCategory, sizeof(sessionCategory), &sessionCategory);    

        UInt32 audioRouteOverride = kAudioSessionOverrideAudioRoute_Speaker;
        AudioSessionSetProperty (kAudioSessionProperty_OverrideAudioRoute,sizeof (audioRouteOverride),&audioRouteOverride);

        [[AVAudioSession sharedInstance] setDelegate:self];
        [[AVAudioSession sharedInstance] setCategory:AVAudioSessionCategoryPlayAndRecord error:nil];
        [[AVAudioSession sharedInstance] setActive:YES error:nil];
    }
    return self;
}

Но так или иначе звук не хочет выходить из динамиков, кто-то может видеть то, что я делаю неправильно?

Код, который я использую для проигрывания:

AVAudioPlayer *player = [[AVAudioPlayer alloc] initWithContentsOfURL:soundFilePathURL error:nil];
[player prepareToPlay];
[player setVolume:1.0];
[player play];
5
задан Mark 18 April 2010 в 02:12
поделиться

2 ответа

Я использовал структуру AudioToolbox, поэтому я инициализировал свой аудиосеанс следующим образом:

AudioSessionInitialize(NULL, NULL, NULL, NULL);

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

UInt32 sessionCategory = kAudioSessionCategory_MediaPlayback;
OSStatus err = AudioSessionSetProperty(kAudioSessionProperty_AudioCategory,
                                       sizeof(sessionCategory),
                                       &sessionCategory);
AudioSessionSetActive(TRUE);
if (err) {
    NSLog(@"AudioSessionSetProperty kAudioSessionProperty_AudioCategory failed: %d", err);
}
2
ответ дан 18 December 2019 в 09:48
поделиться

Ваш код для воспроизведения звука выглядит правильным, и нет причин, по которым вам нужно использовать AudioToolbox. Одна вещь, в которой вы, возможно, захотите убедиться, - это то, что вы используете поддерживаемые аудиоформаты. (Я лично добился успеха с MP3 и WAV)

Кроме того, не могли бы вы поделиться с нами своим кодом, как получить URL-адрес вашего звукового файла?

1
ответ дан 18 December 2019 в 09:48
поделиться
Другие вопросы по тегам:

Похожие вопросы: