3

我在网上找了一段时间,还没有找到这个问题的答案。我希望通过 iPhone 的耳塞从蓝牙麦克风流式传输音频。我已经能够分别配置从麦克风流式传输和流式传输到耳塞,但不能同时配置。我通过配置 AudioSession 来做到这一点:

// Set up Audio Session

    NSError *error = nil;
    audioSession = [AVAudioSession sharedInstance];
    [audioSession setCategory:AVAudioSessionCategoryPlayAndRecord withOptions:AVAudioSessionCategoryOptionAllowBluetooth error:&error];
    if (error) NSLog(@"Error in Setting Audio Session Category");
    error = nil;
    [audioSession setActive:YES error:&error];
    if (error) NSLog(@"Error in Setting Audio Session Active");
    error = nil;

    for (AVAudioSessionPortDescription *mDes in audioSession.availableInputs){
        printf("Port: %s\n",[mDes.portType UTF8String]);
        if ([mDes.portType isEqualToString:AVAudioSessionPortBluetoothHFP]) {
            [audioSession setPreferredInput:mDes error:&error];
            if (error != nil)
                printf("Error Setting Preferred Input\n");
            else
                printf("Success\n");
            error = nil;
        }
    }

似乎当我设置首选输入时,它也设置了输出。我已经尝试在事后覆盖输出,但这会重置输入。有没有办法单独配置音频会话的输入和输出?

谢谢。

4

0 回答 0