AVAssetExportSession No se puede crear el file Error -12115

Por alguna razón siempre recibo este error:

Error Domain = NSURLErrorDomain Code = -3000 "No se puede crear el file" UserInfo = {NSLocalizedDescription = No se puede crear el file, NSUnderlyingError = 0x1321dd730 {Error Domain = NSOSStatusErrorDomain Code = -12115 "(null)"}}

al intentar exportar una AVSession a m4a. Esto funciona bien en mi dispositivo de compañeros de trabajo, sin embargo, falla cada vez en mi iPad Air 2 (iOS 9.1), así como en nuestro QA iPad Mini 3.

- (void)processSourceVideoFile:(NSURL *)mediaURL completion:(void (^)(BOOL success))completion { [self showProgressOverlay]; NSString *outputFileType = AVFileTypeMPEG4; __block NSString *videoID = nil; if (self.videoAttachment == nil) { [MagicalRecord saveUsingEditContextWithBlockAndWait:^(NSManagedObjectContext *localContext) { self.videoAttachment = [SPXAttachment MR_createEntityInContext:localContext]; self.videoAttachment.uuid = [NSString uuid]; self.videoAttachment.clientCreatedAt = [NSDate date]; videoID = self.videoAttachment.uuid; }]; } else { videoID = self.videoAttachment.uuid; } self.videoAttachment = [SPXAttachment MR_findFirstByAttribute:@"uuid" withValue:videoID]; NSString *targetPath = self.videoAttachment.filePath; DDLogVerbose(@"Exporting Video to %@", targetPath); if ([[NSFileManager defaultManager] fileExistsAtPath:targetPath]) { [[NSFileManager defaultManager] removeItemAtPath:targetPath error:nil]; } AVAsset *video = [AVAsset assetWithURL:mediaURL]; self.exportSession = [AVAssetExportSession exportSessionWithAsset:video presetName:AVAssetExportPreset640x480]; self.exportSession.outputFileType = outputFileType; self.exportSession.outputURL = [NSURL fileURLWithPath:targetPath]; [self.exportSession exportAsynchronouslyWithCompletionHandler:^{ dispatch_async(dispatch_get_main_queue(), ^{ [self hideProgressOverlay]; }); switch (self.exportSession.status) { case AVAssetExportSessionStatusFailed: DDLogError(@"Video Export Failed: %@", self.exportSession.error); completion(NO); break; case AVAssetExportSessionStatusCancelled: DDLogVerbose(@"Video Export Cancelled"); break; case AVAssetExportSessionStatusCompleted: { DDLogVerbose(@"Video Export Complete for %@", targetPath); BOOL dir; if ([[NSFileManager defaultManager] fileExistsAtPath:targetPath isDirectory:&dir]) { DDLogVerbose(@"FILE IS THERE MOFO!!"); } completion(YES); } break; default: break; } }]; } 

URL de origen: file: ///private/var/mobile/Containers/Data/Application/BD85BA54-5B3D-4533-A142-C2A30F373814/tmp/capture-T0x12fe1e8e0.tmp.CbksL4/captunetworkingvideo.MOV

URL de salida: file: /// var / mobile / Containers / Data / Application / BD85BA54-5B3D-4533-A142-C2A30F373814 / Library / Files / 59124681-ba1a-4453-8078-9ca6ac3088bf / attachments / 454dd782-6b14-44cd- 9f4e-84664908388b

Intenté agregar una extensión de file (.mp4) a la URL de salida y eso no ayudó. He buscado alnetworkingedor de nada bastante coincide con este escenario.

Cualquier ayuda apreciada!

Asegúrese de que la ruta de la URL de salida tenga la extensión de file .mp4 al final.