相关疑难解决方法(0)

与Apple Airpods一起使用的AVAudioRecorder / AVAudioSession

我看到这里已经问过一个问题:

AirPods不能用作录音机应用程序的输入源

我已经使用此线程签入,但没有响应。

但是,有谁知道AVAudioRecorder是否/为什么不能将AirPods用作在应用中录制音频的输入设备?我通过内置麦克风以及其他BT设备(节拍器,cheapo BT扬声器电话等)进行音频记录,但是使用AirPods时我无法捕获音频。

另外,当要记录时,我将遍历可用的输入,并在这种情况下将输入强制为BT设备(请参见下面的代码)。再次适用于除AirPods之外的所有其他BT设备。

有什么想法吗?关于我们在这里做错什么的任何指导都是很棒的。这真令人发疯。

NSError *error;
AVAudioSession *audioSession = [AVAudioSession sharedInstance];
[audioSession setCategory:AVAudioSessionCategoryRecord withOptions:audioSession.categoryOptions|AVAudioSessionCategoryOptionAllowBluetooth
                    error:&error];
[audioSession setActive:YES error:nil];

NSLog(@"Data sources: %@", [audioSession availableInputs]);
// Data sources: ("<AVAudioSessionPortDescription: 0x1706071b0, type = MicrophoneBuiltIn; name = iPhone Microphone; UID = Built-In Microphone; selectedDataSource = Bottom>",
"<AVAudioSessionPortDescription: 0x170611bd0, type = BluetoothHFP; name = Dan\U2019s AirPods; UID = 50:32:37:E0:90:37-tsco; selectedDataSource = (null)>"    

for (AVAudioSessionPortDescription *desc in [audioSession availableInputs]){
    NSLog(@"Port desc: %@", desc.portType);
    // Loop: 1) Port desc: MicrophoneBuiltIn
    //       2) Port desc: …
Run Code Online (Sandbox Code Playgroud)

bluetooth objective-c ios avaudiosession

5
推荐指数
1
解决办法
2995
查看次数

标签 统计

avaudiosession ×1

bluetooth ×1

ios ×1

objective-c ×1