Swift - ¿Cómo grabar video en formato MP4 con UIImagePickerController?
Estoy creando una aplicación en la que necesito grabar videos y subirlos a un servidor. Ahora mi proyecto también tiene una versión de Android. Para admitir la versión de Android, tengo que grabar los videos en formato mp4. Seguíesta tutorial para configurar el tipo de medio UIImagePicker en formato de películaimagePicker.mediaTypes = [kUTTypeMovie as String]
losUIImagePickerController
es perfecto para mi requerimiento y lo único que necesito cambiar es su formato de guardado en mp4. Lo intentékUTTypeMPEG4
enmediaTypes
pero arroja un error en el tiempo de ejecución sin descripción del error.
Esta es mi función de captura de video
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
}
Estoy usando Swift 2.2 y Xcode 8 conUse Legacy swift Language version = Yes
Cualquier solución alternativa también es apreciada. Gracias por adelantado.
EDITAR: descubrí que no hay ningún método para grabar videos directamente en formato mp4 en forma rápida. solo se puede convertir al formato requerido desde el formato mov de quicktime de apple.