KnowledgeHub
Questions
Tags
Users
Search
Alex Rivera
|
Logout
Edit Question
Title
Body
This question is quite related to AVMutableComposition - Blank/Black frame between videos assets but as I am not using an AVAssetExportSession the answers doesn't fit my problem. I'm using an AVMutableComposition to create a video composition and I'm reading it using an AVAssetReader (I need to have the frame data, I can't use a AVPlayer) but I often have black frames between my video chunks (there is no glitch noticeable in the audio). I create my Composition as AVMutableCompositionTrack *compositionVideoTrack = [composition addMutableTrackWithMediaType:AVMediaTypeVideo preferredTrackID:kCMPersistentTrackID_Invalid]; AVMutableCompositionTrack *compositionAudioTrack = [composition addMutableTrackWithMediaType:AVMediaTypeAudio preferredTrackID:kCMPersistentTrackID_Invalid]; NSMutableArray* durationList = [NSMutableArray array]; NSMutableArray* videoList= [NSMutableArray array]; NSMutableArray* audioList= [NSMutableArray array]; for (NSInteger i = 0; i < [clips count]; i++) { AVURLAsset *myasset = [clips objectAtIndex:i]; AVAssetTrack *clipVideoTrack = [[myasset tracksWithMediaType:AVMediaTypeVideo] objectAtIndex:0]; [videoList addObject:clipVideoTrack]; AVAssetTrack *clipAudioTrack = [[myasset tracksWithMediaType:AVMediaTypeAudio] objectAtIndex:0]; [audioList addObject:clipAudioTrack]; CMTime clipDuration = [myasset duration]; CMTimeRange clipRange = CMTimeRangeMake(kCMTimeZero, clipDuration); [durationList addObject:[NSValue valueWithCMTimeRange:clipRange]]; } [compositionVideoTrack insertTimeRanges:durationList ofTracks:videoList atTime:kCMTimeZero error:nil]; [compositionAudioTrack insertTimeRanges:durationList ofTracks:audioList atTime:kCMTimeZero error:nil]; I also tried to insert each track manually in my composition but I have the same phenomenon.</p
Tags (comma-separated)
Save Edits
Cancel