2011-05-13 2 views
2

아이폰 라이브러리에서 비디오 파일을 가져왔다. 비디오 파일이 2MB보다 크지 않아야한다는 것을 확인하고 싶습니다.비디오 파일이 2MB보다 큰지 확인하는 방법은 무엇입니까?

동영상 최대 전송 기간은 사용할 수 없습니다. 어떤 비디오라도 HD 화질이라면 1 분 길이의 비디오로도 크기가 커질 수 있습니다.

모든보기?

답변

3

urlvideo은 선택한 비디오 파일의 URL을 포함

  NSString *strurl=[urlvideo path]; 
      NSFileManager *fileManager = [NSFileManager defaultManager]; 
      NSDictionary *fileAttributes = [fileManager attributesOfItemAtPath:strurl error:nil]; 

     if(fileAttributes != nil) 
      { 
       NSString *fileSize = [fileAttributes objectForKey:NSFileSize]; 
       //NSLog(@"File size: %@ kb", fileSize);    
       if ([fileSize intValue] > 2000000) {      
        UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"Error" message:@"File size greater than 2MB.Please select another video file." delegate:nil cancelButtonTitle:@"OK" otherButtonTitles:nil]; 
        [alert show]; 
        [alert release]; 
       }    
       else { 
NSLog(@"video size less than 2 mb"); 
    } 
0
0

사용자의 iPod 또는 사진 라이브러리의 비디오 URL은 파일 URL이 아니며 MediaPlayer 또는 ALAssetLibrary가 처리하는 특수 구성표이므로 NSURL 솔루션이 작동하지 않습니다. (나는 ALAssetLibrary에 대해 긍정적이지는 않지만, MediaPlayer가 그것을 알고 있으며, 사진 라이브러리가 그것을 수행한다고 상상할 수도 있습니다.

내가 생각할 수있는 가장 좋은 해결책은 URL로 AVURLAsset을 만든 다음 트랙을 반복하고 estimatedDataRate에 트랙 지속 시간 (초)을 곱하는 것입니다. 각 트랙에 대한 대략적인 크기 추정치를 제공해야합니다.

관련 문제