仅设置AVAudioSession输出

时间:2013-10-30 15:59:33

标签: audio port avaudiosession

我一直在网上寻找一段时间,但尚未找到这个问题的答案。我希望通过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;
        }
    }

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

感谢。

0 个答案:

没有答案