在 4:3 中调用 UIImagePickerController 而不是 16:9 (Xcode) (Swift)
Calling UIImagePickerController in 4:3 instead of 16:9 (Xcode) (Swift)
我正在通过 UIImagePickerController
和 iPhone 6s / 6s Plus 录制视频,它在录制时以 16:9 显示(我想是通过裁剪模拟的)但是当视频 returns 和布局,它 4:3 显示视频的左右超出取景器的部分。
如何让 UIImagePickerController
在相机模式下显示为真正的 4:3 模式,而不是默认的假 16:9 模式?
我目前是这样称呼它的:
// IB: Record Button Control
@IBAction func recordVideo(_ sender: UIButton) {
if (UIImagePickerController.isSourceTypeAvailable(.camera)) {
self.selectedButton = sender
self.imagePicker.sourceType = .camera
self.imagePicker.mediaTypes = [kUTTypeMovie as String]
self.imagePicker.allowsEditing = false
self.imagePicker.videoMaximumDuration = 30.0
self.imagePicker.delegate = self
self.present(self.imagePicker, animated: true, completion: {})
} else {
CreateAlert(controller: self, title: "No Camera", message: "Camera is not accessible")
}
}
想通了这一点。对于任何寻找答案的人来说,如果您不指定 videoQuality
.
,它会默认执行此操作
只要您输入 videoQuality
枚举,它就会 returns 以正确的方式输入。所以我添加了:self.imagePicker.videoQuality = .typeMedium
,它返回了视频16:9。
有关 Apple 文档 的不同视频质量类型:
我正在通过 UIImagePickerController
和 iPhone 6s / 6s Plus 录制视频,它在录制时以 16:9 显示(我想是通过裁剪模拟的)但是当视频 returns 和布局,它 4:3 显示视频的左右超出取景器的部分。
如何让 UIImagePickerController
在相机模式下显示为真正的 4:3 模式,而不是默认的假 16:9 模式?
我目前是这样称呼它的:
// IB: Record Button Control
@IBAction func recordVideo(_ sender: UIButton) {
if (UIImagePickerController.isSourceTypeAvailable(.camera)) {
self.selectedButton = sender
self.imagePicker.sourceType = .camera
self.imagePicker.mediaTypes = [kUTTypeMovie as String]
self.imagePicker.allowsEditing = false
self.imagePicker.videoMaximumDuration = 30.0
self.imagePicker.delegate = self
self.present(self.imagePicker, animated: true, completion: {})
} else {
CreateAlert(controller: self, title: "No Camera", message: "Camera is not accessible")
}
}
想通了这一点。对于任何寻找答案的人来说,如果您不指定 videoQuality
.
只要您输入 videoQuality
枚举,它就会 returns 以正确的方式输入。所以我添加了:self.imagePicker.videoQuality = .typeMedium
,它返回了视频16:9。
有关 Apple 文档 的不同视频质量类型: