我想在我按下按钮时自动从我的 iphone 设备录制视频,录制 15 秒后视频应该停止,我想将视频保存到目录中。
我曾尝试使用 imagepicker,但为此我们需要手动按下开始按钮来开始视频录制。我希望当用户按下按钮时相机应该开始重新编码视频。
谢谢。
您可以通过使用UIImagePickerController
自身来做到这一点。您提到您需要手动按下开始按钮,但这是不对的。
有可用于通过代码捕获视频的实例方法。startVideoCapture
和stopVideoCapture
。
在按钮的单击上实例化 imagePicker 对象.. 然后调用以下方法。
[yourImagePickerObject startVideoCapture];
之后,您可以在 15 dec 延迟后调用计时器或执行选择器,然后可以调用
[yourImagePickerObject stopVideoCapture];
此方法将调用您的图像选择器的委托方法– imagePickerController:didFinishPickingMediaWithInfo:
您可以在此处处理媒体并将其写入文档目录。
更新
单击按钮时,您将显示图像选择器并调用该startVideoCapture
方法,即使这也不起作用,而只是尝试在 presentModalView 行之后关注按钮的事件:
int64_t delayInSeconds = 1.0;
dispatch_time_t popTime = dispatch_time(DISPATCH_TIME_NOW, delayInSeconds * NSEC_PER_SEC);
dispatch_after(popTime, dispatch_get_main_queue(), ^(void){
[yourImagePickerobj startVideoCapture];
[objImgPicker performSelector:@selector(stopVideoCapture) withObject:nil afterDelay:15];
});
您可以尝试更改 delayInSeconds 的值。希望这可以帮助 :)
可能设置VideoMaximumuration
为 15 秒将解决您的问题
[yourImagePickerObject setVideoMaximumDuration:15];