我正在尝试捕捉实时麦克风音频数据。
我从AVCaptureSession
的苹果示例中获取了以下内容。
AVCaptureSession *captureSession = [[AVCaptureSession alloc] init];
AVCaptureDevice *audioCaptureDevice = [AVCaptureDevice defaultDeviceWithMediaType:AVMediaTypeAudio];
NSError *error = nil;
AVCaptureDeviceInput *audioInput = [AVCaptureDeviceInput deviceInputWithDevice:audioCaptureDevice error:&error];
if (audioInput) {
[captureSession addInput:audioInput];
}
else {
// Handle the failure.
NSLog(@"ERROR");
}
audioCaptureDevice
和audioInput
均为空。
答案 0 :(得分:3)
是的,它应该是。因为模拟器没有任何麦克风。您应该始终在真实设备上测试任何音频,视频和渲染相关任务。
查看Limitations of Testing in iOS Simulator
硬件限制虽然iOS设备的大多数功能 可以在iOS模拟器中模拟,有一些硬件功能 必须直接在设备上测试。硬件功能 无法模拟的是:
加速度计
陀螺仪
相机
接近
传感器麦克风输入
答案 1 :(得分:2)
模拟器无法将Mac麦克风作为源。您需要使用真实设备来测试它。
答案 2 :(得分:1)
模拟器没有麦克风和摄像头。因此,请点赞并继续
if let captureDevice = AVCaptureDevice.default(for: AVMediaType.audio) {
// allocate AVCaptureDevice
}