码迷,mamicode.com
首页 > 其他好文 > 详细

Incomplete filter FBO: 36055

时间:2018-10-23 10:53:20      阅读:409      评论:0      收藏:0      [点我收藏+]

标签:first   lse   recording   proc   view   amp   width   code   .com   

GPUimage
前几帧是黑色的;
背景色是蓝色的;
静音录制崩溃;
push 的时间延迟;

前几帧是黑色的,
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/1276

静音的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;
        }

Incomplete filter FBO: 36055

标签:first   lse   recording   proc   view   amp   width   code   .com   

原文地址:https://www.cnblogs.com/guligei/p/9834881.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!