Обрезка видео ALAsset с использованием UIVideoEditorController
У меня есть объект ALAsset типа видео. Я хотел бы обрезать это видео с помощью UIVideoEditorController. Ниже приведен фрагмент кода:
UIVideoEditorController *videoEditorController = [[UIVideoEditorController alloc] init];
videoEditorController.delegate = self;
videoEditorController.videoMaximumDuration = 0.0;
videoEditorController.videoQuality = UIImagePickerControllerQualityTypeHigh;
videoEditorController.videoPath = @"assets-library://asset/asset.MOV?id=1000000005&ext=MOV";
[inViewController presentModalViewController:videoEditorController animated:YES];
self.videoEditController = videoEditorController;
[videoEditorController release];
Когда пользовательский интерфейс UIVideoEditorController нажат, я получаю сообщение об ошибке "Этот фильм не может быть воспроизведен". В чем здесь проблема?
2 ответа
videoEditorController.videoMaximumDuration = 0.0;
? Ты имел ввиду - videoEditorController.videoMaximumDuration = 1000.0;
?
Вы тестируете видео на iPhone 3Gs или iPhone 4? Убедитесь, что видео совместимо для воспроизведения на 3G. Я уверен, что это только проблема.
Ниже приведен фрагмент кода....
ALAssetsLibrary *library = [[ALAssetsLibrary alloc] init];
NSString *filePathString = [[NSBundle mainBundle] pathForResource:@"Don2" ofType:@"m4v"];
NSURL *filePathURL = [NSURL fileURLWithPath:filePathString isDirectory:NO];
if ([library videoAtPathIsCompatibleWithSavedPhotosAlbum:filePathURL]) {
[library writeVideoAtPathToSavedPhotosAlbum:filePathURL completionBlock:^(NSURL *assetURL, NSError *error){
if (error) {
// TODO: error handling
NSLog(@"Error");
} else {
// TODO: success handling
}
}];
}
[library release];