티스토리 뷰

반응형


MOV확장자로 저장된 파일을 mp4형식으로 저장하던 중 문제가 발생하였다.

에러 메시지는 다음과 같다.

"The requested URL was not found on this server."


- (void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary *)info

NSURL *url =  [info objectForKey:UIImagePickerControllerMediaURL]

[self convertVideoMp4:[url absoluteString]];


info에 넘어오는 URL을 통하여 바로 mp4로 저장하려 하였으나 에러가 발생하였다.

아무래도 저장 시 넘어오는 UIImagePickerControllerMediaURL 경로의 패스를 가져다 쓸 경우 해당 경로에 접근할 수 없는것 같다.


- (void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary *)info

NSURL *url =  [info objectForKey:UIImagePickerControllerMediaURL];

NSURL *videoURL = [info objectForKey:UIImagePickerControllerMediaURL];

NSData *videoData = [NSData dataWithContentsOfURL:videoURL];

NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);

NSString *documentsDirectory = [paths objectAtIndex:0];

NSString *tempPath = [documentsDirectory stringByAppendingFormat:

[NSString stringWithFormat:@"/%f.mov",[Util getTimeStamp]]];

[videoData writeToFile:tempPath atomically:YES];

[self convertVideoMp4: tempPath];


다음과 같이 우선 파일을 저장한 후 저장된 경로로 다시 파일을 mp4로 변환할 경우 저장이 되는것을 확인하였다.

참고로 MOV, mp4 둘다 저장할 경우 파일 용량은 같다.

반응형
댓글
반응형