如何使用AVCaptureDeviceDiscoverySession获取前置摄像头,后置摄像头和音频

arauter:

在iOS 10发布之前,我使用以下代码获取录像机的视频和音频捕获:

 for device in AVCaptureDevice.devices()
 {
     if (device as AnyObject).hasMediaType( AVMediaTypeAudio )
     {
         self.audioCapture = device as? AVCaptureDevice
     }
     else if (device as AnyObject).hasMediaType( AVMediaTypeVideo )
     {
         if (device as AnyObject).position == AVCaptureDevicePosition.back
         {
             self.backCameraVideoCapture = device as? AVCaptureDevice
         }
         else
         {
             self.frontCameraVideoCapture = device as? AVCaptureDevice
         }
     }
 }

当iOS 10最终发布时,我在运行代码时收到以下警告。请注意,我的录像机仍可以正常运行约2周。

在iOS 10.0中不建议使用“ devices()”:改用AVCaptureDeviceDiscoverySession。

今天早上运行代码时,录像机停止工作。xCode8没有给我任何错误,但是相机捕获的PreviewLayer是完全白色的。当我开始记录时,出现以下错误:

错误域= AVFoundationErrorDomain代码= -11800“操作无法完成” UserInfo = {NSLocalizedDescription =操作无法完成,NSUnderlyingError = 0x17554440 {Error Domain = NSOSStatusErrorDomain Code = -12780“(null)”},NSLocalizedFailureReason = An发生未知错误(-12780)}

我认为这与我正在使用不赞成使用的方法有关AVCaptureDevice.devices()因此,我想知道如何使用它AVCaptureDeviceDiscoverySession呢?

提前谢谢你的帮助!

born_stubborn:

您可以通过以下方式获得前置摄像头:

AVCaptureDevice.default(.builtInWideAngleCamera, for: AVMediaType.video, position: .front)

后置摄像头:

AVCaptureDevice.default(.builtInWideAngleCamera, for: AVMediaType.video, position: .back)

和麦克风:

AVCaptureDevice.default(.builtInMicrophone, for: AVMediaType.audio, position: .unspecified)

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如何使用Java访问前置/后置摄像头(Webcam-Capture)

将后置摄像头和前置摄像头同时用于同一MediaRecorder会话Camera2API

UIImagePickerController中的前置摄像头

后置和前置摄像头的AVCaptureSessionPresetHigh的分辨率是多少?

切换到前置摄像头和后置摄像头Android SurfaceView

如何使用Camera2获取前置摄像头的ID?

同时访问后置和前置摄像头

在Android中使用后置双摄像头

如何使前置摄像头捕获的视频不是反Android?

如何检测前置摄像头在Android中是否可用?

如何在Android和iOS上打开前置摄像头并使用Vue.Js拍照?

使用Circuit SDK在WebRTC通话时在Android上切换前置/后置摄像头

故意启动前置摄像头

Javascript后置摄像头

如何获得专为Android设备设计的前置和后置摄像头的百万像素?

在Glass上访问后置摄像头

即使成功切换到前置摄像头,iPhone仍显示后置摄像头的视图

AVCaptureDevice无法捕获后置摄像头

Android 2.2前置摄像头

检测使用前置摄像头还是后置摄像头

使用AVCaptureSession切换前置/后置摄像头

如何检测前置摄像头是否处于活动状态

前置摄像头上延伸的摄像头预览

前置摄像头图片的奇怪问题

ZXing自动启动前置摄像头

打开前置摄像头

如何以编程方式为android启用前置摄像头而不是后置摄像头?

React tensorflow:使用 getUserMedia 设置后置摄像头

如何在javascript中切换前置摄像头和后置摄像头?