GPUimage
前幾幀是黑色的;
背景色是藍色的;
靜音錄製崩潰;
push 的時間延遲;git
前幾幀是黑色的, https://github.com/BradLarson/GPUImage/issues/1255 static BOOL allowWriteAudio = NO; - (void)startRecording; { ... allowWriteAudio = NO; } - (void)processAudioBuffer:(CMSampleBufferRef)audioBuffer; { if (!allowWriteAudio) { return; } ... } - (void)newFrameReadyAtTime:(CMTime)frameTime atIndex:(NSInteger)textureIndex; { ... if (![assetWriterPixelBufferInput appendPixelBuffer:pixel_buffer withPresentationTime:frameTime]) NSLog(@"Problem appending pixel buffer at time: %@", CFBridgingRelease(CMTimeCopyDescription(kCFAllocatorDefault, frameTime))); allowWriteAudio = YES; //< add this ... }
push 的時間延遲bug //只有一段視頻 [KJUtility hideProgressDialog]; NSDictionary *dict = self.kj_videoArray.firstObject; self.kj_outPath = dict[@"path"]; [self saveVideoToLibrary]; WS(weakSelf) if (self.kjFileDelegate && [self.kjFileDelegate respondsToSelector:@selector(kj_videoFileCompleteLocalPath:)]) { NSLog(@"一段視頻:.........%@",self.kj_outPath); [self.kjFileDelegate kj_videoFileCompleteLocalPath:self.kj_outPath]; } else { [self saveVideoToLibrary]; }
藍邊的bug // kj_movieWriter = [[GPUImageMovieWriter alloc] initWithMovieURL:videoURL size:CGSizeMake(SCREEN_WIDTH, SCREEN_HEIGHT)]; kj_movieWriter = [[GPUImageMovieWriter alloc] initWithMovieURL:videoURL size:CGSizeMake(floor(1080), floor(1920))];
https://github.com/BradLarson/GPUImage/issues/1276github
靜音的bug AVURLAsset *kj_videoAsset = [[AVURLAsset alloc] initWithURL:tmpUrl options:kj_options]; if ([[kj_videoAsset tracksWithMediaType:AVMediaTypeAudio] count] > 0){ kj_movieComposition.audioEncodingTarget = kj_movieWriter; } else {//no audio kj_movieComposition.audioEncodingTarget = nil; } // kj_movieComposition.audioEncodingTarget = kj_movieWriter;
if ([[anAsset tracksWithMediaType:AVMediaTypeAudio] count] > 0){ _movieFile.audioEncodingTarget = _movieWriter; } else {//no audio _movieFile.audioEncodingTarget = nil; }