일부 저작물 유형의 경우 기간은 대략적인 값입니다. 당신이 정확한 시간을 필요로하는 경우 (극단적 인 경우이어야한다)를 사용
NSDictionary *options = @{AVURLAssetPreferPreciseDurationAndTimingKey: @YES};
AVURLAsset *videoAsset = [URLAssetWithURL:videoUrl options:options];
당신은 documentation에서 더 많은 정보를 찾을 수 있습니다. 약간의 시간이 걸릴 수 있으므로 기억할 수있는 시간을 계산하는 것은 비동기 로딩을 사용 :
[videoAsset loadValuesAsynchronouslyForKeys:@[@"duration"] completionHandler:^{
switch ([videoAsset statusOfValueForKey:@"duration" error:nil]) {
case AVKeyValueStatusLoaded:
Float64 time = CMTimeGetSeconds(videoAsset.duration);
// ...
break;
default:
// other cases like cancellation or fail
break;
}
}];
당신은 비디오에서 AVFoundation
API를 사용하여 좀 더 도움말을 찾을 수 Discovering AV Foundation - WWDC 2010 Session 405