Estoy usando UIImagePickerController
para grabar un video con el sourceType
establecido en UIImagePickerControllerSourceTypeCamera
.UIImagePickerController con cámara fuente: el recorte de video no funciona
He configurado allowsEditing
en true para que el video pueda editarse antes de que el selector vuelva. Pero después de editar el video usando la interfaz de recorte y presionar "Seleccionar", solo recupero la grabación original en el delegado, no la versión recortada. ¿Qué estoy haciendo mal? Estoy usando iPhone OS 3.1.3. Recuerdo que esto solía funcionar en una versión anterior, pero parece estar fallando en el último sistema operativo. Cualquier ayuda es apreciada?
Por cierto, confirmé que si la fuente del video es UIImagePickerControllerSourceTypeSavedPhotosAlbum
, el recorte funciona en la versión 3.1.3. Así que recorte con la fuente ya que la cámara está fallando. Curiosamente con el álbum de la cámara/álbum de fotos como fuente, aparece el botón "Elegir" y poco después de hacer clic en él, el controlador muestra un mensaje que dice "El video se está recortando ...". No recibo este mensaje cuando uso la fuente de la cámara.
Aquí hay un fragmento del código que estoy usando para grabar un video usando la fuente de la cámara.
- (void) recordVideo {
UIImagePickerController *picker = [[UIImagePickerController alloc] init];
picker.delegate = self;
picker.allowsEditing = YES;
picker.sourceType = UIImagePickerControllerSourceTypeCamera;
picker.mediaTypes = [NSArray arrayWithObject:(NSString *)kUTTypeMovie];
picker.videoQuality = UIImagePickerControllerQualityTypeHigh;
[self presentModalViewController:picker animated:YES];
[picker release];
}
Mi aplicación delegado es el siguiente:
- (void)imagePickerController:(UIImagePickerController *)picker
didFinishPickingMediaWithInfo: (NSDictionary *)info {
[picker dismissModalViewControllerAnimated:YES];
self.videoPath = [[info objectForKey:UIImagePickerControllerMediaURL] path];
...
}
Muchas gracias,
Kris.
Parece intencionado: una vez que el usuario edita un elemento elegido, como recortar una imagen o recortar una película, la URL continúa apuntando a la versión original del artículo elegido. http://developer.apple.com/library/ios/#documentation/uikit/reference/UIImagePickerControllerDelegate_Protocol/UIImagePickerControllerDelegate/UIImagePickerControllerDelegate.html#//apple_ref/doc/uid/TP40007069 – James
No, no es tan simple. Al elegir una imagen, se devuelven tanto las imágenes editadas como las originales. Y al seleccionar un video con sorceType = UIImagePickerControllerSourceTypeSavedPhotosAlbum, se devuelve un video recortado. Observacionalmente, cada vez que se devuelve un video sin recortar, el dict también contiene claves @ "_ UIImagePickerControllerVideoEditingStart" y @ "_ UIImagePickerControllerVideoEditingEnd" con el tiempo recortado de inicio y finalización (en segundos). Supongo que tenemos que buscar estos y hacer el recorte nosotros mismos (si está presente) – wombat57