How to save recorded video into photo album?

前端 未结 3 969
死守一世寂寞
死守一世寂寞 2020-11-30 09:38

Following code is to save image took from camera into photo album.

if ([mediaType isEqualToString:(NSString *)kUTTypeImage]) 
    {
         image = [info ob         


        
3条回答
  •  一生所求
    2020-11-30 10:03

    - (void)saveMovieToCameraRoll
    {
        ALAssetsLibrary *library = [[ALAssetsLibrary alloc] init];
        [library writeVideoAtPathToSavedPhotosAlbum:movieURL
                                    completionBlock:^(NSURL     *assetURL, NSError *error) {
                                        if (error)
                                            [self     showError:error];
                                        else
                                            [self     removeFile:movieURL];
    
                                            dispatch_async(movieWritingQueue, ^{
                                                recordingWillBeStopped = NO;
                                                self.recording = NO;
    
                                                [self.delegate recordingDidStop];
                                        });
                                    }];
        [library release];
    }
    

    This is the code snippet from apple example rosywriter. Sould work.

            movieURL = [NSURL fileURLWithPath:[NSString stringWithFormat:@"%@%@", NSTemporaryDirectory(), @"Movie.MOV"]];
            [movieURL retain];
    

    The above lines to create file and path for the video.

    - (void) startRecording
    {
        dispatch_async(movieWritingQueue, ^{
    
            if ( recordingWillBeStarted || self.recording )
                return;
    
            recordingWillBeStarted = YES;
    
            // recordingDidStart is called from     captureOutput:didOutputSampleBuffer:fromConnection: once the asset writer is setup
            [self.delegate recordingWillStart];
    
            // Remove the file if one with the same name already exists
            [self removeFile:movieURL];
    
            // Create an asset writer
            NSError *error;
            assetWriter = [[AVAssetWriter alloc] initWithURL:movieURL fileType:(NSString *)kUTTypeQuickTimeMovie error:&error];
            if (error)
                [self showError:error];
        }); 
    }
    

    This function is used to start recording video into that movieURL file using avassetwriter.

提交回复
热议问题