I was wondering how to make a time range for AVAssetExportSession
from time stamps such as:
NSTimeInterval start = [[NSDate date] timeIntervalSince1970];
NSTimeInterval end = [[NSDate date] timeIntervalSince1970];
The code that I am using for my export session is as follows:
AVAssetExportSession *exportSession = [[AVAssetExportSession alloc] initWithAsset:asset presetName:AVAssetExportPresetHighestQuality];
exportSession.outputURL = videoURL;
exportSession.outputFileType = AVFileTypeQuickTimeMovie;
exportSession.timeRange = CMTimeRangeFromTimeToTime(start, end);
Thanks for your help!
The property
timeRange
inAVAssetExportSession
allows you to do a partial export of an asset specifying where to start and which duration. If not specified it'll export the whole video, in other words, it'll start at zero and will export the total duration.Both start and duration should be expressed as
CMTime
.For instance, if you want to export the first half of the asset:
or the second half:
or 10 seconds at the end:
Check
CMTime
reference for other ways to calculate the exact timing you need.