Swift - Как записать видео в формате MP4 с помощью UIImagePickerController?
Я создаю приложение, в котором мне нужно записывать видео и загружать его на сервер. Теперь у моего проекта также есть версия для Android. Для поддержки версии Android я должен записать видео в формате MP4. Я последовал заэтот учебник для установки типа носителя UIImagePicker в формат фильмаimagePicker.mediaTypes = [kUTTypeMovie as String]
UIImagePickerController
идеально подходит для моих требований, и единственное, что мне нужно изменить, это его формат сохранения в mp4. Я старалсяkUTTypeMPEG4
вmediaTypes
но он выдает ошибку во время выполнения без описания ошибки.
Это моя функция захвата видео
func startCameraFromViewController() {
if UIImagePickerController.isSourceTypeAvailable(.Camera) == false {
return
}
viewBlack.hidden = false
presentViewController(cameraController, animated: false, completion: nil)
cameraController.sourceType = .Camera
cameraController.mediaTypes = [kUTTypeMovie as String]
//cameraController.mediaTypes = [kUTTypeMPEG4 as String]
cameraController.cameraCaptureMode = .Video
cameraController.videoQuality = .TypeMedium
if(getPurchaseId() as! Int == 0)
{
if(txtBenchMark.text?.isEmpty == false)
{
cameraController.videoMaximumDuration = NSTimeInterval(300.0)
}else{
cameraController.videoMaximumDuration = NSTimeInterval(60.0)
}
}else{
cameraController.videoMaximumDuration = NSTimeInterval(600.0)
}
cameraController.allowsEditing = false
}
Я использую Swift 2.2 и Xcode 8 сUse Legacy swift Language version = Yes
Любые альтернативные решения также приветствуются. Заранее спасибо.
РЕДАКТИРОВАТЬ: Я обнаружил, что нет никакого способа для прямой записи видео в формате mp4 в Swift. только может быть преобразован в требуемый формат из формата QuickTime Apple.