How To Fix Memory Issue in GPUImage library in SWIFT

120 views Asked by At

My app will crush showing "Terminating Due to Memory Issue" .When I am use GPUImage filter many times..How can I memory free form GPUImage. My code is bellow:

func caartonImage(ciImage:CIImage)->UIImage
{
    autoreleasepool{
        
        let uiImg = self.convert(cmage: ciImage)
        var toonFilter:SmoothToonFilter!
        toonFilter = SmoothToonFilter()
        toonFilter.blurRadiusInPixels = 1.9
        let  cartoonImage = uiImg.filterWithOperation(toonFilter)
        toonFilter = nil
       
        
               if cartoonImage != nil
               {
                  
                   return cartoonImage
               }
               else
               {
                   return uiImg
               }
        
    }
}


func convert(cmage:CIImage) -> UIImage
{
     var context:CIContext!
     var cgImage:CGImage!
     context = CIContext.init(options: nil)
     cgImage = context.createCGImage(cmage, from: cmage.extent)!
     let image:UIImage = UIImage.init(cgImage: cgImage)
      context = nil
      
     return image
}
0

There are 0 answers