美文网首页
GPUImage滤镜第一帧黑屏问题

GPUImage滤镜第一帧黑屏问题

作者: forever_sun | 来源:发表于2017-08-29 17:39 被阅读168次

           最近公司让给拍摄加美颜滤镜,自热而然就开始了GPUImage之旅,集成好运行美颜效果也不错,但点击时候发现闪一下,当存储到本地后发现录制开始那一瞬间是黑屏。

    - - - - - - - - - - 以下是解决方法 - - - - - - - - - -

    在 GPUImageMovieWriter.m 中添加以下代码

    static BOOL allowWriteAudio =NO;

    - (void)startRecording;

    {

    allowWriteAudio=NO; // 添加这句

    ... ...}

    - (void)processAudioBuffer:(CMSampleBufferRef)audioBuffer;

    {

    if(!allowWriteAudio) {// 添加这个判断

    return;

    }

    ... ...

    }

    elseif(self.assetWriter.status==AVAssetWriterStatusWriting)

    {

    ... ...

    if(![assetWriterPixelBufferInputappendPixelBuffer:pixel_bufferwithPresentationTime:frameTime])

    NSLog(@"Problem appending pixel buffer at time: %@",CFBridgingRelease(CMTimeCopyDescription(kCFAllocatorDefault, frameTime)));

    allowWriteAudio=YES;// 添加这句

    }

    最后在你创建美颜相机方法后面加一句

    [_videoCamera addAudioInputsAndOutputs];

    over!

    当然,最好不要直接修改框架里面的东西哦!否则更新后就无法维护了😆 ,自己fork去吧,要不就用我的

    pod'GPUImage', :git =>'https://github.com/sunhua163/GPUImage.git'

    相关文章

      网友评论

          本文标题:GPUImage滤镜第一帧黑屏问题

          本文链接:https://www.haomeiwen.com/subject/oaxhlttx.html