首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Swift ImagePicker StartVideoCapture

Swift ImagePicker StartVideoCapture
EN

Stack Overflow用户
提问于 2017-03-26 08:41:02
回答 2查看 862关注 0票数 0

我正在做一个涉及视频捕获的项目。我本质上是想通过编程来捕获视频,这意味着我不希望任何摄像头或任何东西弹出;我只希望在按下两个按钮的时间之间录制视频。

我定义了imagepicker,并在按下按钮时启动了视频捕获:

代码语言:javascript
复制
if (UIImagePickerController.isSourceTypeAvailable(.camera)) {
        imagePicker.sourceType = .camera
        imagePicker.cameraDevice = UIImagePickerControllerCameraDevice.front
        imagePicker.allowsEditing = false
        imagePicker.delegate = self
    }
    imagePicker.startVideoCapture()
    print("Capture started")

后来,我停止了视频采集:

代码语言:javascript
复制
imagePicker.stopVideoCapture()
print("capture over")

我知道这应该调用我的方法:

代码语言:javascript
复制
func imagePickerController(_ picker: UIImagePickerController, didFinishPickingMediaWithInfo info: [String : Any]) {
    print("captured")
}

由于某些原因,我的视频没有开始录制,因为布尔型imagepicker.startvideocapture返回false。我完全不明白为什么会发生这种情况;有人能提供一些建议吗?

EN

回答 2

Stack Overflow用户

发布于 2017-03-26 08:52:20

根据文档,在某些情况下,startVideoCapture会返回一个false值:

此方法可能会由于各种原因返回值false,其中包括以下原因:

电影捕获已在进行中

设备不支持电影捕获

设备的磁盘空间不足

首先要检查的是是否发生了上述任何一种情况。而且你是在设备上测试,而不是在模拟器上,对吗?

票数 0
EN

Stack Overflow用户

发布于 2019-03-04 20:58:29

试试这个..。

代码语言:javascript
复制
imagePicker.CameraCaptureMode = .video

因为CameraCaptureMode //默认值是照片,而不是视频

也许你没有通知UIImagePickerController录制视频。所以试试下面这行

代码语言:javascript
复制
imagePicker.mediaTypes = [kUTTypeMovie as String]
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/43023652

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档