2017-03-29 4 views
1

J'essaie de capturer des données audio de microphone en direct.AVCaptureDevice est toujours null sur le simulateur

J'ai pris ce qui suit à partir de l'exemple Apple pour 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 et audioInput sont tous deux nuls.

+0

J'EPROUVE même après la mise à niveau à iOS 10.3. L'UIImagePickerControllerOriginalImage retourne toujours null. J'essaie même de mettre en œuvre "AVCaptureDevice.RequestAccessForMediaTypeAsync (AVMediaType.Video)" et "Ajout de NSPhotoLibraryUsageDescription dans info.plist" mais toujours pas de chance – pampi

Répondre

1

Le simulateur ne peut pas prendre le microphone Mac comme source. Vous devez utiliser un périphérique réel pour le tester.

1

Oui, ça devrait l'être. Parce que le simulateur n'a pas de microphone. Vous devriez toujours tester toute tâche liée à l'audio, à la vidéo et au rendu sur un périphérique réel.

Jetez un oeil sur Limitations of Testing in iOS Simulator

Limitations matérielles Alors que la plupart des fonctionnalités des appareils iOS peut être simulé dans iOS Simulator, il y a quelques fonctionnalités matérielles qui doivent être testés directement sur un périphérique. Le matériel dispose que ne peut être simulé sont:

Accéléromètre

Gyroscope

Caméra

Proximité

capteur Microphone Entrée

+0

Semble qu'il peut être plutôt fastidieux de vérifier les résultats spécifiques ou de vérifier que cela fonctionne réellement. Mais si je n'ai pas d'autre choix, je suppose que c'est ce que j'ai. – zyeek