├── GPUImageFilter-04 ├── GPUImageFilter.xcodeproj │ ├── project.pbxproj │ ├── project.xcworkspace │ │ ├── contents.xcworkspacedata │ │ └── xcuserdata │ │ │ └── mac.xcuserdatad │ │ │ └── UserInterfaceState.xcuserstate │ └── xcuserdata │ │ └── mac.xcuserdatad │ │ ├── xcdebugger │ │ └── Breakpoints_v2.xcbkptlist │ │ └── xcschemes │ │ ├── GPUImageFilter.xcscheme │ │ └── xcschememanagement.plist ├── GPUImageFilter │ ├── 1.jpg │ ├── AppDelegate.h │ ├── AppDelegate.m │ ├── Assets.xcassets │ │ └── AppIcon.appiconset │ │ │ └── Contents.json │ ├── Base.lproj │ │ ├── LaunchScreen.storyboard │ │ └── Main.storyboard │ ├── Info.plist │ ├── SecondViewController.h │ ├── SecondViewController.m │ ├── ViewController.h │ ├── ViewController.m │ └── main.m ├── GPUImageFilterTests │ ├── GPUImageFilterTests.m │ └── Info.plist ├── GPUImageFilterUITests │ ├── GPUImageFilterUITests.m │ └── Info.plist └── framework │ ├── GPUImage.xcodeproj │ ├── project.pbxproj │ ├── project.xcworkspace │ │ ├── contents.xcworkspacedata │ │ └── xcuserdata │ │ │ └── mac.xcuserdatad │ │ │ ├── UserInterfaceState.xcuserstate │ │ │ └── WorkspaceSettings.xcsettings │ ├── xcshareddata │ │ └── xcschemes │ │ │ ├── Documentation.xcscheme │ │ │ ├── GPUImage.xcscheme │ │ │ └── GPUImageFramework.xcscheme │ └── xcuserdata │ │ └── mac.xcuserdatad │ │ └── xcschemes │ │ └── xcschememanagement.plist │ ├── GPUImageMac.xcodeproj │ ├── project.pbxproj │ └── xcshareddata │ │ └── xcschemes │ │ └── GPUImage.xcscheme │ ├── Resources │ ├── lookup.png │ ├── lookup_amatorka.png │ ├── lookup_miss_etikate.png │ ├── lookup_soft_elegance_1.png │ └── lookup_soft_elegance_2.png │ └── Source │ ├── GLProgram.h │ ├── GLProgram.m │ ├── GPUImage.h │ ├── GPUImage3x3ConvolutionFilter.h │ ├── GPUImage3x3ConvolutionFilter.m │ ├── GPUImage3x3TextureSamplingFilter.h │ ├── GPUImage3x3TextureSamplingFilter.m │ ├── GPUImageAdaptiveThresholdFilter.h │ ├── GPUImageAdaptiveThresholdFilter.m │ ├── GPUImageAddBlendFilter.h │ ├── GPUImageAddBlendFilter.m │ ├── GPUImageAlphaBlendFilter.h │ ├── GPUImageAlphaBlendFilter.m │ ├── GPUImageAmatorkaFilter.h │ ├── GPUImageAmatorkaFilter.m │ ├── GPUImageAverageColor.h │ ├── GPUImageAverageColor.m │ ├── GPUImageAverageLuminanceThresholdFilter.h │ ├── GPUImageAverageLuminanceThresholdFilter.m │ ├── GPUImageBilateralFilter.h │ ├── GPUImageBilateralFilter.m │ ├── GPUImageBoxBlurFilter.h │ ├── GPUImageBoxBlurFilter.m │ ├── GPUImageBrightnessFilter.h │ ├── GPUImageBrightnessFilter.m │ ├── GPUImageBuffer.h │ ├── GPUImageBuffer.m │ ├── GPUImageBulgeDistortionFilter.h │ ├── GPUImageBulgeDistortionFilter.m │ ├── GPUImageCGAColorspaceFilter.h │ ├── GPUImageCGAColorspaceFilter.m │ ├── GPUImageCannyEdgeDetectionFilter.h │ ├── GPUImageCannyEdgeDetectionFilter.m │ ├── GPUImageChromaKeyBlendFilter.h │ ├── GPUImageChromaKeyBlendFilter.m │ ├── GPUImageChromaKeyFilter.h │ ├── GPUImageChromaKeyFilter.m │ ├── GPUImageClosingFilter.h │ ├── GPUImageClosingFilter.m │ ├── GPUImageColorBlendFilter.h │ ├── GPUImageColorBlendFilter.m │ ├── GPUImageColorBurnBlendFilter.h │ ├── GPUImageColorBurnBlendFilter.m │ ├── GPUImageColorConversion.h │ ├── GPUImageColorConversion.m │ ├── GPUImageColorDodgeBlendFilter.h │ ├── GPUImageColorDodgeBlendFilter.m │ ├── GPUImageColorInvertFilter.h │ ├── GPUImageColorInvertFilter.m │ ├── GPUImageColorLocalBinaryPatternFilter.h │ ├── GPUImageColorLocalBinaryPatternFilter.m │ ├── GPUImageColorMatrixFilter.h │ ├── GPUImageColorMatrixFilter.m │ ├── GPUImageColorPackingFilter.h │ ├── GPUImageColorPackingFilter.m │ ├── GPUImageColourFASTFeatureDetector.h │ ├── GPUImageColourFASTFeatureDetector.m │ ├── GPUImageColourFASTSamplingOperation.h │ ├── GPUImageColourFASTSamplingOperation.m │ ├── GPUImageContrastFilter.h │ ├── GPUImageContrastFilter.m │ ├── GPUImageCropFilter.h │ ├── GPUImageCropFilter.m │ ├── GPUImageCrosshairGenerator.h │ ├── GPUImageCrosshairGenerator.m │ ├── GPUImageCrosshatchFilter.h │ ├── GPUImageCrosshatchFilter.m │ ├── GPUImageDarkenBlendFilter.h │ ├── GPUImageDarkenBlendFilter.m │ ├── GPUImageDifferenceBlendFilter.h │ ├── GPUImageDifferenceBlendFilter.m │ ├── GPUImageDilationFilter.h │ ├── GPUImageDilationFilter.m │ ├── GPUImageDirectionalNonMaximumSuppressionFilter.h │ ├── GPUImageDirectionalNonMaximumSuppressionFilter.m │ ├── GPUImageDirectionalSobelEdgeDetectionFilter.h │ ├── GPUImageDirectionalSobelEdgeDetectionFilter.m │ ├── GPUImageDissolveBlendFilter.h │ ├── GPUImageDissolveBlendFilter.m │ ├── GPUImageDivideBlendFilter.h │ ├── GPUImageDivideBlendFilter.m │ ├── GPUImageEmbossFilter.h │ ├── GPUImageEmbossFilter.m │ ├── GPUImageErosionFilter.h │ ├── GPUImageErosionFilter.m │ ├── GPUImageExclusionBlendFilter.h │ ├── GPUImageExclusionBlendFilter.m │ ├── GPUImageExposureFilter.h │ ├── GPUImageExposureFilter.m │ ├── GPUImageFASTCornerDetectionFilter.h │ ├── GPUImageFASTCornerDetectionFilter.m │ ├── GPUImageFalseColorFilter.h │ ├── GPUImageFalseColorFilter.m │ ├── GPUImageFilter.h │ ├── GPUImageFilter.m │ ├── GPUImageFilterGroup.h │ ├── GPUImageFilterGroup.m │ ├── GPUImageFilterPipeline.h │ ├── GPUImageFilterPipeline.m │ ├── GPUImageFourInputFilter.h │ ├── GPUImageFourInputFilter.m │ ├── GPUImageFramebuffer.h │ ├── GPUImageFramebuffer.m │ ├── GPUImageFramebufferCache.h │ ├── GPUImageFramebufferCache.m │ ├── GPUImageGammaFilter.h │ ├── GPUImageGammaFilter.m │ ├── GPUImageGaussianBlurFilter.h │ ├── GPUImageGaussianBlurFilter.m │ ├── GPUImageGaussianBlurPositionFilter.h │ ├── GPUImageGaussianBlurPositionFilter.m │ ├── GPUImageGaussianSelectiveBlurFilter.h │ ├── GPUImageGaussianSelectiveBlurFilter.m │ ├── GPUImageGlassSphereFilter.h │ ├── GPUImageGlassSphereFilter.m │ ├── GPUImageGrayscaleFilter.h │ ├── GPUImageGrayscaleFilter.m │ ├── GPUImageHSBFilter.h │ ├── GPUImageHSBFilter.m │ ├── GPUImageHalftoneFilter.h │ ├── GPUImageHalftoneFilter.m │ ├── GPUImageHardLightBlendFilter.h │ ├── GPUImageHardLightBlendFilter.m │ ├── GPUImageHarrisCornerDetectionFilter.h │ ├── GPUImageHarrisCornerDetectionFilter.m │ ├── GPUImageHazeFilter.h │ ├── GPUImageHazeFilter.m │ ├── GPUImageHighPassFilter.h │ ├── GPUImageHighPassFilter.m │ ├── GPUImageHighlightShadowFilter.h │ ├── GPUImageHighlightShadowFilter.m │ ├── GPUImageHighlightShadowTintFilter.h │ ├── GPUImageHighlightShadowTintFilter.m │ ├── GPUImageHistogramEqualizationFilter.h │ ├── GPUImageHistogramEqualizationFilter.m │ ├── GPUImageHistogramFilter.h │ ├── GPUImageHistogramFilter.m │ ├── GPUImageHistogramGenerator.h │ ├── GPUImageHistogramGenerator.m │ ├── GPUImageHoughTransformLineDetector.h │ ├── GPUImageHoughTransformLineDetector.m │ ├── GPUImageHueBlendFilter.h │ ├── GPUImageHueBlendFilter.m │ ├── GPUImageHueFilter.h │ ├── GPUImageHueFilter.m │ ├── GPUImageJFAVoronoiFilter.h │ ├── GPUImageJFAVoronoiFilter.m │ ├── GPUImageKuwaharaFilter.h │ ├── GPUImageKuwaharaFilter.m │ ├── GPUImageKuwaharaRadius3Filter.h │ ├── GPUImageKuwaharaRadius3Filter.m │ ├── GPUImageLanczosResamplingFilter.h │ ├── GPUImageLanczosResamplingFilter.m │ ├── GPUImageLaplacianFilter.h │ ├── GPUImageLaplacianFilter.m │ ├── GPUImageLevelsFilter.h │ ├── GPUImageLevelsFilter.m │ ├── GPUImageLightenBlendFilter.h │ ├── GPUImageLightenBlendFilter.m │ ├── GPUImageLineGenerator.h │ ├── GPUImageLineGenerator.m │ ├── GPUImageLinearBurnBlendFilter.h │ ├── GPUImageLinearBurnBlendFilter.m │ ├── GPUImageLocalBinaryPatternFilter.h │ ├── GPUImageLocalBinaryPatternFilter.m │ ├── GPUImageLookupFilter.h │ ├── GPUImageLookupFilter.m │ ├── GPUImageLowPassFilter.h │ ├── GPUImageLowPassFilter.m │ ├── GPUImageLuminanceRangeFilter.h │ ├── GPUImageLuminanceRangeFilter.m │ ├── GPUImageLuminanceThresholdFilter.h │ ├── GPUImageLuminanceThresholdFilter.m │ ├── GPUImageLuminosity.h │ ├── GPUImageLuminosity.m │ ├── GPUImageLuminosityBlendFilter.h │ ├── GPUImageLuminosityBlendFilter.m │ ├── GPUImageMaskFilter.h │ ├── GPUImageMaskFilter.m │ ├── GPUImageMedianFilter.h │ ├── GPUImageMedianFilter.m │ ├── GPUImageMissEtikateFilter.h │ ├── GPUImageMissEtikateFilter.m │ ├── GPUImageMonochromeFilter.h │ ├── GPUImageMonochromeFilter.m │ ├── GPUImageMosaicFilter.h │ ├── GPUImageMosaicFilter.m │ ├── GPUImageMotionBlurFilter.h │ ├── GPUImageMotionBlurFilter.m │ ├── GPUImageMotionDetector.h │ ├── GPUImageMotionDetector.m │ ├── GPUImageMovie.h │ ├── GPUImageMovie.m │ ├── GPUImageMovieComposition.h │ ├── GPUImageMovieComposition.m │ ├── GPUImageMultiplyBlendFilter.h │ ├── GPUImageMultiplyBlendFilter.m │ ├── GPUImageNobleCornerDetectionFilter.h │ ├── GPUImageNobleCornerDetectionFilter.m │ ├── GPUImageNonMaximumSuppressionFilter.h │ ├── GPUImageNonMaximumSuppressionFilter.m │ ├── GPUImageNormalBlendFilter.h │ ├── GPUImageNormalBlendFilter.m │ ├── GPUImageOpacityFilter.h │ ├── GPUImageOpacityFilter.m │ ├── GPUImageOpeningFilter.h │ ├── GPUImageOpeningFilter.m │ ├── GPUImageOutput.h │ ├── GPUImageOutput.m │ ├── GPUImageOverlayBlendFilter.h │ ├── GPUImageOverlayBlendFilter.m │ ├── GPUImageParallelCoordinateLineTransformFilter.h │ ├── GPUImageParallelCoordinateLineTransformFilter.m │ ├── GPUImagePerlinNoiseFilter.h │ ├── GPUImagePerlinNoiseFilter.m │ ├── GPUImagePinchDistortionFilter.h │ ├── GPUImagePinchDistortionFilter.m │ ├── GPUImagePixellateFilter.h │ ├── GPUImagePixellateFilter.m │ ├── GPUImagePixellatePositionFilter.h │ ├── GPUImagePixellatePositionFilter.m │ ├── GPUImagePoissonBlendFilter.h │ ├── GPUImagePoissonBlendFilter.m │ ├── GPUImagePolarPixellateFilter.h │ ├── GPUImagePolarPixellateFilter.m │ ├── GPUImagePolkaDotFilter.h │ ├── GPUImagePolkaDotFilter.m │ ├── GPUImagePosterizeFilter.h │ ├── GPUImagePosterizeFilter.m │ ├── GPUImagePrewittEdgeDetectionFilter.h │ ├── GPUImagePrewittEdgeDetectionFilter.m │ ├── GPUImageRGBClosingFilter.h │ ├── GPUImageRGBClosingFilter.m │ ├── GPUImageRGBDilationFilter.h │ ├── GPUImageRGBDilationFilter.m │ ├── GPUImageRGBErosionFilter.h │ ├── GPUImageRGBErosionFilter.m │ ├── GPUImageRGBFilter.h │ ├── GPUImageRGBFilter.m │ ├── GPUImageRGBOpeningFilter.h │ ├── GPUImageRGBOpeningFilter.m │ ├── GPUImageRawDataInput.h │ ├── GPUImageRawDataInput.m │ ├── GPUImageRawDataOutput.h │ ├── GPUImageRawDataOutput.m │ ├── GPUImageSaturationBlendFilter.h │ ├── GPUImageSaturationBlendFilter.m │ ├── GPUImageSaturationFilter.h │ ├── GPUImageSaturationFilter.m │ ├── GPUImageScreenBlendFilter.h │ ├── GPUImageScreenBlendFilter.m │ ├── GPUImageSepiaFilter.h │ ├── GPUImageSepiaFilter.m │ ├── GPUImageSharpenFilter.h │ ├── GPUImageSharpenFilter.m │ ├── GPUImageShiTomasiFeatureDetectionFilter.h │ ├── GPUImageShiTomasiFeatureDetectionFilter.m │ ├── GPUImageSingleComponentGaussianBlurFilter.h │ ├── GPUImageSingleComponentGaussianBlurFilter.m │ ├── GPUImageSketchFilter.h │ ├── GPUImageSketchFilter.m │ ├── GPUImageSkinToneFilter.h │ ├── GPUImageSkinToneFilter.m │ ├── GPUImageSmoothToonFilter.h │ ├── GPUImageSmoothToonFilter.m │ ├── GPUImageSobelEdgeDetectionFilter.h │ ├── GPUImageSobelEdgeDetectionFilter.m │ ├── GPUImageSoftEleganceFilter.h │ ├── GPUImageSoftEleganceFilter.m │ ├── GPUImageSoftLightBlendFilter.h │ ├── GPUImageSoftLightBlendFilter.m │ ├── GPUImageSolarizeFilter.h │ ├── GPUImageSolarizeFilter.m │ ├── GPUImageSolidColorGenerator.h │ ├── GPUImageSolidColorGenerator.m │ ├── GPUImageSourceOverBlendFilter.h │ ├── GPUImageSourceOverBlendFilter.m │ ├── GPUImageSphereRefractionFilter.h │ ├── GPUImageSphereRefractionFilter.m │ ├── GPUImageStillCamera.h │ ├── GPUImageStillCamera.m │ ├── GPUImageStretchDistortionFilter.h │ ├── GPUImageStretchDistortionFilter.m │ ├── GPUImageSubtractBlendFilter.h │ ├── GPUImageSubtractBlendFilter.m │ ├── GPUImageSwirlFilter.h │ ├── GPUImageSwirlFilter.m │ ├── GPUImageTextureInput.h │ ├── GPUImageTextureInput.m │ ├── GPUImageTextureOutput.h │ ├── GPUImageTextureOutput.m │ ├── GPUImageThreeInputFilter.h │ ├── GPUImageThreeInputFilter.m │ ├── GPUImageThresholdEdgeDetectionFilter.h │ ├── GPUImageThresholdEdgeDetectionFilter.m │ ├── GPUImageThresholdSketchFilter.h │ ├── GPUImageThresholdSketchFilter.m │ ├── GPUImageThresholdedNonMaximumSuppressionFilter.h │ ├── GPUImageThresholdedNonMaximumSuppressionFilter.m │ ├── GPUImageTiltShiftFilter.h │ ├── GPUImageTiltShiftFilter.m │ ├── GPUImageToneCurveFilter.h │ ├── GPUImageToneCurveFilter.m │ ├── GPUImageToonFilter.h │ ├── GPUImageToonFilter.m │ ├── GPUImageTransformFilter.h │ ├── GPUImageTransformFilter.m │ ├── GPUImageTwoInputCrossTextureSamplingFilter.h │ ├── GPUImageTwoInputCrossTextureSamplingFilter.m │ ├── GPUImageTwoInputFilter.h │ ├── GPUImageTwoInputFilter.m │ ├── GPUImageTwoPassFilter.h │ ├── GPUImageTwoPassFilter.m │ ├── GPUImageTwoPassTextureSamplingFilter.h │ ├── GPUImageTwoPassTextureSamplingFilter.m │ ├── GPUImageUIElement.h │ ├── GPUImageUIElement.m │ ├── GPUImageUnsharpMaskFilter.h │ ├── GPUImageUnsharpMaskFilter.m │ ├── GPUImageVibranceFilter.h │ ├── GPUImageVibranceFilter.m │ ├── GPUImageVideoCamera.h │ ├── GPUImageVideoCamera.m │ ├── GPUImageVignetteFilter.h │ ├── GPUImageVignetteFilter.m │ ├── GPUImageVoronoiConsumerFilter.h │ ├── GPUImageVoronoiConsumerFilter.m │ ├── GPUImageWeakPixelInclusionFilter.h │ ├── GPUImageWeakPixelInclusionFilter.m │ ├── GPUImageWhiteBalanceFilter.h │ ├── GPUImageWhiteBalanceFilter.m │ ├── GPUImageXYDerivativeFilter.h │ ├── GPUImageXYDerivativeFilter.m │ ├── GPUImageZoomBlurFilter.h │ ├── GPUImageZoomBlurFilter.m │ ├── GPUImageiOSBlurFilter.h │ ├── GPUImageiOSBlurFilter.m │ ├── Mac │ ├── GPUImage.h │ ├── GPUImageAVCamera.h │ ├── GPUImageAVCamera.m │ ├── GPUImageContext.h │ ├── GPUImageContext.m │ ├── GPUImageMac-Info.plist │ ├── GPUImageMac-Prefix.pch │ ├── GPUImageMovieWriter.h │ ├── GPUImageMovieWriter.m │ ├── GPUImagePicture.h │ ├── GPUImagePicture.m │ ├── GPUImageView.h │ ├── GPUImageView.m │ └── en.lproj │ │ └── InfoPlist.strings │ └── iOS │ ├── Framework │ ├── GPUImageFramework.h │ ├── Info.plist │ └── module.modulemap │ ├── GPUImage-Prefix.pch │ ├── GPUImageContext.h │ ├── GPUImageContext.m │ ├── GPUImageMovieWriter.h │ ├── GPUImageMovieWriter.m │ ├── GPUImagePicture+TextureSubimage.h │ ├── GPUImagePicture+TextureSubimage.m │ ├── GPUImagePicture.h │ ├── GPUImagePicture.m │ ├── GPUImageView.h │ └── GPUImageView.m ├── GPUImageFilter-05 ├── GPUImageFilter.xcodeproj │ ├── project.pbxproj │ ├── project.xcworkspace │ │ ├── contents.xcworkspacedata │ │ └── xcuserdata │ │ │ ├── mac.xcuserdatad │ │ │ └── UserInterfaceState.xcuserstate │ │ │ └── qinmin.xcuserdatad │ │ │ └── UserInterfaceState.xcuserstate │ └── xcuserdata │ │ ├── mac.xcuserdatad │ │ ├── xcdebugger │ │ │ └── Breakpoints_v2.xcbkptlist │ │ └── xcschemes │ │ │ ├── GPUImageFilter.xcscheme │ │ │ └── xcschememanagement.plist │ │ └── qinmin.xcuserdatad │ │ ├── xcdebugger │ │ └── Breakpoints_v2.xcbkptlist │ │ └── xcschemes │ │ ├── GPUImageFilter.xcscheme │ │ └── xcschememanagement.plist ├── GPUImageFilter │ ├── 1.jpg │ ├── 1.mp4 │ ├── AppDelegate.h │ ├── AppDelegate.m │ ├── Assets.xcassets │ │ └── AppIcon.appiconset │ │ │ └── Contents.json │ ├── Base.lproj │ │ ├── LaunchScreen.storyboard │ │ └── Main.storyboard │ ├── ImageShowViewController.h │ ├── ImageShowViewController.m │ ├── Info.plist │ ├── SecondViewController.h │ ├── SecondViewController.m │ ├── ThirdViewController.h │ ├── ThirdViewController.m │ ├── ViewController.h │ ├── ViewController.m │ └── main.m ├── GPUImageFilterTests │ ├── GPUImageFilterTests.m │ └── Info.plist ├── GPUImageFilterUITests │ ├── GPUImageFilterUITests.m │ └── Info.plist └── framework │ ├── GPUImage.xcodeproj │ ├── project.pbxproj │ ├── project.xcworkspace │ │ ├── contents.xcworkspacedata │ │ └── xcuserdata │ │ │ └── mac.xcuserdatad │ │ │ ├── UserInterfaceState.xcuserstate │ │ │ └── WorkspaceSettings.xcsettings │ ├── xcshareddata │ │ └── xcschemes │ │ │ ├── Documentation.xcscheme │ │ │ ├── GPUImage.xcscheme │ │ │ └── GPUImageFramework.xcscheme │ └── xcuserdata │ │ ├── mac.xcuserdatad │ │ └── xcschemes │ │ │ └── xcschememanagement.plist │ │ └── qinmin.xcuserdatad │ │ └── xcschemes │ │ └── xcschememanagement.plist │ ├── GPUImageMac.xcodeproj │ ├── project.pbxproj │ └── xcshareddata │ │ └── xcschemes │ │ └── GPUImage.xcscheme │ ├── Resources │ ├── lookup.png │ ├── lookup_amatorka.png │ ├── lookup_miss_etikate.png │ ├── lookup_soft_elegance_1.png │ └── lookup_soft_elegance_2.png │ └── Source │ ├── GLProgram.h │ ├── GLProgram.m │ ├── GPUImage.h │ ├── GPUImage3x3ConvolutionFilter.h │ ├── GPUImage3x3ConvolutionFilter.m │ ├── GPUImage3x3TextureSamplingFilter.h │ ├── GPUImage3x3TextureSamplingFilter.m │ ├── GPUImageAdaptiveThresholdFilter.h │ ├── GPUImageAdaptiveThresholdFilter.m │ ├── GPUImageAddBlendFilter.h │ ├── GPUImageAddBlendFilter.m │ ├── GPUImageAlphaBlendFilter.h │ ├── GPUImageAlphaBlendFilter.m │ ├── GPUImageAmatorkaFilter.h │ ├── GPUImageAmatorkaFilter.m │ ├── GPUImageAverageColor.h │ ├── GPUImageAverageColor.m │ ├── GPUImageAverageLuminanceThresholdFilter.h │ ├── GPUImageAverageLuminanceThresholdFilter.m │ ├── GPUImageBilateralFilter.h │ ├── GPUImageBilateralFilter.m │ ├── GPUImageBoxBlurFilter.h │ ├── GPUImageBoxBlurFilter.m │ ├── GPUImageBrightnessFilter.h │ ├── GPUImageBrightnessFilter.m │ ├── GPUImageBuffer.h │ ├── GPUImageBuffer.m │ ├── GPUImageBulgeDistortionFilter.h │ ├── GPUImageBulgeDistortionFilter.m │ ├── GPUImageCGAColorspaceFilter.h │ ├── GPUImageCGAColorspaceFilter.m │ ├── GPUImageCannyEdgeDetectionFilter.h │ ├── GPUImageCannyEdgeDetectionFilter.m │ ├── GPUImageChromaKeyBlendFilter.h │ ├── GPUImageChromaKeyBlendFilter.m │ ├── GPUImageChromaKeyFilter.h │ ├── GPUImageChromaKeyFilter.m │ ├── GPUImageClosingFilter.h │ ├── GPUImageClosingFilter.m │ ├── GPUImageColorBlendFilter.h │ ├── GPUImageColorBlendFilter.m │ ├── GPUImageColorBurnBlendFilter.h │ ├── GPUImageColorBurnBlendFilter.m │ ├── GPUImageColorConversion.h │ ├── GPUImageColorConversion.m │ ├── GPUImageColorDodgeBlendFilter.h │ ├── GPUImageColorDodgeBlendFilter.m │ ├── GPUImageColorInvertFilter.h │ ├── GPUImageColorInvertFilter.m │ ├── GPUImageColorLocalBinaryPatternFilter.h │ ├── GPUImageColorLocalBinaryPatternFilter.m │ ├── GPUImageColorMatrixFilter.h │ ├── GPUImageColorMatrixFilter.m │ ├── GPUImageColorPackingFilter.h │ ├── GPUImageColorPackingFilter.m │ ├── GPUImageColourFASTFeatureDetector.h │ ├── GPUImageColourFASTFeatureDetector.m │ ├── GPUImageColourFASTSamplingOperation.h │ ├── GPUImageColourFASTSamplingOperation.m │ ├── GPUImageContrastFilter.h │ ├── GPUImageContrastFilter.m │ ├── GPUImageCropFilter.h │ ├── GPUImageCropFilter.m │ ├── GPUImageCrosshairGenerator.h │ ├── GPUImageCrosshairGenerator.m │ ├── GPUImageCrosshatchFilter.h │ ├── GPUImageCrosshatchFilter.m │ ├── GPUImageDarkenBlendFilter.h │ ├── GPUImageDarkenBlendFilter.m │ ├── GPUImageDifferenceBlendFilter.h │ ├── GPUImageDifferenceBlendFilter.m │ ├── GPUImageDilationFilter.h │ ├── GPUImageDilationFilter.m │ ├── GPUImageDirectionalNonMaximumSuppressionFilter.h │ ├── GPUImageDirectionalNonMaximumSuppressionFilter.m │ ├── GPUImageDirectionalSobelEdgeDetectionFilter.h │ ├── GPUImageDirectionalSobelEdgeDetectionFilter.m │ ├── GPUImageDissolveBlendFilter.h │ ├── GPUImageDissolveBlendFilter.m │ ├── GPUImageDivideBlendFilter.h │ ├── GPUImageDivideBlendFilter.m │ ├── GPUImageEmbossFilter.h │ ├── GPUImageEmbossFilter.m │ ├── GPUImageErosionFilter.h │ ├── GPUImageErosionFilter.m │ ├── GPUImageExclusionBlendFilter.h │ ├── GPUImageExclusionBlendFilter.m │ ├── GPUImageExposureFilter.h │ ├── GPUImageExposureFilter.m │ ├── GPUImageFASTCornerDetectionFilter.h │ ├── GPUImageFASTCornerDetectionFilter.m │ ├── GPUImageFalseColorFilter.h │ ├── GPUImageFalseColorFilter.m │ ├── GPUImageFilter.h │ ├── GPUImageFilter.m │ ├── GPUImageFilterGroup.h │ ├── GPUImageFilterGroup.m │ ├── GPUImageFilterPipeline.h │ ├── GPUImageFilterPipeline.m │ ├── GPUImageFourInputFilter.h │ ├── GPUImageFourInputFilter.m │ ├── GPUImageFramebuffer.h │ ├── GPUImageFramebuffer.m │ ├── GPUImageFramebufferCache.h │ ├── GPUImageFramebufferCache.m │ ├── GPUImageGammaFilter.h │ ├── GPUImageGammaFilter.m │ ├── GPUImageGaussianBlurFilter.h │ ├── GPUImageGaussianBlurFilter.m │ ├── GPUImageGaussianBlurPositionFilter.h │ ├── GPUImageGaussianBlurPositionFilter.m │ ├── GPUImageGaussianSelectiveBlurFilter.h │ ├── GPUImageGaussianSelectiveBlurFilter.m │ ├── GPUImageGlassSphereFilter.h │ ├── GPUImageGlassSphereFilter.m │ ├── GPUImageGrayscaleFilter.h │ ├── GPUImageGrayscaleFilter.m │ ├── GPUImageHSBFilter.h │ ├── GPUImageHSBFilter.m │ ├── GPUImageHalftoneFilter.h │ ├── GPUImageHalftoneFilter.m │ ├── GPUImageHardLightBlendFilter.h │ ├── GPUImageHardLightBlendFilter.m │ ├── GPUImageHarrisCornerDetectionFilter.h │ ├── GPUImageHarrisCornerDetectionFilter.m │ ├── GPUImageHazeFilter.h │ ├── GPUImageHazeFilter.m │ ├── GPUImageHighPassFilter.h │ ├── GPUImageHighPassFilter.m │ ├── GPUImageHighlightShadowFilter.h │ ├── GPUImageHighlightShadowFilter.m │ ├── GPUImageHighlightShadowTintFilter.h │ ├── GPUImageHighlightShadowTintFilter.m │ ├── GPUImageHistogramEqualizationFilter.h │ ├── GPUImageHistogramEqualizationFilter.m │ ├── GPUImageHistogramFilter.h │ ├── GPUImageHistogramFilter.m │ ├── GPUImageHistogramGenerator.h │ ├── GPUImageHistogramGenerator.m │ ├── GPUImageHoughTransformLineDetector.h │ ├── GPUImageHoughTransformLineDetector.m │ ├── GPUImageHueBlendFilter.h │ ├── GPUImageHueBlendFilter.m │ ├── GPUImageHueFilter.h │ ├── GPUImageHueFilter.m │ ├── GPUImageJFAVoronoiFilter.h │ ├── GPUImageJFAVoronoiFilter.m │ ├── GPUImageKuwaharaFilter.h │ ├── GPUImageKuwaharaFilter.m │ ├── GPUImageKuwaharaRadius3Filter.h │ ├── GPUImageKuwaharaRadius3Filter.m │ ├── GPUImageLanczosResamplingFilter.h │ ├── GPUImageLanczosResamplingFilter.m │ ├── GPUImageLaplacianFilter.h │ ├── GPUImageLaplacianFilter.m │ ├── GPUImageLevelsFilter.h │ ├── GPUImageLevelsFilter.m │ ├── GPUImageLightenBlendFilter.h │ ├── GPUImageLightenBlendFilter.m │ ├── GPUImageLineGenerator.h │ ├── GPUImageLineGenerator.m │ ├── GPUImageLinearBurnBlendFilter.h │ ├── GPUImageLinearBurnBlendFilter.m │ ├── GPUImageLocalBinaryPatternFilter.h │ ├── GPUImageLocalBinaryPatternFilter.m │ ├── GPUImageLookupFilter.h │ ├── GPUImageLookupFilter.m │ ├── GPUImageLowPassFilter.h │ ├── GPUImageLowPassFilter.m │ ├── GPUImageLuminanceRangeFilter.h │ ├── GPUImageLuminanceRangeFilter.m │ ├── GPUImageLuminanceThresholdFilter.h │ ├── GPUImageLuminanceThresholdFilter.m │ ├── GPUImageLuminosity.h │ ├── GPUImageLuminosity.m │ ├── GPUImageLuminosityBlendFilter.h │ ├── GPUImageLuminosityBlendFilter.m │ ├── GPUImageMaskFilter.h │ ├── GPUImageMaskFilter.m │ ├── GPUImageMedianFilter.h │ ├── GPUImageMedianFilter.m │ ├── GPUImageMissEtikateFilter.h │ ├── GPUImageMissEtikateFilter.m │ ├── GPUImageMonochromeFilter.h │ ├── GPUImageMonochromeFilter.m │ ├── GPUImageMosaicFilter.h │ ├── GPUImageMosaicFilter.m │ ├── GPUImageMotionBlurFilter.h │ ├── GPUImageMotionBlurFilter.m │ ├── GPUImageMotionDetector.h │ ├── GPUImageMotionDetector.m │ ├── GPUImageMovie.h │ ├── GPUImageMovie.m │ ├── GPUImageMovieComposition.h │ ├── GPUImageMovieComposition.m │ ├── GPUImageMultiplyBlendFilter.h │ ├── GPUImageMultiplyBlendFilter.m │ ├── GPUImageNobleCornerDetectionFilter.h │ ├── GPUImageNobleCornerDetectionFilter.m │ ├── GPUImageNonMaximumSuppressionFilter.h │ ├── GPUImageNonMaximumSuppressionFilter.m │ ├── GPUImageNormalBlendFilter.h │ ├── GPUImageNormalBlendFilter.m │ ├── GPUImageOpacityFilter.h │ ├── GPUImageOpacityFilter.m │ ├── GPUImageOpeningFilter.h │ ├── GPUImageOpeningFilter.m │ ├── GPUImageOutput.h │ ├── GPUImageOutput.m │ ├── GPUImageOverlayBlendFilter.h │ ├── GPUImageOverlayBlendFilter.m │ ├── GPUImageParallelCoordinateLineTransformFilter.h │ ├── GPUImageParallelCoordinateLineTransformFilter.m │ ├── GPUImagePerlinNoiseFilter.h │ ├── GPUImagePerlinNoiseFilter.m │ ├── GPUImagePinchDistortionFilter.h │ ├── GPUImagePinchDistortionFilter.m │ ├── GPUImagePixellateFilter.h │ ├── GPUImagePixellateFilter.m │ ├── GPUImagePixellatePositionFilter.h │ ├── GPUImagePixellatePositionFilter.m │ ├── GPUImagePoissonBlendFilter.h │ ├── GPUImagePoissonBlendFilter.m │ ├── GPUImagePolarPixellateFilter.h │ ├── GPUImagePolarPixellateFilter.m │ ├── GPUImagePolkaDotFilter.h │ ├── GPUImagePolkaDotFilter.m │ ├── GPUImagePosterizeFilter.h │ ├── GPUImagePosterizeFilter.m │ ├── GPUImagePrewittEdgeDetectionFilter.h │ ├── GPUImagePrewittEdgeDetectionFilter.m │ ├── GPUImageRGBClosingFilter.h │ ├── GPUImageRGBClosingFilter.m │ ├── GPUImageRGBDilationFilter.h │ ├── GPUImageRGBDilationFilter.m │ ├── GPUImageRGBErosionFilter.h │ ├── GPUImageRGBErosionFilter.m │ ├── GPUImageRGBFilter.h │ ├── GPUImageRGBFilter.m │ ├── GPUImageRGBOpeningFilter.h │ ├── GPUImageRGBOpeningFilter.m │ ├── GPUImageRawDataInput.h │ ├── GPUImageRawDataInput.m │ ├── GPUImageRawDataOutput.h │ ├── GPUImageRawDataOutput.m │ ├── GPUImageSaturationBlendFilter.h │ ├── GPUImageSaturationBlendFilter.m │ ├── GPUImageSaturationFilter.h │ ├── GPUImageSaturationFilter.m │ ├── GPUImageScreenBlendFilter.h │ ├── GPUImageScreenBlendFilter.m │ ├── GPUImageSepiaFilter.h │ ├── GPUImageSepiaFilter.m │ ├── GPUImageSharpenFilter.h │ ├── GPUImageSharpenFilter.m │ ├── GPUImageShiTomasiFeatureDetectionFilter.h │ ├── GPUImageShiTomasiFeatureDetectionFilter.m │ ├── GPUImageSingleComponentGaussianBlurFilter.h │ ├── GPUImageSingleComponentGaussianBlurFilter.m │ ├── GPUImageSketchFilter.h │ ├── GPUImageSketchFilter.m │ ├── GPUImageSkinToneFilter.h │ ├── GPUImageSkinToneFilter.m │ ├── GPUImageSmoothToonFilter.h │ ├── GPUImageSmoothToonFilter.m │ ├── GPUImageSobelEdgeDetectionFilter.h │ ├── GPUImageSobelEdgeDetectionFilter.m │ ├── GPUImageSoftEleganceFilter.h │ ├── GPUImageSoftEleganceFilter.m │ ├── GPUImageSoftLightBlendFilter.h │ ├── GPUImageSoftLightBlendFilter.m │ ├── GPUImageSolarizeFilter.h │ ├── GPUImageSolarizeFilter.m │ ├── GPUImageSolidColorGenerator.h │ ├── GPUImageSolidColorGenerator.m │ ├── GPUImageSourceOverBlendFilter.h │ ├── GPUImageSourceOverBlendFilter.m │ ├── GPUImageSphereRefractionFilter.h │ ├── GPUImageSphereRefractionFilter.m │ ├── GPUImageStillCamera.h │ ├── GPUImageStillCamera.m │ ├── GPUImageStretchDistortionFilter.h │ ├── GPUImageStretchDistortionFilter.m │ ├── GPUImageSubtractBlendFilter.h │ ├── GPUImageSubtractBlendFilter.m │ ├── GPUImageSwirlFilter.h │ ├── GPUImageSwirlFilter.m │ ├── GPUImageTextureInput.h │ ├── GPUImageTextureInput.m │ ├── GPUImageTextureOutput.h │ ├── GPUImageTextureOutput.m │ ├── GPUImageThreeInputFilter.h │ ├── GPUImageThreeInputFilter.m │ ├── GPUImageThresholdEdgeDetectionFilter.h │ ├── GPUImageThresholdEdgeDetectionFilter.m │ ├── GPUImageThresholdSketchFilter.h │ ├── GPUImageThresholdSketchFilter.m │ ├── GPUImageThresholdedNonMaximumSuppressionFilter.h │ ├── GPUImageThresholdedNonMaximumSuppressionFilter.m │ ├── GPUImageTiltShiftFilter.h │ ├── GPUImageTiltShiftFilter.m │ ├── GPUImageToneCurveFilter.h │ ├── GPUImageToneCurveFilter.m │ ├── GPUImageToonFilter.h │ ├── GPUImageToonFilter.m │ ├── GPUImageTransformFilter.h │ ├── GPUImageTransformFilter.m │ ├── GPUImageTwoInputCrossTextureSamplingFilter.h │ ├── GPUImageTwoInputCrossTextureSamplingFilter.m │ ├── GPUImageTwoInputFilter.h │ ├── GPUImageTwoInputFilter.m │ ├── GPUImageTwoPassFilter.h │ ├── GPUImageTwoPassFilter.m │ ├── GPUImageTwoPassTextureSamplingFilter.h │ ├── GPUImageTwoPassTextureSamplingFilter.m │ ├── GPUImageUIElement.h │ ├── GPUImageUIElement.m │ ├── GPUImageUnsharpMaskFilter.h │ ├── GPUImageUnsharpMaskFilter.m │ ├── GPUImageVibranceFilter.h │ ├── GPUImageVibranceFilter.m │ ├── GPUImageVideoCamera.h │ ├── GPUImageVideoCamera.m │ ├── GPUImageVignetteFilter.h │ ├── GPUImageVignetteFilter.m │ ├── GPUImageVoronoiConsumerFilter.h │ ├── GPUImageVoronoiConsumerFilter.m │ ├── GPUImageWeakPixelInclusionFilter.h │ ├── GPUImageWeakPixelInclusionFilter.m │ ├── GPUImageWhiteBalanceFilter.h │ ├── GPUImageWhiteBalanceFilter.m │ ├── GPUImageXYDerivativeFilter.h │ ├── GPUImageXYDerivativeFilter.m │ ├── GPUImageZoomBlurFilter.h │ ├── GPUImageZoomBlurFilter.m │ ├── GPUImageiOSBlurFilter.h │ ├── GPUImageiOSBlurFilter.m │ ├── Mac │ ├── GPUImage.h │ ├── GPUImageAVCamera.h │ ├── GPUImageAVCamera.m │ ├── GPUImageContext.h │ ├── GPUImageContext.m │ ├── GPUImageMac-Info.plist │ ├── GPUImageMac-Prefix.pch │ ├── GPUImageMovieWriter.h │ ├── GPUImageMovieWriter.m │ ├── GPUImagePicture.h │ ├── GPUImagePicture.m │ ├── GPUImageView.h │ ├── GPUImageView.m │ └── en.lproj │ │ └── InfoPlist.strings │ └── iOS │ ├── Framework │ ├── GPUImageFramework.h │ ├── Info.plist │ └── module.modulemap │ ├── GPUImage-Prefix.pch │ ├── GPUImageContext.h │ ├── GPUImageContext.m │ ├── GPUImageMovieWriter.h │ ├── GPUImageMovieWriter.m │ ├── GPUImagePicture+TextureSubimage.h │ ├── GPUImagePicture+TextureSubimage.m │ ├── GPUImagePicture.h │ ├── GPUImagePicture.m │ ├── GPUImageView.h │ └── GPUImageView.m ├── GPUImageFilter-06 ├── GPUImageFilter.xcodeproj │ ├── project.pbxproj │ ├── project.xcworkspace │ │ ├── contents.xcworkspacedata │ │ └── xcuserdata │ │ │ ├── mac.xcuserdatad │ │ │ └── UserInterfaceState.xcuserstate │ │ │ └── qinmin.xcuserdatad │ │ │ └── UserInterfaceState.xcuserstate │ └── xcuserdata │ │ ├── mac.xcuserdatad │ │ ├── xcdebugger │ │ │ └── Breakpoints_v2.xcbkptlist │ │ └── xcschemes │ │ │ ├── GPUImageFilter.xcscheme │ │ │ └── xcschememanagement.plist │ │ └── qinmin.xcuserdatad │ │ ├── xcdebugger │ │ └── Breakpoints_v2.xcbkptlist │ │ └── xcschemes │ │ ├── GPUImageFilter.xcscheme │ │ └── xcschememanagement.plist ├── GPUImageFilter │ ├── 1.jpg │ ├── 2.jpg │ ├── 3.jpg │ ├── AppDelegate.h │ ├── AppDelegate.m │ ├── Assets.xcassets │ │ └── AppIcon.appiconset │ │ │ └── Contents.json │ ├── Base.lproj │ │ ├── LaunchScreen.storyboard │ │ └── Main.storyboard │ ├── Info.plist │ ├── SecondViewController.h │ ├── SecondViewController.m │ ├── Utils │ │ ├── PngUtil.c │ │ ├── PngUtil.h │ │ ├── QMImageHelper.h │ │ ├── QMImageHelper.m │ │ └── png │ │ │ ├── include │ │ │ └── ios │ │ │ │ ├── png.h │ │ │ │ ├── pngconf.h │ │ │ │ └── pnglibconf.h │ │ │ └── prebuilt │ │ │ └── ios │ │ │ └── libpng.a │ ├── ViewController.h │ ├── ViewController.m │ └── main.m ├── GPUImageFilterTests │ ├── GPUImageFilterTests.m │ └── Info.plist ├── GPUImageFilterUITests │ ├── GPUImageFilterUITests.m │ └── Info.plist └── framework │ ├── GPUImage.xcodeproj │ ├── project.pbxproj │ ├── project.xcworkspace │ │ ├── contents.xcworkspacedata │ │ └── xcuserdata │ │ │ └── mac.xcuserdatad │ │ │ ├── UserInterfaceState.xcuserstate │ │ │ └── WorkspaceSettings.xcsettings │ ├── xcshareddata │ │ └── xcschemes │ │ │ ├── Documentation.xcscheme │ │ │ ├── GPUImage.xcscheme │ │ │ └── GPUImageFramework.xcscheme │ └── xcuserdata │ │ ├── mac.xcuserdatad │ │ └── xcschemes │ │ │ └── xcschememanagement.plist │ │ └── qinmin.xcuserdatad │ │ └── xcschemes │ │ └── xcschememanagement.plist │ ├── GPUImageMac.xcodeproj │ ├── project.pbxproj │ └── xcshareddata │ │ └── xcschemes │ │ └── GPUImage.xcscheme │ ├── Resources │ ├── lookup.png │ ├── lookup_amatorka.png │ ├── lookup_miss_etikate.png │ ├── lookup_soft_elegance_1.png │ └── lookup_soft_elegance_2.png │ └── Source │ ├── GLProgram.h │ ├── GLProgram.m │ ├── GPUImage.h │ ├── GPUImage3x3ConvolutionFilter.h │ ├── GPUImage3x3ConvolutionFilter.m │ ├── GPUImage3x3TextureSamplingFilter.h │ ├── GPUImage3x3TextureSamplingFilter.m │ ├── GPUImageAdaptiveThresholdFilter.h │ ├── GPUImageAdaptiveThresholdFilter.m │ ├── GPUImageAddBlendFilter.h │ ├── GPUImageAddBlendFilter.m │ ├── GPUImageAlphaBlendFilter.h │ ├── GPUImageAlphaBlendFilter.m │ ├── GPUImageAmatorkaFilter.h │ ├── GPUImageAmatorkaFilter.m │ ├── GPUImageAverageColor.h │ ├── GPUImageAverageColor.m │ ├── GPUImageAverageLuminanceThresholdFilter.h │ ├── GPUImageAverageLuminanceThresholdFilter.m │ ├── GPUImageBilateralFilter.h │ ├── GPUImageBilateralFilter.m │ ├── GPUImageBoxBlurFilter.h │ ├── GPUImageBoxBlurFilter.m │ ├── GPUImageBrightnessFilter.h │ ├── GPUImageBrightnessFilter.m │ ├── GPUImageBuffer.h │ ├── GPUImageBuffer.m │ ├── GPUImageBulgeDistortionFilter.h │ ├── GPUImageBulgeDistortionFilter.m │ ├── GPUImageCGAColorspaceFilter.h │ ├── GPUImageCGAColorspaceFilter.m │ ├── GPUImageCannyEdgeDetectionFilter.h │ ├── GPUImageCannyEdgeDetectionFilter.m │ ├── GPUImageChromaKeyBlendFilter.h │ ├── GPUImageChromaKeyBlendFilter.m │ ├── GPUImageChromaKeyFilter.h │ ├── GPUImageChromaKeyFilter.m │ ├── GPUImageClosingFilter.h │ ├── GPUImageClosingFilter.m │ ├── GPUImageColorBlendFilter.h │ ├── GPUImageColorBlendFilter.m │ ├── GPUImageColorBurnBlendFilter.h │ ├── GPUImageColorBurnBlendFilter.m │ ├── GPUImageColorConversion.h │ ├── GPUImageColorConversion.m │ ├── GPUImageColorDodgeBlendFilter.h │ ├── GPUImageColorDodgeBlendFilter.m │ ├── GPUImageColorInvertFilter.h │ ├── GPUImageColorInvertFilter.m │ ├── GPUImageColorLocalBinaryPatternFilter.h │ ├── GPUImageColorLocalBinaryPatternFilter.m │ ├── GPUImageColorMatrixFilter.h │ ├── GPUImageColorMatrixFilter.m │ ├── GPUImageColorPackingFilter.h │ ├── GPUImageColorPackingFilter.m │ ├── GPUImageColourFASTFeatureDetector.h │ ├── GPUImageColourFASTFeatureDetector.m │ ├── GPUImageColourFASTSamplingOperation.h │ ├── GPUImageColourFASTSamplingOperation.m │ ├── GPUImageContrastFilter.h │ ├── GPUImageContrastFilter.m │ ├── GPUImageCropFilter.h │ ├── GPUImageCropFilter.m │ ├── GPUImageCrosshairGenerator.h │ ├── GPUImageCrosshairGenerator.m │ ├── GPUImageCrosshatchFilter.h │ ├── GPUImageCrosshatchFilter.m │ ├── GPUImageDarkenBlendFilter.h │ ├── GPUImageDarkenBlendFilter.m │ ├── GPUImageDifferenceBlendFilter.h │ ├── GPUImageDifferenceBlendFilter.m │ ├── GPUImageDilationFilter.h │ ├── GPUImageDilationFilter.m │ ├── GPUImageDirectionalNonMaximumSuppressionFilter.h │ ├── GPUImageDirectionalNonMaximumSuppressionFilter.m │ ├── GPUImageDirectionalSobelEdgeDetectionFilter.h │ ├── GPUImageDirectionalSobelEdgeDetectionFilter.m │ ├── GPUImageDissolveBlendFilter.h │ ├── GPUImageDissolveBlendFilter.m │ ├── GPUImageDivideBlendFilter.h │ ├── GPUImageDivideBlendFilter.m │ ├── GPUImageEmbossFilter.h │ ├── GPUImageEmbossFilter.m │ ├── GPUImageErosionFilter.h │ ├── GPUImageErosionFilter.m │ ├── GPUImageExclusionBlendFilter.h │ ├── GPUImageExclusionBlendFilter.m │ ├── GPUImageExposureFilter.h │ ├── GPUImageExposureFilter.m │ ├── GPUImageFASTCornerDetectionFilter.h │ ├── GPUImageFASTCornerDetectionFilter.m │ ├── GPUImageFalseColorFilter.h │ ├── GPUImageFalseColorFilter.m │ ├── GPUImageFilter.h │ ├── GPUImageFilter.m │ ├── GPUImageFilterGroup.h │ ├── GPUImageFilterGroup.m │ ├── GPUImageFilterPipeline.h │ ├── GPUImageFilterPipeline.m │ ├── GPUImageFourInputFilter.h │ ├── GPUImageFourInputFilter.m │ ├── GPUImageFramebuffer.h │ ├── GPUImageFramebuffer.m │ ├── GPUImageFramebufferCache.h │ ├── GPUImageFramebufferCache.m │ ├── GPUImageGammaFilter.h │ ├── GPUImageGammaFilter.m │ ├── GPUImageGaussianBlurFilter.h │ ├── GPUImageGaussianBlurFilter.m │ ├── GPUImageGaussianBlurPositionFilter.h │ ├── GPUImageGaussianBlurPositionFilter.m │ ├── GPUImageGaussianSelectiveBlurFilter.h │ ├── GPUImageGaussianSelectiveBlurFilter.m │ ├── GPUImageGlassSphereFilter.h │ ├── GPUImageGlassSphereFilter.m │ ├── GPUImageGrayscaleFilter.h │ ├── GPUImageGrayscaleFilter.m │ ├── GPUImageHSBFilter.h │ ├── GPUImageHSBFilter.m │ ├── GPUImageHalftoneFilter.h │ ├── GPUImageHalftoneFilter.m │ ├── GPUImageHardLightBlendFilter.h │ ├── GPUImageHardLightBlendFilter.m │ ├── GPUImageHarrisCornerDetectionFilter.h │ ├── GPUImageHarrisCornerDetectionFilter.m │ ├── GPUImageHazeFilter.h │ ├── GPUImageHazeFilter.m │ ├── GPUImageHighPassFilter.h │ ├── GPUImageHighPassFilter.m │ ├── GPUImageHighlightShadowFilter.h │ ├── GPUImageHighlightShadowFilter.m │ ├── GPUImageHighlightShadowTintFilter.h │ ├── GPUImageHighlightShadowTintFilter.m │ ├── GPUImageHistogramEqualizationFilter.h │ ├── GPUImageHistogramEqualizationFilter.m │ ├── GPUImageHistogramFilter.h │ ├── GPUImageHistogramFilter.m │ ├── GPUImageHistogramGenerator.h │ ├── GPUImageHistogramGenerator.m │ ├── GPUImageHoughTransformLineDetector.h │ ├── GPUImageHoughTransformLineDetector.m │ ├── GPUImageHueBlendFilter.h │ ├── GPUImageHueBlendFilter.m │ ├── GPUImageHueFilter.h │ ├── GPUImageHueFilter.m │ ├── GPUImageJFAVoronoiFilter.h │ ├── GPUImageJFAVoronoiFilter.m │ ├── GPUImageKuwaharaFilter.h │ ├── GPUImageKuwaharaFilter.m │ ├── GPUImageKuwaharaRadius3Filter.h │ ├── GPUImageKuwaharaRadius3Filter.m │ ├── GPUImageLanczosResamplingFilter.h │ ├── GPUImageLanczosResamplingFilter.m │ ├── GPUImageLaplacianFilter.h │ ├── GPUImageLaplacianFilter.m │ ├── GPUImageLevelsFilter.h │ ├── GPUImageLevelsFilter.m │ ├── GPUImageLightenBlendFilter.h │ ├── GPUImageLightenBlendFilter.m │ ├── GPUImageLineGenerator.h │ ├── GPUImageLineGenerator.m │ ├── GPUImageLinearBurnBlendFilter.h │ ├── GPUImageLinearBurnBlendFilter.m │ ├── GPUImageLocalBinaryPatternFilter.h │ ├── GPUImageLocalBinaryPatternFilter.m │ ├── GPUImageLookupFilter.h │ ├── GPUImageLookupFilter.m │ ├── GPUImageLowPassFilter.h │ ├── GPUImageLowPassFilter.m │ ├── GPUImageLuminanceRangeFilter.h │ ├── GPUImageLuminanceRangeFilter.m │ ├── GPUImageLuminanceThresholdFilter.h │ ├── GPUImageLuminanceThresholdFilter.m │ ├── GPUImageLuminosity.h │ ├── GPUImageLuminosity.m │ ├── GPUImageLuminosityBlendFilter.h │ ├── GPUImageLuminosityBlendFilter.m │ ├── GPUImageMaskFilter.h │ ├── GPUImageMaskFilter.m │ ├── GPUImageMedianFilter.h │ ├── GPUImageMedianFilter.m │ ├── GPUImageMissEtikateFilter.h │ ├── GPUImageMissEtikateFilter.m │ ├── GPUImageMonochromeFilter.h │ ├── GPUImageMonochromeFilter.m │ ├── GPUImageMosaicFilter.h │ ├── GPUImageMosaicFilter.m │ ├── GPUImageMotionBlurFilter.h │ ├── GPUImageMotionBlurFilter.m │ ├── GPUImageMotionDetector.h │ ├── GPUImageMotionDetector.m │ ├── GPUImageMovie.h │ ├── GPUImageMovie.m │ ├── GPUImageMovieComposition.h │ ├── GPUImageMovieComposition.m │ ├── GPUImageMultiplyBlendFilter.h │ ├── GPUImageMultiplyBlendFilter.m │ ├── GPUImageNobleCornerDetectionFilter.h │ ├── GPUImageNobleCornerDetectionFilter.m │ ├── GPUImageNonMaximumSuppressionFilter.h │ ├── GPUImageNonMaximumSuppressionFilter.m │ ├── GPUImageNormalBlendFilter.h │ ├── GPUImageNormalBlendFilter.m │ ├── GPUImageOpacityFilter.h │ ├── GPUImageOpacityFilter.m │ ├── GPUImageOpeningFilter.h │ ├── GPUImageOpeningFilter.m │ ├── GPUImageOutput.h │ ├── GPUImageOutput.m │ ├── GPUImageOverlayBlendFilter.h │ ├── GPUImageOverlayBlendFilter.m │ ├── GPUImageParallelCoordinateLineTransformFilter.h │ ├── GPUImageParallelCoordinateLineTransformFilter.m │ ├── GPUImagePerlinNoiseFilter.h │ ├── GPUImagePerlinNoiseFilter.m │ ├── GPUImagePinchDistortionFilter.h │ ├── GPUImagePinchDistortionFilter.m │ ├── GPUImagePixellateFilter.h │ ├── GPUImagePixellateFilter.m │ ├── GPUImagePixellatePositionFilter.h │ ├── GPUImagePixellatePositionFilter.m │ ├── GPUImagePoissonBlendFilter.h │ ├── GPUImagePoissonBlendFilter.m │ ├── GPUImagePolarPixellateFilter.h │ ├── GPUImagePolarPixellateFilter.m │ ├── GPUImagePolkaDotFilter.h │ ├── GPUImagePolkaDotFilter.m │ ├── GPUImagePosterizeFilter.h │ ├── GPUImagePosterizeFilter.m │ ├── GPUImagePrewittEdgeDetectionFilter.h │ ├── GPUImagePrewittEdgeDetectionFilter.m │ ├── GPUImageRGBClosingFilter.h │ ├── GPUImageRGBClosingFilter.m │ ├── GPUImageRGBDilationFilter.h │ ├── GPUImageRGBDilationFilter.m │ ├── GPUImageRGBErosionFilter.h │ ├── GPUImageRGBErosionFilter.m │ ├── GPUImageRGBFilter.h │ ├── GPUImageRGBFilter.m │ ├── GPUImageRGBOpeningFilter.h │ ├── GPUImageRGBOpeningFilter.m │ ├── GPUImageRawDataInput.h │ ├── GPUImageRawDataInput.m │ ├── GPUImageRawDataOutput.h │ ├── GPUImageRawDataOutput.m │ ├── GPUImageSaturationBlendFilter.h │ ├── GPUImageSaturationBlendFilter.m │ ├── GPUImageSaturationFilter.h │ ├── GPUImageSaturationFilter.m │ ├── GPUImageScreenBlendFilter.h │ ├── GPUImageScreenBlendFilter.m │ ├── GPUImageSepiaFilter.h │ ├── GPUImageSepiaFilter.m │ ├── GPUImageSharpenFilter.h │ ├── GPUImageSharpenFilter.m │ ├── GPUImageShiTomasiFeatureDetectionFilter.h │ ├── GPUImageShiTomasiFeatureDetectionFilter.m │ ├── GPUImageSingleComponentGaussianBlurFilter.h │ ├── GPUImageSingleComponentGaussianBlurFilter.m │ ├── GPUImageSketchFilter.h │ ├── GPUImageSketchFilter.m │ ├── GPUImageSkinToneFilter.h │ ├── GPUImageSkinToneFilter.m │ ├── GPUImageSmoothToonFilter.h │ ├── GPUImageSmoothToonFilter.m │ ├── GPUImageSobelEdgeDetectionFilter.h │ ├── GPUImageSobelEdgeDetectionFilter.m │ ├── GPUImageSoftEleganceFilter.h │ ├── GPUImageSoftEleganceFilter.m │ ├── GPUImageSoftLightBlendFilter.h │ ├── GPUImageSoftLightBlendFilter.m │ ├── GPUImageSolarizeFilter.h │ ├── GPUImageSolarizeFilter.m │ ├── GPUImageSolidColorGenerator.h │ ├── GPUImageSolidColorGenerator.m │ ├── GPUImageSourceOverBlendFilter.h │ ├── GPUImageSourceOverBlendFilter.m │ ├── GPUImageSphereRefractionFilter.h │ ├── GPUImageSphereRefractionFilter.m │ ├── GPUImageStillCamera.h │ ├── GPUImageStillCamera.m │ ├── GPUImageStretchDistortionFilter.h │ ├── GPUImageStretchDistortionFilter.m │ ├── GPUImageSubtractBlendFilter.h │ ├── GPUImageSubtractBlendFilter.m │ ├── GPUImageSwirlFilter.h │ ├── GPUImageSwirlFilter.m │ ├── GPUImageTextureInput.h │ ├── GPUImageTextureInput.m │ ├── GPUImageTextureOutput.h │ ├── GPUImageTextureOutput.m │ ├── GPUImageThreeInputFilter.h │ ├── GPUImageThreeInputFilter.m │ ├── GPUImageThresholdEdgeDetectionFilter.h │ ├── GPUImageThresholdEdgeDetectionFilter.m │ ├── GPUImageThresholdSketchFilter.h │ ├── GPUImageThresholdSketchFilter.m │ ├── GPUImageThresholdedNonMaximumSuppressionFilter.h │ ├── GPUImageThresholdedNonMaximumSuppressionFilter.m │ ├── GPUImageTiltShiftFilter.h │ ├── GPUImageTiltShiftFilter.m │ ├── GPUImageToneCurveFilter.h │ ├── GPUImageToneCurveFilter.m │ ├── GPUImageToonFilter.h │ ├── GPUImageToonFilter.m │ ├── GPUImageTransformFilter.h │ ├── GPUImageTransformFilter.m │ ├── GPUImageTwoInputCrossTextureSamplingFilter.h │ ├── GPUImageTwoInputCrossTextureSamplingFilter.m │ ├── GPUImageTwoInputFilter.h │ ├── GPUImageTwoInputFilter.m │ ├── GPUImageTwoPassFilter.h │ ├── GPUImageTwoPassFilter.m │ ├── GPUImageTwoPassTextureSamplingFilter.h │ ├── GPUImageTwoPassTextureSamplingFilter.m │ ├── GPUImageUIElement.h │ ├── GPUImageUIElement.m │ ├── GPUImageUnsharpMaskFilter.h │ ├── GPUImageUnsharpMaskFilter.m │ ├── GPUImageVibranceFilter.h │ ├── GPUImageVibranceFilter.m │ ├── GPUImageVideoCamera.h │ ├── GPUImageVideoCamera.m │ ├── GPUImageVignetteFilter.h │ ├── GPUImageVignetteFilter.m │ ├── GPUImageVoronoiConsumerFilter.h │ ├── GPUImageVoronoiConsumerFilter.m │ ├── GPUImageWeakPixelInclusionFilter.h │ ├── GPUImageWeakPixelInclusionFilter.m │ ├── GPUImageWhiteBalanceFilter.h │ ├── GPUImageWhiteBalanceFilter.m │ ├── GPUImageXYDerivativeFilter.h │ ├── GPUImageXYDerivativeFilter.m │ ├── GPUImageZoomBlurFilter.h │ ├── GPUImageZoomBlurFilter.m │ ├── GPUImageiOSBlurFilter.h │ ├── GPUImageiOSBlurFilter.m │ ├── Mac │ ├── GPUImage.h │ ├── GPUImageAVCamera.h │ ├── GPUImageAVCamera.m │ ├── GPUImageContext.h │ ├── GPUImageContext.m │ ├── GPUImageMac-Info.plist │ ├── GPUImageMac-Prefix.pch │ ├── GPUImageMovieWriter.h │ ├── GPUImageMovieWriter.m │ ├── GPUImagePicture.h │ ├── GPUImagePicture.m │ ├── GPUImageView.h │ ├── GPUImageView.m │ └── en.lproj │ │ └── InfoPlist.strings │ └── iOS │ ├── Framework │ ├── GPUImageFramework.h │ ├── Info.plist │ └── module.modulemap │ ├── GPUImage-Prefix.pch │ ├── GPUImageContext.h │ ├── GPUImageContext.m │ ├── GPUImageMovieWriter.h │ ├── GPUImageMovieWriter.m │ ├── GPUImagePicture+TextureSubimage.h │ ├── GPUImagePicture+TextureSubimage.m │ ├── GPUImagePicture.h │ ├── GPUImagePicture.m │ ├── GPUImageView.h │ └── GPUImageView.m ├── GPUImageFilter-07 ├── GPUImageFilter.xcodeproj │ ├── project.pbxproj │ ├── project.xcworkspace │ │ ├── contents.xcworkspacedata │ │ └── xcuserdata │ │ │ ├── mac.xcuserdatad │ │ │ └── UserInterfaceState.xcuserstate │ │ │ └── qinmin.xcuserdatad │ │ │ └── UserInterfaceState.xcuserstate │ └── xcuserdata │ │ ├── mac.xcuserdatad │ │ ├── xcdebugger │ │ │ └── Breakpoints_v2.xcbkptlist │ │ └── xcschemes │ │ │ ├── GPUImageFilter.xcscheme │ │ │ └── xcschememanagement.plist │ │ └── qinmin.xcuserdatad │ │ ├── xcdebugger │ │ └── Breakpoints_v2.xcbkptlist │ │ └── xcschemes │ │ ├── GPUImageFilter.xcscheme │ │ └── xcschememanagement.plist ├── GPUImageFilter │ ├── 1.jpg │ ├── 2.jpg │ ├── 3.jpg │ ├── AppDelegate.h │ ├── AppDelegate.m │ ├── Assets.xcassets │ │ └── AppIcon.appiconset │ │ │ └── Contents.json │ ├── Base.lproj │ │ ├── LaunchScreen.storyboard │ │ └── Main.storyboard │ ├── Info.plist │ ├── QMGrayBilateralBlendFilter.h │ ├── QMGrayBilateralBlendFilter.m │ ├── SecondViewController.h │ ├── SecondViewController.m │ ├── Utils │ │ ├── PngUtil.c │ │ ├── PngUtil.h │ │ ├── QMImageHelper.h │ │ ├── QMImageHelper.m │ │ └── png │ │ │ ├── include │ │ │ └── ios │ │ │ │ ├── png.h │ │ │ │ ├── pngconf.h │ │ │ │ └── pnglibconf.h │ │ │ └── prebuilt │ │ │ └── ios │ │ │ └── libpng.a │ ├── ViewController.h │ ├── ViewController.m │ ├── filterConfig.plist │ └── main.m ├── GPUImageFilterTests │ ├── GPUImageFilterTests.m │ └── Info.plist ├── GPUImageFilterUITests │ ├── GPUImageFilterUITests.m │ └── Info.plist └── framework │ ├── GPUImage.xcodeproj │ ├── project.pbxproj │ ├── project.xcworkspace │ │ ├── contents.xcworkspacedata │ │ └── xcuserdata │ │ │ └── mac.xcuserdatad │ │ │ ├── UserInterfaceState.xcuserstate │ │ │ └── WorkspaceSettings.xcsettings │ ├── xcshareddata │ │ └── xcschemes │ │ │ ├── Documentation.xcscheme │ │ │ ├── GPUImage.xcscheme │ │ │ └── GPUImageFramework.xcscheme │ └── xcuserdata │ │ ├── mac.xcuserdatad │ │ └── xcschemes │ │ │ └── xcschememanagement.plist │ │ └── qinmin.xcuserdatad │ │ └── xcschemes │ │ └── xcschememanagement.plist │ ├── GPUImageMac.xcodeproj │ ├── project.pbxproj │ └── xcshareddata │ │ └── xcschemes │ │ └── GPUImage.xcscheme │ ├── Resources │ ├── lookup.png │ ├── lookup_amatorka.png │ ├── lookup_miss_etikate.png │ ├── lookup_soft_elegance_1.png │ └── lookup_soft_elegance_2.png │ └── Source │ ├── GLProgram.h │ ├── GLProgram.m │ ├── GPUImage.h │ ├── GPUImage3x3ConvolutionFilter.h │ ├── GPUImage3x3ConvolutionFilter.m │ ├── GPUImage3x3TextureSamplingFilter.h │ ├── GPUImage3x3TextureSamplingFilter.m │ ├── GPUImageAdaptiveThresholdFilter.h │ ├── GPUImageAdaptiveThresholdFilter.m │ ├── GPUImageAddBlendFilter.h │ ├── GPUImageAddBlendFilter.m │ ├── GPUImageAlphaBlendFilter.h │ ├── GPUImageAlphaBlendFilter.m │ ├── GPUImageAmatorkaFilter.h │ ├── GPUImageAmatorkaFilter.m │ ├── GPUImageAverageColor.h │ ├── GPUImageAverageColor.m │ ├── GPUImageAverageLuminanceThresholdFilter.h │ ├── GPUImageAverageLuminanceThresholdFilter.m │ ├── GPUImageBilateralFilter.h │ ├── GPUImageBilateralFilter.m │ ├── GPUImageBoxBlurFilter.h │ ├── GPUImageBoxBlurFilter.m │ ├── GPUImageBrightnessFilter.h │ ├── GPUImageBrightnessFilter.m │ ├── GPUImageBuffer.h │ ├── GPUImageBuffer.m │ ├── GPUImageBulgeDistortionFilter.h │ ├── GPUImageBulgeDistortionFilter.m │ ├── GPUImageCGAColorspaceFilter.h │ ├── GPUImageCGAColorspaceFilter.m │ ├── GPUImageCannyEdgeDetectionFilter.h │ ├── GPUImageCannyEdgeDetectionFilter.m │ ├── GPUImageChromaKeyBlendFilter.h │ ├── GPUImageChromaKeyBlendFilter.m │ ├── GPUImageChromaKeyFilter.h │ ├── GPUImageChromaKeyFilter.m │ ├── GPUImageClosingFilter.h │ ├── GPUImageClosingFilter.m │ ├── GPUImageColorBlendFilter.h │ ├── GPUImageColorBlendFilter.m │ ├── GPUImageColorBurnBlendFilter.h │ ├── GPUImageColorBurnBlendFilter.m │ ├── GPUImageColorConversion.h │ ├── GPUImageColorConversion.m │ ├── GPUImageColorDodgeBlendFilter.h │ ├── GPUImageColorDodgeBlendFilter.m │ ├── GPUImageColorInvertFilter.h │ ├── GPUImageColorInvertFilter.m │ ├── GPUImageColorLocalBinaryPatternFilter.h │ ├── GPUImageColorLocalBinaryPatternFilter.m │ ├── GPUImageColorMatrixFilter.h │ ├── GPUImageColorMatrixFilter.m │ ├── GPUImageColorPackingFilter.h │ ├── GPUImageColorPackingFilter.m │ ├── GPUImageColourFASTFeatureDetector.h │ ├── GPUImageColourFASTFeatureDetector.m │ ├── GPUImageColourFASTSamplingOperation.h │ ├── GPUImageColourFASTSamplingOperation.m │ ├── GPUImageContrastFilter.h │ ├── GPUImageContrastFilter.m │ ├── GPUImageCropFilter.h │ ├── GPUImageCropFilter.m │ ├── GPUImageCrosshairGenerator.h │ ├── GPUImageCrosshairGenerator.m │ ├── GPUImageCrosshatchFilter.h │ ├── GPUImageCrosshatchFilter.m │ ├── GPUImageDarkenBlendFilter.h │ ├── GPUImageDarkenBlendFilter.m │ ├── GPUImageDifferenceBlendFilter.h │ ├── GPUImageDifferenceBlendFilter.m │ ├── GPUImageDilationFilter.h │ ├── GPUImageDilationFilter.m │ ├── GPUImageDirectionalNonMaximumSuppressionFilter.h │ ├── GPUImageDirectionalNonMaximumSuppressionFilter.m │ ├── GPUImageDirectionalSobelEdgeDetectionFilter.h │ ├── GPUImageDirectionalSobelEdgeDetectionFilter.m │ ├── GPUImageDissolveBlendFilter.h │ ├── GPUImageDissolveBlendFilter.m │ ├── GPUImageDivideBlendFilter.h │ ├── GPUImageDivideBlendFilter.m │ ├── GPUImageEmbossFilter.h │ ├── GPUImageEmbossFilter.m │ ├── GPUImageErosionFilter.h │ ├── GPUImageErosionFilter.m │ ├── GPUImageExclusionBlendFilter.h │ ├── GPUImageExclusionBlendFilter.m │ ├── GPUImageExposureFilter.h │ ├── GPUImageExposureFilter.m │ ├── GPUImageFASTCornerDetectionFilter.h │ ├── GPUImageFASTCornerDetectionFilter.m │ ├── GPUImageFalseColorFilter.h │ ├── GPUImageFalseColorFilter.m │ ├── GPUImageFilter.h │ ├── GPUImageFilter.m │ ├── GPUImageFilterGroup.h │ ├── GPUImageFilterGroup.m │ ├── GPUImageFilterPipeline.h │ ├── GPUImageFilterPipeline.m │ ├── GPUImageFourInputFilter.h │ ├── GPUImageFourInputFilter.m │ ├── GPUImageFramebuffer.h │ ├── GPUImageFramebuffer.m │ ├── GPUImageFramebufferCache.h │ ├── GPUImageFramebufferCache.m │ ├── GPUImageGammaFilter.h │ ├── GPUImageGammaFilter.m │ ├── GPUImageGaussianBlurFilter.h │ ├── GPUImageGaussianBlurFilter.m │ ├── GPUImageGaussianBlurPositionFilter.h │ ├── GPUImageGaussianBlurPositionFilter.m │ ├── GPUImageGaussianSelectiveBlurFilter.h │ ├── GPUImageGaussianSelectiveBlurFilter.m │ ├── GPUImageGlassSphereFilter.h │ ├── GPUImageGlassSphereFilter.m │ ├── GPUImageGrayscaleFilter.h │ ├── GPUImageGrayscaleFilter.m │ ├── GPUImageHSBFilter.h │ ├── GPUImageHSBFilter.m │ ├── GPUImageHalftoneFilter.h │ ├── GPUImageHalftoneFilter.m │ ├── GPUImageHardLightBlendFilter.h │ ├── GPUImageHardLightBlendFilter.m │ ├── GPUImageHarrisCornerDetectionFilter.h │ ├── GPUImageHarrisCornerDetectionFilter.m │ ├── GPUImageHazeFilter.h │ ├── GPUImageHazeFilter.m │ ├── GPUImageHighPassFilter.h │ ├── GPUImageHighPassFilter.m │ ├── GPUImageHighlightShadowFilter.h │ ├── GPUImageHighlightShadowFilter.m │ ├── GPUImageHighlightShadowTintFilter.h │ ├── GPUImageHighlightShadowTintFilter.m │ ├── GPUImageHistogramEqualizationFilter.h │ ├── GPUImageHistogramEqualizationFilter.m │ ├── GPUImageHistogramFilter.h │ ├── GPUImageHistogramFilter.m │ ├── GPUImageHistogramGenerator.h │ ├── GPUImageHistogramGenerator.m │ ├── GPUImageHoughTransformLineDetector.h │ ├── GPUImageHoughTransformLineDetector.m │ ├── GPUImageHueBlendFilter.h │ ├── GPUImageHueBlendFilter.m │ ├── GPUImageHueFilter.h │ ├── GPUImageHueFilter.m │ ├── GPUImageJFAVoronoiFilter.h │ ├── GPUImageJFAVoronoiFilter.m │ ├── GPUImageKuwaharaFilter.h │ ├── GPUImageKuwaharaFilter.m │ ├── GPUImageKuwaharaRadius3Filter.h │ ├── GPUImageKuwaharaRadius3Filter.m │ ├── GPUImageLanczosResamplingFilter.h │ ├── GPUImageLanczosResamplingFilter.m │ ├── GPUImageLaplacianFilter.h │ ├── GPUImageLaplacianFilter.m │ ├── GPUImageLevelsFilter.h │ ├── GPUImageLevelsFilter.m │ ├── GPUImageLightenBlendFilter.h │ ├── GPUImageLightenBlendFilter.m │ ├── GPUImageLineGenerator.h │ ├── GPUImageLineGenerator.m │ ├── GPUImageLinearBurnBlendFilter.h │ ├── GPUImageLinearBurnBlendFilter.m │ ├── GPUImageLocalBinaryPatternFilter.h │ ├── GPUImageLocalBinaryPatternFilter.m │ ├── GPUImageLookupFilter.h │ ├── GPUImageLookupFilter.m │ ├── GPUImageLowPassFilter.h │ ├── GPUImageLowPassFilter.m │ ├── GPUImageLuminanceRangeFilter.h │ ├── GPUImageLuminanceRangeFilter.m │ ├── GPUImageLuminanceThresholdFilter.h │ ├── GPUImageLuminanceThresholdFilter.m │ ├── GPUImageLuminosity.h │ ├── GPUImageLuminosity.m │ ├── GPUImageLuminosityBlendFilter.h │ ├── GPUImageLuminosityBlendFilter.m │ ├── GPUImageMaskFilter.h │ ├── GPUImageMaskFilter.m │ ├── GPUImageMedianFilter.h │ ├── GPUImageMedianFilter.m │ ├── GPUImageMissEtikateFilter.h │ ├── GPUImageMissEtikateFilter.m │ ├── GPUImageMonochromeFilter.h │ ├── GPUImageMonochromeFilter.m │ ├── GPUImageMosaicFilter.h │ ├── GPUImageMosaicFilter.m │ ├── GPUImageMotionBlurFilter.h │ ├── GPUImageMotionBlurFilter.m │ ├── GPUImageMotionDetector.h │ ├── GPUImageMotionDetector.m │ ├── GPUImageMovie.h │ ├── GPUImageMovie.m │ ├── GPUImageMovieComposition.h │ ├── GPUImageMovieComposition.m │ ├── GPUImageMultiplyBlendFilter.h │ ├── GPUImageMultiplyBlendFilter.m │ ├── GPUImageNobleCornerDetectionFilter.h │ ├── GPUImageNobleCornerDetectionFilter.m │ ├── GPUImageNonMaximumSuppressionFilter.h │ ├── GPUImageNonMaximumSuppressionFilter.m │ ├── GPUImageNormalBlendFilter.h │ ├── GPUImageNormalBlendFilter.m │ ├── GPUImageOpacityFilter.h │ ├── GPUImageOpacityFilter.m │ ├── GPUImageOpeningFilter.h │ ├── GPUImageOpeningFilter.m │ ├── GPUImageOutput.h │ ├── GPUImageOutput.m │ ├── GPUImageOverlayBlendFilter.h │ ├── GPUImageOverlayBlendFilter.m │ ├── GPUImageParallelCoordinateLineTransformFilter.h │ ├── GPUImageParallelCoordinateLineTransformFilter.m │ ├── GPUImagePerlinNoiseFilter.h │ ├── GPUImagePerlinNoiseFilter.m │ ├── GPUImagePinchDistortionFilter.h │ ├── GPUImagePinchDistortionFilter.m │ ├── GPUImagePixellateFilter.h │ ├── GPUImagePixellateFilter.m │ ├── GPUImagePixellatePositionFilter.h │ ├── GPUImagePixellatePositionFilter.m │ ├── GPUImagePoissonBlendFilter.h │ ├── GPUImagePoissonBlendFilter.m │ ├── GPUImagePolarPixellateFilter.h │ ├── GPUImagePolarPixellateFilter.m │ ├── GPUImagePolkaDotFilter.h │ ├── GPUImagePolkaDotFilter.m │ ├── GPUImagePosterizeFilter.h │ ├── GPUImagePosterizeFilter.m │ ├── GPUImagePrewittEdgeDetectionFilter.h │ ├── GPUImagePrewittEdgeDetectionFilter.m │ ├── GPUImageRGBClosingFilter.h │ ├── GPUImageRGBClosingFilter.m │ ├── GPUImageRGBDilationFilter.h │ ├── GPUImageRGBDilationFilter.m │ ├── GPUImageRGBErosionFilter.h │ ├── GPUImageRGBErosionFilter.m │ ├── GPUImageRGBFilter.h │ ├── GPUImageRGBFilter.m │ ├── GPUImageRGBOpeningFilter.h │ ├── GPUImageRGBOpeningFilter.m │ ├── GPUImageRawDataInput.h │ ├── GPUImageRawDataInput.m │ ├── GPUImageRawDataOutput.h │ ├── GPUImageRawDataOutput.m │ ├── GPUImageSaturationBlendFilter.h │ ├── GPUImageSaturationBlendFilter.m │ ├── GPUImageSaturationFilter.h │ ├── GPUImageSaturationFilter.m │ ├── GPUImageScreenBlendFilter.h │ ├── GPUImageScreenBlendFilter.m │ ├── GPUImageSepiaFilter.h │ ├── GPUImageSepiaFilter.m │ ├── GPUImageSharpenFilter.h │ ├── GPUImageSharpenFilter.m │ ├── GPUImageShiTomasiFeatureDetectionFilter.h │ ├── GPUImageShiTomasiFeatureDetectionFilter.m │ ├── GPUImageSingleComponentGaussianBlurFilter.h │ ├── GPUImageSingleComponentGaussianBlurFilter.m │ ├── GPUImageSketchFilter.h │ ├── GPUImageSketchFilter.m │ ├── GPUImageSkinToneFilter.h │ ├── GPUImageSkinToneFilter.m │ ├── GPUImageSmoothToonFilter.h │ ├── GPUImageSmoothToonFilter.m │ ├── GPUImageSobelEdgeDetectionFilter.h │ ├── GPUImageSobelEdgeDetectionFilter.m │ ├── GPUImageSoftEleganceFilter.h │ ├── GPUImageSoftEleganceFilter.m │ ├── GPUImageSoftLightBlendFilter.h │ ├── GPUImageSoftLightBlendFilter.m │ ├── GPUImageSolarizeFilter.h │ ├── GPUImageSolarizeFilter.m │ ├── GPUImageSolidColorGenerator.h │ ├── GPUImageSolidColorGenerator.m │ ├── GPUImageSourceOverBlendFilter.h │ ├── GPUImageSourceOverBlendFilter.m │ ├── GPUImageSphereRefractionFilter.h │ ├── GPUImageSphereRefractionFilter.m │ ├── GPUImageStillCamera.h │ ├── GPUImageStillCamera.m │ ├── GPUImageStretchDistortionFilter.h │ ├── GPUImageStretchDistortionFilter.m │ ├── GPUImageSubtractBlendFilter.h │ ├── GPUImageSubtractBlendFilter.m │ ├── GPUImageSwirlFilter.h │ ├── GPUImageSwirlFilter.m │ ├── GPUImageTextureInput.h │ ├── GPUImageTextureInput.m │ ├── GPUImageTextureOutput.h │ ├── GPUImageTextureOutput.m │ ├── GPUImageThreeInputFilter.h │ ├── GPUImageThreeInputFilter.m │ ├── GPUImageThresholdEdgeDetectionFilter.h │ ├── GPUImageThresholdEdgeDetectionFilter.m │ ├── GPUImageThresholdSketchFilter.h │ ├── GPUImageThresholdSketchFilter.m │ ├── GPUImageThresholdedNonMaximumSuppressionFilter.h │ ├── GPUImageThresholdedNonMaximumSuppressionFilter.m │ ├── GPUImageTiltShiftFilter.h │ ├── GPUImageTiltShiftFilter.m │ ├── GPUImageToneCurveFilter.h │ ├── GPUImageToneCurveFilter.m │ ├── GPUImageToonFilter.h │ ├── GPUImageToonFilter.m │ ├── GPUImageTransformFilter.h │ ├── GPUImageTransformFilter.m │ ├── GPUImageTwoInputCrossTextureSamplingFilter.h │ ├── GPUImageTwoInputCrossTextureSamplingFilter.m │ ├── GPUImageTwoInputFilter.h │ ├── GPUImageTwoInputFilter.m │ ├── GPUImageTwoPassFilter.h │ ├── GPUImageTwoPassFilter.m │ ├── GPUImageTwoPassTextureSamplingFilter.h │ ├── GPUImageTwoPassTextureSamplingFilter.m │ ├── GPUImageUIElement.h │ ├── GPUImageUIElement.m │ ├── GPUImageUnsharpMaskFilter.h │ ├── GPUImageUnsharpMaskFilter.m │ ├── GPUImageVibranceFilter.h │ ├── GPUImageVibranceFilter.m │ ├── GPUImageVideoCamera.h │ ├── GPUImageVideoCamera.m │ ├── GPUImageVignetteFilter.h │ ├── GPUImageVignetteFilter.m │ ├── GPUImageVoronoiConsumerFilter.h │ ├── GPUImageVoronoiConsumerFilter.m │ ├── GPUImageWeakPixelInclusionFilter.h │ ├── GPUImageWeakPixelInclusionFilter.m │ ├── GPUImageWhiteBalanceFilter.h │ ├── GPUImageWhiteBalanceFilter.m │ ├── GPUImageXYDerivativeFilter.h │ ├── GPUImageXYDerivativeFilter.m │ ├── GPUImageZoomBlurFilter.h │ ├── GPUImageZoomBlurFilter.m │ ├── GPUImageiOSBlurFilter.h │ ├── GPUImageiOSBlurFilter.m │ ├── Mac │ ├── GPUImage.h │ ├── GPUImageAVCamera.h │ ├── GPUImageAVCamera.m │ ├── GPUImageContext.h │ ├── GPUImageContext.m │ ├── GPUImageMac-Info.plist │ ├── GPUImageMac-Prefix.pch │ ├── GPUImageMovieWriter.h │ ├── GPUImageMovieWriter.m │ ├── GPUImagePicture.h │ ├── GPUImagePicture.m │ ├── GPUImageView.h │ ├── GPUImageView.m │ └── en.lproj │ │ └── InfoPlist.strings │ └── iOS │ ├── Framework │ ├── GPUImageFramework.h │ ├── Info.plist │ └── module.modulemap │ ├── GPUImage-Prefix.pch │ ├── GPUImageContext.h │ ├── GPUImageContext.m │ ├── GPUImageMovieWriter.h │ ├── GPUImageMovieWriter.m │ ├── GPUImagePicture+TextureSubimage.h │ ├── GPUImagePicture+TextureSubimage.m │ ├── GPUImagePicture.h │ ├── GPUImagePicture.m │ ├── GPUImageView.h │ └── GPUImageView.m ├── GPUImageFilter-08 ├── GPUImageFilter.xcodeproj │ ├── project.pbxproj │ ├── project.xcworkspace │ │ ├── contents.xcworkspacedata │ │ └── xcuserdata │ │ │ └── mac.xcuserdatad │ │ │ └── UserInterfaceState.xcuserstate │ └── xcuserdata │ │ └── mac.xcuserdatad │ │ ├── xcdebugger │ │ └── Breakpoints_v2.xcbkptlist │ │ └── xcschemes │ │ ├── GPUImageFilter.xcscheme │ │ └── xcschememanagement.plist ├── GPUImageFilter │ ├── 1.jpg │ ├── AppDelegate.h │ ├── AppDelegate.m │ ├── Assets.xcassets │ │ └── AppIcon.appiconset │ │ │ └── Contents.json │ ├── Base.lproj │ │ ├── LaunchScreen.storyboard │ │ └── Main.storyboard │ ├── Info.plist │ ├── ViewController.h │ ├── ViewController.m │ └── main.m ├── GPUImageFilterTests │ ├── GPUImageFilterTests.m │ └── Info.plist ├── GPUImageFilterUITests │ ├── GPUImageFilterUITests.m │ └── Info.plist └── framework │ ├── GPUImage.xcodeproj │ ├── project.pbxproj │ ├── project.xcworkspace │ │ ├── contents.xcworkspacedata │ │ └── xcuserdata │ │ │ └── mac.xcuserdatad │ │ │ ├── UserInterfaceState.xcuserstate │ │ │ └── WorkspaceSettings.xcsettings │ ├── xcshareddata │ │ └── xcschemes │ │ │ ├── Documentation.xcscheme │ │ │ ├── GPUImage.xcscheme │ │ │ └── GPUImageFramework.xcscheme │ └── xcuserdata │ │ └── mac.xcuserdatad │ │ └── xcschemes │ │ └── xcschememanagement.plist │ ├── GPUImageMac.xcodeproj │ ├── project.pbxproj │ └── xcshareddata │ │ └── xcschemes │ │ └── GPUImage.xcscheme │ ├── Resources │ ├── lookup.png │ ├── lookup_amatorka.png │ ├── lookup_miss_etikate.png │ ├── lookup_soft_elegance_1.png │ └── lookup_soft_elegance_2.png │ └── Source │ ├── GLProgram.h │ ├── GLProgram.m │ ├── GPUImage.h │ ├── GPUImage3x3ConvolutionFilter.h │ ├── GPUImage3x3ConvolutionFilter.m │ ├── GPUImage3x3TextureSamplingFilter.h │ ├── GPUImage3x3TextureSamplingFilter.m │ ├── GPUImageAdaptiveThresholdFilter.h │ ├── GPUImageAdaptiveThresholdFilter.m │ ├── GPUImageAddBlendFilter.h │ ├── GPUImageAddBlendFilter.m │ ├── GPUImageAlphaBlendFilter.h │ ├── GPUImageAlphaBlendFilter.m │ ├── GPUImageAmatorkaFilter.h │ ├── GPUImageAmatorkaFilter.m │ ├── GPUImageAverageColor.h │ ├── GPUImageAverageColor.m │ ├── GPUImageAverageLuminanceThresholdFilter.h │ ├── GPUImageAverageLuminanceThresholdFilter.m │ ├── GPUImageBilateralFilter.h │ ├── GPUImageBilateralFilter.m │ ├── GPUImageBoxBlurFilter.h │ ├── GPUImageBoxBlurFilter.m │ ├── GPUImageBrightnessFilter.h │ ├── GPUImageBrightnessFilter.m │ ├── GPUImageBuffer.h │ ├── GPUImageBuffer.m │ ├── GPUImageBulgeDistortionFilter.h │ ├── GPUImageBulgeDistortionFilter.m │ ├── GPUImageCGAColorspaceFilter.h │ ├── GPUImageCGAColorspaceFilter.m │ ├── GPUImageCannyEdgeDetectionFilter.h │ ├── GPUImageCannyEdgeDetectionFilter.m │ ├── GPUImageChromaKeyBlendFilter.h │ ├── GPUImageChromaKeyBlendFilter.m │ ├── GPUImageChromaKeyFilter.h │ ├── GPUImageChromaKeyFilter.m │ ├── GPUImageClosingFilter.h │ ├── GPUImageClosingFilter.m │ ├── GPUImageColorBlendFilter.h │ ├── GPUImageColorBlendFilter.m │ ├── GPUImageColorBurnBlendFilter.h │ ├── GPUImageColorBurnBlendFilter.m │ ├── GPUImageColorConversion.h │ ├── GPUImageColorConversion.m │ ├── GPUImageColorDodgeBlendFilter.h │ ├── GPUImageColorDodgeBlendFilter.m │ ├── GPUImageColorInvertFilter.h │ ├── GPUImageColorInvertFilter.m │ ├── GPUImageColorLocalBinaryPatternFilter.h │ ├── GPUImageColorLocalBinaryPatternFilter.m │ ├── GPUImageColorMatrixFilter.h │ ├── GPUImageColorMatrixFilter.m │ ├── GPUImageColorPackingFilter.h │ ├── GPUImageColorPackingFilter.m │ ├── GPUImageColourFASTFeatureDetector.h │ ├── GPUImageColourFASTFeatureDetector.m │ ├── GPUImageColourFASTSamplingOperation.h │ ├── GPUImageColourFASTSamplingOperation.m │ ├── GPUImageContrastFilter.h │ ├── GPUImageContrastFilter.m │ ├── GPUImageCropFilter.h │ ├── GPUImageCropFilter.m │ ├── GPUImageCrosshairGenerator.h │ ├── GPUImageCrosshairGenerator.m │ ├── GPUImageCrosshatchFilter.h │ ├── GPUImageCrosshatchFilter.m │ ├── GPUImageDarkenBlendFilter.h │ ├── GPUImageDarkenBlendFilter.m │ ├── GPUImageDifferenceBlendFilter.h │ ├── GPUImageDifferenceBlendFilter.m │ ├── GPUImageDilationFilter.h │ ├── GPUImageDilationFilter.m │ ├── GPUImageDirectionalNonMaximumSuppressionFilter.h │ ├── GPUImageDirectionalNonMaximumSuppressionFilter.m │ ├── GPUImageDirectionalSobelEdgeDetectionFilter.h │ ├── GPUImageDirectionalSobelEdgeDetectionFilter.m │ ├── GPUImageDissolveBlendFilter.h │ ├── GPUImageDissolveBlendFilter.m │ ├── GPUImageDivideBlendFilter.h │ ├── GPUImageDivideBlendFilter.m │ ├── GPUImageEmbossFilter.h │ ├── GPUImageEmbossFilter.m │ ├── GPUImageErosionFilter.h │ ├── GPUImageErosionFilter.m │ ├── GPUImageExclusionBlendFilter.h │ ├── GPUImageExclusionBlendFilter.m │ ├── GPUImageExposureFilter.h │ ├── GPUImageExposureFilter.m │ ├── GPUImageFASTCornerDetectionFilter.h │ ├── GPUImageFASTCornerDetectionFilter.m │ ├── GPUImageFalseColorFilter.h │ ├── GPUImageFalseColorFilter.m │ ├── GPUImageFilter.h │ ├── GPUImageFilter.m │ ├── GPUImageFilterGroup.h │ ├── GPUImageFilterGroup.m │ ├── GPUImageFilterPipeline.h │ ├── GPUImageFilterPipeline.m │ ├── GPUImageFourInputFilter.h │ ├── GPUImageFourInputFilter.m │ ├── GPUImageFramebuffer.h │ ├── GPUImageFramebuffer.m │ ├── GPUImageFramebufferCache.h │ ├── GPUImageFramebufferCache.m │ ├── GPUImageGammaFilter.h │ ├── GPUImageGammaFilter.m │ ├── GPUImageGaussianBlurFilter.h │ ├── GPUImageGaussianBlurFilter.m │ ├── GPUImageGaussianBlurPositionFilter.h │ ├── GPUImageGaussianBlurPositionFilter.m │ ├── GPUImageGaussianSelectiveBlurFilter.h │ ├── GPUImageGaussianSelectiveBlurFilter.m │ ├── GPUImageGlassSphereFilter.h │ ├── GPUImageGlassSphereFilter.m │ ├── GPUImageGrayscaleFilter.h │ ├── GPUImageGrayscaleFilter.m │ ├── GPUImageHSBFilter.h │ ├── GPUImageHSBFilter.m │ ├── GPUImageHalftoneFilter.h │ ├── GPUImageHalftoneFilter.m │ ├── GPUImageHardLightBlendFilter.h │ ├── GPUImageHardLightBlendFilter.m │ ├── GPUImageHarrisCornerDetectionFilter.h │ ├── GPUImageHarrisCornerDetectionFilter.m │ ├── GPUImageHazeFilter.h │ ├── GPUImageHazeFilter.m │ ├── GPUImageHighPassFilter.h │ ├── GPUImageHighPassFilter.m │ ├── GPUImageHighlightShadowFilter.h │ ├── GPUImageHighlightShadowFilter.m │ ├── GPUImageHighlightShadowTintFilter.h │ ├── GPUImageHighlightShadowTintFilter.m │ ├── GPUImageHistogramEqualizationFilter.h │ ├── GPUImageHistogramEqualizationFilter.m │ ├── GPUImageHistogramFilter.h │ ├── GPUImageHistogramFilter.m │ ├── GPUImageHistogramGenerator.h │ ├── GPUImageHistogramGenerator.m │ ├── GPUImageHoughTransformLineDetector.h │ ├── GPUImageHoughTransformLineDetector.m │ ├── GPUImageHueBlendFilter.h │ ├── GPUImageHueBlendFilter.m │ ├── GPUImageHueFilter.h │ ├── GPUImageHueFilter.m │ ├── GPUImageJFAVoronoiFilter.h │ ├── GPUImageJFAVoronoiFilter.m │ ├── GPUImageKuwaharaFilter.h │ ├── GPUImageKuwaharaFilter.m │ ├── GPUImageKuwaharaRadius3Filter.h │ ├── GPUImageKuwaharaRadius3Filter.m │ ├── GPUImageLanczosResamplingFilter.h │ ├── GPUImageLanczosResamplingFilter.m │ ├── GPUImageLaplacianFilter.h │ ├── GPUImageLaplacianFilter.m │ ├── GPUImageLevelsFilter.h │ ├── GPUImageLevelsFilter.m │ ├── GPUImageLightenBlendFilter.h │ ├── GPUImageLightenBlendFilter.m │ ├── GPUImageLineGenerator.h │ ├── GPUImageLineGenerator.m │ ├── GPUImageLinearBurnBlendFilter.h │ ├── GPUImageLinearBurnBlendFilter.m │ ├── GPUImageLocalBinaryPatternFilter.h │ ├── GPUImageLocalBinaryPatternFilter.m │ ├── GPUImageLookupFilter.h │ ├── GPUImageLookupFilter.m │ ├── GPUImageLowPassFilter.h │ ├── GPUImageLowPassFilter.m │ ├── GPUImageLuminanceRangeFilter.h │ ├── GPUImageLuminanceRangeFilter.m │ ├── GPUImageLuminanceThresholdFilter.h │ ├── GPUImageLuminanceThresholdFilter.m │ ├── GPUImageLuminosity.h │ ├── GPUImageLuminosity.m │ ├── GPUImageLuminosityBlendFilter.h │ ├── GPUImageLuminosityBlendFilter.m │ ├── GPUImageMaskFilter.h │ ├── GPUImageMaskFilter.m │ ├── GPUImageMedianFilter.h │ ├── GPUImageMedianFilter.m │ ├── GPUImageMissEtikateFilter.h │ ├── GPUImageMissEtikateFilter.m │ ├── GPUImageMonochromeFilter.h │ ├── GPUImageMonochromeFilter.m │ ├── GPUImageMosaicFilter.h │ ├── GPUImageMosaicFilter.m │ ├── GPUImageMotionBlurFilter.h │ ├── GPUImageMotionBlurFilter.m │ ├── GPUImageMotionDetector.h │ ├── GPUImageMotionDetector.m │ ├── GPUImageMovie.h │ ├── GPUImageMovie.m │ ├── GPUImageMovieComposition.h │ ├── GPUImageMovieComposition.m │ ├── GPUImageMultiplyBlendFilter.h │ ├── GPUImageMultiplyBlendFilter.m │ ├── GPUImageNobleCornerDetectionFilter.h │ ├── GPUImageNobleCornerDetectionFilter.m │ ├── GPUImageNonMaximumSuppressionFilter.h │ ├── GPUImageNonMaximumSuppressionFilter.m │ ├── GPUImageNormalBlendFilter.h │ ├── GPUImageNormalBlendFilter.m │ ├── GPUImageOpacityFilter.h │ ├── GPUImageOpacityFilter.m │ ├── GPUImageOpeningFilter.h │ ├── GPUImageOpeningFilter.m │ ├── GPUImageOutput.h │ ├── GPUImageOutput.m │ ├── GPUImageOverlayBlendFilter.h │ ├── GPUImageOverlayBlendFilter.m │ ├── GPUImageParallelCoordinateLineTransformFilter.h │ ├── GPUImageParallelCoordinateLineTransformFilter.m │ ├── GPUImagePerlinNoiseFilter.h │ ├── GPUImagePerlinNoiseFilter.m │ ├── GPUImagePinchDistortionFilter.h │ ├── GPUImagePinchDistortionFilter.m │ ├── GPUImagePixellateFilter.h │ ├── GPUImagePixellateFilter.m │ ├── GPUImagePixellatePositionFilter.h │ ├── GPUImagePixellatePositionFilter.m │ ├── GPUImagePoissonBlendFilter.h │ ├── GPUImagePoissonBlendFilter.m │ ├── GPUImagePolarPixellateFilter.h │ ├── GPUImagePolarPixellateFilter.m │ ├── GPUImagePolkaDotFilter.h │ ├── GPUImagePolkaDotFilter.m │ ├── GPUImagePosterizeFilter.h │ ├── GPUImagePosterizeFilter.m │ ├── GPUImagePrewittEdgeDetectionFilter.h │ ├── GPUImagePrewittEdgeDetectionFilter.m │ ├── GPUImageRGBClosingFilter.h │ ├── GPUImageRGBClosingFilter.m │ ├── GPUImageRGBDilationFilter.h │ ├── GPUImageRGBDilationFilter.m │ ├── GPUImageRGBErosionFilter.h │ ├── GPUImageRGBErosionFilter.m │ ├── GPUImageRGBFilter.h │ ├── GPUImageRGBFilter.m │ ├── GPUImageRGBOpeningFilter.h │ ├── GPUImageRGBOpeningFilter.m │ ├── GPUImageRawDataInput.h │ ├── GPUImageRawDataInput.m │ ├── GPUImageRawDataOutput.h │ ├── GPUImageRawDataOutput.m │ ├── GPUImageSaturationBlendFilter.h │ ├── GPUImageSaturationBlendFilter.m │ ├── GPUImageSaturationFilter.h │ ├── GPUImageSaturationFilter.m │ ├── GPUImageScreenBlendFilter.h │ ├── GPUImageScreenBlendFilter.m │ ├── GPUImageSepiaFilter.h │ ├── GPUImageSepiaFilter.m │ ├── GPUImageSharpenFilter.h │ ├── GPUImageSharpenFilter.m │ ├── GPUImageShiTomasiFeatureDetectionFilter.h │ ├── GPUImageShiTomasiFeatureDetectionFilter.m │ ├── GPUImageSingleComponentGaussianBlurFilter.h │ ├── GPUImageSingleComponentGaussianBlurFilter.m │ ├── GPUImageSketchFilter.h │ ├── GPUImageSketchFilter.m │ ├── GPUImageSkinToneFilter.h │ ├── GPUImageSkinToneFilter.m │ ├── GPUImageSmoothToonFilter.h │ ├── GPUImageSmoothToonFilter.m │ ├── GPUImageSobelEdgeDetectionFilter.h │ ├── GPUImageSobelEdgeDetectionFilter.m │ ├── GPUImageSoftEleganceFilter.h │ ├── GPUImageSoftEleganceFilter.m │ ├── GPUImageSoftLightBlendFilter.h │ ├── GPUImageSoftLightBlendFilter.m │ ├── GPUImageSolarizeFilter.h │ ├── GPUImageSolarizeFilter.m │ ├── GPUImageSolidColorGenerator.h │ ├── GPUImageSolidColorGenerator.m │ ├── GPUImageSourceOverBlendFilter.h │ ├── GPUImageSourceOverBlendFilter.m │ ├── GPUImageSphereRefractionFilter.h │ ├── GPUImageSphereRefractionFilter.m │ ├── GPUImageStillCamera.h │ ├── GPUImageStillCamera.m │ ├── GPUImageStretchDistortionFilter.h │ ├── GPUImageStretchDistortionFilter.m │ ├── GPUImageSubtractBlendFilter.h │ ├── GPUImageSubtractBlendFilter.m │ ├── GPUImageSwirlFilter.h │ ├── GPUImageSwirlFilter.m │ ├── GPUImageTextureInput.h │ ├── GPUImageTextureInput.m │ ├── GPUImageTextureOutput.h │ ├── GPUImageTextureOutput.m │ ├── GPUImageThreeInputFilter.h │ ├── GPUImageThreeInputFilter.m │ ├── GPUImageThresholdEdgeDetectionFilter.h │ ├── GPUImageThresholdEdgeDetectionFilter.m │ ├── GPUImageThresholdSketchFilter.h │ ├── GPUImageThresholdSketchFilter.m │ ├── GPUImageThresholdedNonMaximumSuppressionFilter.h │ ├── GPUImageThresholdedNonMaximumSuppressionFilter.m │ ├── GPUImageTiltShiftFilter.h │ ├── GPUImageTiltShiftFilter.m │ ├── GPUImageToneCurveFilter.h │ ├── GPUImageToneCurveFilter.m │ ├── GPUImageToonFilter.h │ ├── GPUImageToonFilter.m │ ├── GPUImageTransformFilter.h │ ├── GPUImageTransformFilter.m │ ├── GPUImageTwoInputCrossTextureSamplingFilter.h │ ├── GPUImageTwoInputCrossTextureSamplingFilter.m │ ├── GPUImageTwoInputFilter.h │ ├── GPUImageTwoInputFilter.m │ ├── GPUImageTwoPassFilter.h │ ├── GPUImageTwoPassFilter.m │ ├── GPUImageTwoPassTextureSamplingFilter.h │ ├── GPUImageTwoPassTextureSamplingFilter.m │ ├── GPUImageUIElement.h │ ├── GPUImageUIElement.m │ ├── GPUImageUnsharpMaskFilter.h │ ├── GPUImageUnsharpMaskFilter.m │ ├── GPUImageVibranceFilter.h │ ├── GPUImageVibranceFilter.m │ ├── GPUImageVideoCamera.h │ ├── GPUImageVideoCamera.m │ ├── GPUImageVignetteFilter.h │ ├── GPUImageVignetteFilter.m │ ├── GPUImageVoronoiConsumerFilter.h │ ├── GPUImageVoronoiConsumerFilter.m │ ├── GPUImageWeakPixelInclusionFilter.h │ ├── GPUImageWeakPixelInclusionFilter.m │ ├── GPUImageWhiteBalanceFilter.h │ ├── GPUImageWhiteBalanceFilter.m │ ├── GPUImageXYDerivativeFilter.h │ ├── GPUImageXYDerivativeFilter.m │ ├── GPUImageZoomBlurFilter.h │ ├── GPUImageZoomBlurFilter.m │ ├── GPUImageiOSBlurFilter.h │ ├── GPUImageiOSBlurFilter.m │ ├── Mac │ ├── GPUImage.h │ ├── GPUImageAVCamera.h │ ├── GPUImageAVCamera.m │ ├── GPUImageContext.h │ ├── GPUImageContext.m │ ├── GPUImageMac-Info.plist │ ├── GPUImageMac-Prefix.pch │ ├── GPUImageMovieWriter.h │ ├── GPUImageMovieWriter.m │ ├── GPUImagePicture.h │ ├── GPUImagePicture.m │ ├── GPUImageView.h │ ├── GPUImageView.m │ └── en.lproj │ │ └── InfoPlist.strings │ └── iOS │ ├── Framework │ ├── GPUImageFramework.h │ ├── Info.plist │ └── module.modulemap │ ├── GPUImage-Prefix.pch │ ├── GPUImageContext.h │ ├── GPUImageContext.m │ ├── GPUImageMovieWriter.h │ ├── GPUImageMovieWriter.m │ ├── GPUImagePicture+TextureSubimage.h │ ├── GPUImagePicture+TextureSubimage.m │ ├── GPUImagePicture.h │ ├── GPUImagePicture.m │ ├── GPUImageView.h │ └── GPUImageView.m ├── GPUImageFilter-09 ├── GPUImageFilter.xcodeproj │ ├── project.pbxproj │ ├── project.xcworkspace │ │ ├── contents.xcworkspacedata │ │ └── xcuserdata │ │ │ ├── mac.xcuserdatad │ │ │ └── UserInterfaceState.xcuserstate │ │ │ └── qinmin.xcuserdatad │ │ │ └── UserInterfaceState.xcuserstate │ └── xcuserdata │ │ ├── mac.xcuserdatad │ │ ├── xcdebugger │ │ │ └── Breakpoints_v2.xcbkptlist │ │ └── xcschemes │ │ │ ├── GPUImageFilter.xcscheme │ │ │ └── xcschememanagement.plist │ │ └── qinmin.xcuserdatad │ │ ├── xcdebugger │ │ └── Breakpoints_v2.xcbkptlist │ │ └── xcschemes │ │ ├── GPUImageFilter.xcscheme │ │ └── xcschememanagement.plist ├── GPUImageFilter │ ├── 3.jpg │ ├── AppDelegate.h │ ├── AppDelegate.m │ ├── Assets.xcassets │ │ └── AppIcon.appiconset │ │ │ └── Contents.json │ ├── Base.lproj │ │ ├── LaunchScreen.storyboard │ │ └── Main.storyboard │ ├── Info.plist │ ├── Math │ │ ├── GLMath.c │ │ ├── GLMath.h │ │ ├── GLMathBezierCurve.c │ │ ├── GLMathBezierCurve.h │ │ ├── GLMathMatrix.c │ │ ├── GLMathMatrix.h │ │ ├── GLMathMatrixStack.c │ │ ├── GLMathMatrixStack.h │ │ ├── GLMathQuaternion.c │ │ ├── GLMathQuaternion.h │ │ ├── GLMathTransforms.c │ │ ├── GLMathTransforms.h │ │ ├── GLMathTypes.h │ │ ├── GLMathUtilities.c │ │ ├── GLMathUtilities.h │ │ ├── GLMathUtilitiesInline.c │ │ ├── GLMathVector.c │ │ └── GLMathVector.h │ ├── QM3DLightFilter.h │ ├── QM3DLightFilter.mm │ ├── QMFishEyeFilter.h │ ├── QMFishEyeFilter.m │ ├── Sphere.obj │ ├── Utils │ │ ├── QMImageHelper.h │ │ ├── QMImageHelper.m │ │ ├── TinyOBJModel.h │ │ ├── TinyOBJModel.mm │ │ ├── tiny_obj_loader.h │ │ └── tiny_obj_loader.mm │ ├── ViewController.h │ ├── ViewController.m │ └── main.m ├── GPUImageFilterTests │ ├── GPUImageFilterTests.m │ └── Info.plist ├── GPUImageFilterUITests │ ├── GPUImageFilterUITests.m │ └── Info.plist └── framework │ ├── GPUImage.xcodeproj │ ├── project.pbxproj │ ├── project.xcworkspace │ │ ├── contents.xcworkspacedata │ │ └── xcuserdata │ │ │ └── mac.xcuserdatad │ │ │ ├── UserInterfaceState.xcuserstate │ │ │ └── WorkspaceSettings.xcsettings │ ├── xcshareddata │ │ └── xcschemes │ │ │ ├── Documentation.xcscheme │ │ │ ├── GPUImage.xcscheme │ │ │ └── GPUImageFramework.xcscheme │ └── xcuserdata │ │ ├── mac.xcuserdatad │ │ └── xcschemes │ │ │ └── xcschememanagement.plist │ │ └── qinmin.xcuserdatad │ │ └── xcschemes │ │ └── xcschememanagement.plist │ ├── GPUImageMac.xcodeproj │ ├── project.pbxproj │ └── xcshareddata │ │ └── xcschemes │ │ └── GPUImage.xcscheme │ ├── Resources │ ├── lookup.png │ ├── lookup_amatorka.png │ ├── lookup_miss_etikate.png │ ├── lookup_soft_elegance_1.png │ └── lookup_soft_elegance_2.png │ └── Source │ ├── GLProgram.h │ ├── GLProgram.m │ ├── GPUImage.h │ ├── GPUImage3x3ConvolutionFilter.h │ ├── GPUImage3x3ConvolutionFilter.m │ ├── GPUImage3x3TextureSamplingFilter.h │ ├── GPUImage3x3TextureSamplingFilter.m │ ├── GPUImageAdaptiveThresholdFilter.h │ ├── GPUImageAdaptiveThresholdFilter.m │ ├── GPUImageAddBlendFilter.h │ ├── GPUImageAddBlendFilter.m │ ├── GPUImageAlphaBlendFilter.h │ ├── GPUImageAlphaBlendFilter.m │ ├── GPUImageAmatorkaFilter.h │ ├── GPUImageAmatorkaFilter.m │ ├── GPUImageAverageColor.h │ ├── GPUImageAverageColor.m │ ├── GPUImageAverageLuminanceThresholdFilter.h │ ├── GPUImageAverageLuminanceThresholdFilter.m │ ├── GPUImageBilateralFilter.h │ ├── GPUImageBilateralFilter.m │ ├── GPUImageBoxBlurFilter.h │ ├── GPUImageBoxBlurFilter.m │ ├── GPUImageBrightnessFilter.h │ ├── GPUImageBrightnessFilter.m │ ├── GPUImageBuffer.h │ ├── GPUImageBuffer.m │ ├── GPUImageBulgeDistortionFilter.h │ ├── GPUImageBulgeDistortionFilter.m │ ├── GPUImageCGAColorspaceFilter.h │ ├── GPUImageCGAColorspaceFilter.m │ ├── GPUImageCannyEdgeDetectionFilter.h │ ├── GPUImageCannyEdgeDetectionFilter.m │ ├── GPUImageChromaKeyBlendFilter.h │ ├── GPUImageChromaKeyBlendFilter.m │ ├── GPUImageChromaKeyFilter.h │ ├── GPUImageChromaKeyFilter.m │ ├── GPUImageClosingFilter.h │ ├── GPUImageClosingFilter.m │ ├── GPUImageColorBlendFilter.h │ ├── GPUImageColorBlendFilter.m │ ├── GPUImageColorBurnBlendFilter.h │ ├── GPUImageColorBurnBlendFilter.m │ ├── GPUImageColorConversion.h │ ├── GPUImageColorConversion.m │ ├── GPUImageColorDodgeBlendFilter.h │ ├── GPUImageColorDodgeBlendFilter.m │ ├── GPUImageColorInvertFilter.h │ ├── GPUImageColorInvertFilter.m │ ├── GPUImageColorLocalBinaryPatternFilter.h │ ├── GPUImageColorLocalBinaryPatternFilter.m │ ├── GPUImageColorMatrixFilter.h │ ├── GPUImageColorMatrixFilter.m │ ├── GPUImageColorPackingFilter.h │ ├── GPUImageColorPackingFilter.m │ ├── GPUImageColourFASTFeatureDetector.h │ ├── GPUImageColourFASTFeatureDetector.m │ ├── GPUImageColourFASTSamplingOperation.h │ ├── GPUImageColourFASTSamplingOperation.m │ ├── GPUImageContrastFilter.h │ ├── GPUImageContrastFilter.m │ ├── GPUImageCropFilter.h │ ├── GPUImageCropFilter.m │ ├── GPUImageCrosshairGenerator.h │ ├── GPUImageCrosshairGenerator.m │ ├── GPUImageCrosshatchFilter.h │ ├── GPUImageCrosshatchFilter.m │ ├── GPUImageDarkenBlendFilter.h │ ├── GPUImageDarkenBlendFilter.m │ ├── GPUImageDifferenceBlendFilter.h │ ├── GPUImageDifferenceBlendFilter.m │ ├── GPUImageDilationFilter.h │ ├── GPUImageDilationFilter.m │ ├── GPUImageDirectionalNonMaximumSuppressionFilter.h │ ├── GPUImageDirectionalNonMaximumSuppressionFilter.m │ ├── GPUImageDirectionalSobelEdgeDetectionFilter.h │ ├── GPUImageDirectionalSobelEdgeDetectionFilter.m │ ├── GPUImageDissolveBlendFilter.h │ ├── GPUImageDissolveBlendFilter.m │ ├── GPUImageDivideBlendFilter.h │ ├── GPUImageDivideBlendFilter.m │ ├── GPUImageEmbossFilter.h │ ├── GPUImageEmbossFilter.m │ ├── GPUImageErosionFilter.h │ ├── GPUImageErosionFilter.m │ ├── GPUImageExclusionBlendFilter.h │ ├── GPUImageExclusionBlendFilter.m │ ├── GPUImageExposureFilter.h │ ├── GPUImageExposureFilter.m │ ├── GPUImageFASTCornerDetectionFilter.h │ ├── GPUImageFASTCornerDetectionFilter.m │ ├── GPUImageFalseColorFilter.h │ ├── GPUImageFalseColorFilter.m │ ├── GPUImageFilter.h │ ├── GPUImageFilter.m │ ├── GPUImageFilterGroup.h │ ├── GPUImageFilterGroup.m │ ├── GPUImageFilterPipeline.h │ ├── GPUImageFilterPipeline.m │ ├── GPUImageFourInputFilter.h │ ├── GPUImageFourInputFilter.m │ ├── GPUImageFramebuffer.h │ ├── GPUImageFramebuffer.m │ ├── GPUImageFramebufferCache.h │ ├── GPUImageFramebufferCache.m │ ├── GPUImageGammaFilter.h │ ├── GPUImageGammaFilter.m │ ├── GPUImageGaussianBlurFilter.h │ ├── GPUImageGaussianBlurFilter.m │ ├── GPUImageGaussianBlurPositionFilter.h │ ├── GPUImageGaussianBlurPositionFilter.m │ ├── GPUImageGaussianSelectiveBlurFilter.h │ ├── GPUImageGaussianSelectiveBlurFilter.m │ ├── GPUImageGlassSphereFilter.h │ ├── GPUImageGlassSphereFilter.m │ ├── GPUImageGrayscaleFilter.h │ ├── GPUImageGrayscaleFilter.m │ ├── GPUImageHSBFilter.h │ ├── GPUImageHSBFilter.m │ ├── GPUImageHalftoneFilter.h │ ├── GPUImageHalftoneFilter.m │ ├── GPUImageHardLightBlendFilter.h │ ├── GPUImageHardLightBlendFilter.m │ ├── GPUImageHarrisCornerDetectionFilter.h │ ├── GPUImageHarrisCornerDetectionFilter.m │ ├── GPUImageHazeFilter.h │ ├── GPUImageHazeFilter.m │ ├── GPUImageHighPassFilter.h │ ├── GPUImageHighPassFilter.m │ ├── GPUImageHighlightShadowFilter.h │ ├── GPUImageHighlightShadowFilter.m │ ├── GPUImageHighlightShadowTintFilter.h │ ├── GPUImageHighlightShadowTintFilter.m │ ├── GPUImageHistogramEqualizationFilter.h │ ├── GPUImageHistogramEqualizationFilter.m │ ├── GPUImageHistogramFilter.h │ ├── GPUImageHistogramFilter.m │ ├── GPUImageHistogramGenerator.h │ ├── GPUImageHistogramGenerator.m │ ├── GPUImageHoughTransformLineDetector.h │ ├── GPUImageHoughTransformLineDetector.m │ ├── GPUImageHueBlendFilter.h │ ├── GPUImageHueBlendFilter.m │ ├── GPUImageHueFilter.h │ ├── GPUImageHueFilter.m │ ├── GPUImageJFAVoronoiFilter.h │ ├── GPUImageJFAVoronoiFilter.m │ ├── GPUImageKuwaharaFilter.h │ ├── GPUImageKuwaharaFilter.m │ ├── GPUImageKuwaharaRadius3Filter.h │ ├── GPUImageKuwaharaRadius3Filter.m │ ├── GPUImageLanczosResamplingFilter.h │ ├── GPUImageLanczosResamplingFilter.m │ ├── GPUImageLaplacianFilter.h │ ├── GPUImageLaplacianFilter.m │ ├── GPUImageLevelsFilter.h │ ├── GPUImageLevelsFilter.m │ ├── GPUImageLightenBlendFilter.h │ ├── GPUImageLightenBlendFilter.m │ ├── GPUImageLineGenerator.h │ ├── GPUImageLineGenerator.m │ ├── GPUImageLinearBurnBlendFilter.h │ ├── GPUImageLinearBurnBlendFilter.m │ ├── GPUImageLocalBinaryPatternFilter.h │ ├── GPUImageLocalBinaryPatternFilter.m │ ├── GPUImageLookupFilter.h │ ├── GPUImageLookupFilter.m │ ├── GPUImageLowPassFilter.h │ ├── GPUImageLowPassFilter.m │ ├── GPUImageLuminanceRangeFilter.h │ ├── GPUImageLuminanceRangeFilter.m │ ├── GPUImageLuminanceThresholdFilter.h │ ├── GPUImageLuminanceThresholdFilter.m │ ├── GPUImageLuminosity.h │ ├── GPUImageLuminosity.m │ ├── GPUImageLuminosityBlendFilter.h │ ├── GPUImageLuminosityBlendFilter.m │ ├── GPUImageMaskFilter.h │ ├── GPUImageMaskFilter.m │ ├── GPUImageMedianFilter.h │ ├── GPUImageMedianFilter.m │ ├── GPUImageMissEtikateFilter.h │ ├── GPUImageMissEtikateFilter.m │ ├── GPUImageMonochromeFilter.h │ ├── GPUImageMonochromeFilter.m │ ├── GPUImageMosaicFilter.h │ ├── GPUImageMosaicFilter.m │ ├── GPUImageMotionBlurFilter.h │ ├── GPUImageMotionBlurFilter.m │ ├── GPUImageMotionDetector.h │ ├── GPUImageMotionDetector.m │ ├── GPUImageMovie.h │ ├── GPUImageMovie.m │ ├── GPUImageMovieComposition.h │ ├── GPUImageMovieComposition.m │ ├── GPUImageMultiplyBlendFilter.h │ ├── GPUImageMultiplyBlendFilter.m │ ├── GPUImageNobleCornerDetectionFilter.h │ ├── GPUImageNobleCornerDetectionFilter.m │ ├── GPUImageNonMaximumSuppressionFilter.h │ ├── GPUImageNonMaximumSuppressionFilter.m │ ├── GPUImageNormalBlendFilter.h │ ├── GPUImageNormalBlendFilter.m │ ├── GPUImageOpacityFilter.h │ ├── GPUImageOpacityFilter.m │ ├── GPUImageOpeningFilter.h │ ├── GPUImageOpeningFilter.m │ ├── GPUImageOutput.h │ ├── GPUImageOutput.m │ ├── GPUImageOverlayBlendFilter.h │ ├── GPUImageOverlayBlendFilter.m │ ├── GPUImageParallelCoordinateLineTransformFilter.h │ ├── GPUImageParallelCoordinateLineTransformFilter.m │ ├── GPUImagePerlinNoiseFilter.h │ ├── GPUImagePerlinNoiseFilter.m │ ├── GPUImagePinchDistortionFilter.h │ ├── GPUImagePinchDistortionFilter.m │ ├── GPUImagePixellateFilter.h │ ├── GPUImagePixellateFilter.m │ ├── GPUImagePixellatePositionFilter.h │ ├── GPUImagePixellatePositionFilter.m │ ├── GPUImagePoissonBlendFilter.h │ ├── GPUImagePoissonBlendFilter.m │ ├── GPUImagePolarPixellateFilter.h │ ├── GPUImagePolarPixellateFilter.m │ ├── GPUImagePolkaDotFilter.h │ ├── GPUImagePolkaDotFilter.m │ ├── GPUImagePosterizeFilter.h │ ├── GPUImagePosterizeFilter.m │ ├── GPUImagePrewittEdgeDetectionFilter.h │ ├── GPUImagePrewittEdgeDetectionFilter.m │ ├── GPUImageRGBClosingFilter.h │ ├── GPUImageRGBClosingFilter.m │ ├── GPUImageRGBDilationFilter.h │ ├── GPUImageRGBDilationFilter.m │ ├── GPUImageRGBErosionFilter.h │ ├── GPUImageRGBErosionFilter.m │ ├── GPUImageRGBFilter.h │ ├── GPUImageRGBFilter.m │ ├── GPUImageRGBOpeningFilter.h │ ├── GPUImageRGBOpeningFilter.m │ ├── GPUImageRawDataInput.h │ ├── GPUImageRawDataInput.m │ ├── GPUImageRawDataOutput.h │ ├── GPUImageRawDataOutput.m │ ├── GPUImageSaturationBlendFilter.h │ ├── GPUImageSaturationBlendFilter.m │ ├── GPUImageSaturationFilter.h │ ├── GPUImageSaturationFilter.m │ ├── GPUImageScreenBlendFilter.h │ ├── GPUImageScreenBlendFilter.m │ ├── GPUImageSepiaFilter.h │ ├── GPUImageSepiaFilter.m │ ├── GPUImageSharpenFilter.h │ ├── GPUImageSharpenFilter.m │ ├── GPUImageShiTomasiFeatureDetectionFilter.h │ ├── GPUImageShiTomasiFeatureDetectionFilter.m │ ├── GPUImageSingleComponentGaussianBlurFilter.h │ ├── GPUImageSingleComponentGaussianBlurFilter.m │ ├── GPUImageSketchFilter.h │ ├── GPUImageSketchFilter.m │ ├── GPUImageSkinToneFilter.h │ ├── GPUImageSkinToneFilter.m │ ├── GPUImageSmoothToonFilter.h │ ├── GPUImageSmoothToonFilter.m │ ├── GPUImageSobelEdgeDetectionFilter.h │ ├── GPUImageSobelEdgeDetectionFilter.m │ ├── GPUImageSoftEleganceFilter.h │ ├── GPUImageSoftEleganceFilter.m │ ├── GPUImageSoftLightBlendFilter.h │ ├── GPUImageSoftLightBlendFilter.m │ ├── GPUImageSolarizeFilter.h │ ├── GPUImageSolarizeFilter.m │ ├── GPUImageSolidColorGenerator.h │ ├── GPUImageSolidColorGenerator.m │ ├── GPUImageSourceOverBlendFilter.h │ ├── GPUImageSourceOverBlendFilter.m │ ├── GPUImageSphereRefractionFilter.h │ ├── GPUImageSphereRefractionFilter.m │ ├── GPUImageStillCamera.h │ ├── GPUImageStillCamera.m │ ├── GPUImageStretchDistortionFilter.h │ ├── GPUImageStretchDistortionFilter.m │ ├── GPUImageSubtractBlendFilter.h │ ├── GPUImageSubtractBlendFilter.m │ ├── GPUImageSwirlFilter.h │ ├── GPUImageSwirlFilter.m │ ├── GPUImageTextureInput.h │ ├── GPUImageTextureInput.m │ ├── GPUImageTextureOutput.h │ ├── GPUImageTextureOutput.m │ ├── GPUImageThreeInputFilter.h │ ├── GPUImageThreeInputFilter.m │ ├── GPUImageThresholdEdgeDetectionFilter.h │ ├── GPUImageThresholdEdgeDetectionFilter.m │ ├── GPUImageThresholdSketchFilter.h │ ├── GPUImageThresholdSketchFilter.m │ ├── GPUImageThresholdedNonMaximumSuppressionFilter.h │ ├── GPUImageThresholdedNonMaximumSuppressionFilter.m │ ├── GPUImageTiltShiftFilter.h │ ├── GPUImageTiltShiftFilter.m │ ├── GPUImageToneCurveFilter.h │ ├── GPUImageToneCurveFilter.m │ ├── GPUImageToonFilter.h │ ├── GPUImageToonFilter.m │ ├── GPUImageTransformFilter.h │ ├── GPUImageTransformFilter.m │ ├── GPUImageTwoInputCrossTextureSamplingFilter.h │ ├── GPUImageTwoInputCrossTextureSamplingFilter.m │ ├── GPUImageTwoInputFilter.h │ ├── GPUImageTwoInputFilter.m │ ├── GPUImageTwoPassFilter.h │ ├── GPUImageTwoPassFilter.m │ ├── GPUImageTwoPassTextureSamplingFilter.h │ ├── GPUImageTwoPassTextureSamplingFilter.m │ ├── GPUImageUIElement.h │ ├── GPUImageUIElement.m │ ├── GPUImageUnsharpMaskFilter.h │ ├── GPUImageUnsharpMaskFilter.m │ ├── GPUImageVibranceFilter.h │ ├── GPUImageVibranceFilter.m │ ├── GPUImageVideoCamera.h │ ├── GPUImageVideoCamera.m │ ├── GPUImageVignetteFilter.h │ ├── GPUImageVignetteFilter.m │ ├── GPUImageVoronoiConsumerFilter.h │ ├── GPUImageVoronoiConsumerFilter.m │ ├── GPUImageWeakPixelInclusionFilter.h │ ├── GPUImageWeakPixelInclusionFilter.m │ ├── GPUImageWhiteBalanceFilter.h │ ├── GPUImageWhiteBalanceFilter.m │ ├── GPUImageXYDerivativeFilter.h │ ├── GPUImageXYDerivativeFilter.m │ ├── GPUImageZoomBlurFilter.h │ ├── GPUImageZoomBlurFilter.m │ ├── GPUImageiOSBlurFilter.h │ ├── GPUImageiOSBlurFilter.m │ ├── Mac │ ├── GPUImage.h │ ├── GPUImageAVCamera.h │ ├── GPUImageAVCamera.m │ ├── GPUImageContext.h │ ├── GPUImageContext.m │ ├── GPUImageMac-Info.plist │ ├── GPUImageMac-Prefix.pch │ ├── GPUImageMovieWriter.h │ ├── GPUImageMovieWriter.m │ ├── GPUImagePicture.h │ ├── GPUImagePicture.m │ ├── GPUImageView.h │ ├── GPUImageView.m │ └── en.lproj │ │ └── InfoPlist.strings │ └── iOS │ ├── Framework │ ├── GPUImageFramework.h │ ├── Info.plist │ └── module.modulemap │ ├── GPUImage-Prefix.pch │ ├── GPUImageContext.h │ ├── GPUImageContext.m │ ├── GPUImageMovieWriter.h │ ├── GPUImageMovieWriter.m │ ├── GPUImagePicture+TextureSubimage.h │ ├── GPUImagePicture+TextureSubimage.m │ ├── GPUImagePicture.h │ ├── GPUImagePicture.m │ ├── GPUImageView.h │ └── GPUImageView.m ├── GPUImageFilter-10 ├── GPUImageFilter.xcodeproj │ ├── project.pbxproj │ ├── project.xcworkspace │ │ ├── contents.xcworkspacedata │ │ └── xcuserdata │ │ │ ├── mac.xcuserdatad │ │ │ └── UserInterfaceState.xcuserstate │ │ │ └── qinmin.xcuserdatad │ │ │ └── UserInterfaceState.xcuserstate │ └── xcuserdata │ │ ├── mac.xcuserdatad │ │ ├── xcdebugger │ │ │ └── Breakpoints_v2.xcbkptlist │ │ └── xcschemes │ │ │ ├── GPUImageFilter.xcscheme │ │ │ └── xcschememanagement.plist │ │ └── qinmin.xcuserdatad │ │ ├── xcdebugger │ │ └── Breakpoints_v2.xcbkptlist │ │ └── xcschemes │ │ ├── GPUImageFilter.xcscheme │ │ └── xcschememanagement.plist ├── GPUImageFilter │ ├── 1.jpg │ ├── 2.jpg │ ├── 3.jpg │ ├── AppDelegate.h │ ├── AppDelegate.m │ ├── Assets.xcassets │ │ └── AppIcon.appiconset │ │ │ └── Contents.json │ ├── Base.lproj │ │ ├── LaunchScreen.storyboard │ │ └── Main.storyboard │ ├── Info.plist │ ├── QMImageHelper.h │ ├── QMImageHelper.m │ ├── ViewController.h │ ├── ViewController.m │ └── main.m ├── GPUImageFilterTests │ ├── GPUImageFilterTests.m │ └── Info.plist ├── GPUImageFilterUITests │ ├── GPUImageFilterUITests.m │ └── Info.plist └── framework │ ├── GPUImage.xcodeproj │ ├── project.pbxproj │ ├── project.xcworkspace │ │ ├── contents.xcworkspacedata │ │ └── xcuserdata │ │ │ └── mac.xcuserdatad │ │ │ ├── UserInterfaceState.xcuserstate │ │ │ └── WorkspaceSettings.xcsettings │ ├── xcshareddata │ │ └── xcschemes │ │ │ ├── Documentation.xcscheme │ │ │ ├── GPUImage.xcscheme │ │ │ └── GPUImageFramework.xcscheme │ └── xcuserdata │ │ ├── mac.xcuserdatad │ │ └── xcschemes │ │ │ └── xcschememanagement.plist │ │ └── qinmin.xcuserdatad │ │ └── xcschemes │ │ └── xcschememanagement.plist │ ├── GPUImageMac.xcodeproj │ ├── project.pbxproj │ └── xcshareddata │ │ └── xcschemes │ │ └── GPUImage.xcscheme │ ├── Resources │ ├── lookup.jpg │ ├── lookup.png │ ├── lookup1.jpg │ ├── lookup1.png │ ├── lookup_amatorka.png │ ├── lookup_miss_etikate.png │ ├── lookup_soft_elegance_1.png │ └── lookup_soft_elegance_2.png │ └── Source │ ├── GLProgram.h │ ├── GLProgram.m │ ├── GPUImage.h │ ├── GPUImage3x3ConvolutionFilter.h │ ├── GPUImage3x3ConvolutionFilter.m │ ├── GPUImage3x3TextureSamplingFilter.h │ ├── GPUImage3x3TextureSamplingFilter.m │ ├── GPUImageAdaptiveThresholdFilter.h │ ├── GPUImageAdaptiveThresholdFilter.m │ ├── GPUImageAddBlendFilter.h │ ├── GPUImageAddBlendFilter.m │ ├── GPUImageAlphaBlendFilter.h │ ├── GPUImageAlphaBlendFilter.m │ ├── GPUImageAmatorkaFilter.h │ ├── GPUImageAmatorkaFilter.m │ ├── GPUImageAverageColor.h │ ├── GPUImageAverageColor.m │ ├── GPUImageAverageLuminanceThresholdFilter.h │ ├── GPUImageAverageLuminanceThresholdFilter.m │ ├── GPUImageBilateralFilter.h │ ├── GPUImageBilateralFilter.m │ ├── GPUImageBoxBlurFilter.h │ ├── GPUImageBoxBlurFilter.m │ ├── GPUImageBrightnessFilter.h │ ├── GPUImageBrightnessFilter.m │ ├── GPUImageBuffer.h │ ├── GPUImageBuffer.m │ ├── GPUImageBulgeDistortionFilter.h │ ├── GPUImageBulgeDistortionFilter.m │ ├── GPUImageCGAColorspaceFilter.h │ ├── GPUImageCGAColorspaceFilter.m │ ├── GPUImageCannyEdgeDetectionFilter.h │ ├── GPUImageCannyEdgeDetectionFilter.m │ ├── GPUImageChromaKeyBlendFilter.h │ ├── GPUImageChromaKeyBlendFilter.m │ ├── GPUImageChromaKeyFilter.h │ ├── GPUImageChromaKeyFilter.m │ ├── GPUImageClosingFilter.h │ ├── GPUImageClosingFilter.m │ ├── GPUImageColorBlendFilter.h │ ├── GPUImageColorBlendFilter.m │ ├── GPUImageColorBurnBlendFilter.h │ ├── GPUImageColorBurnBlendFilter.m │ ├── GPUImageColorConversion.h │ ├── GPUImageColorConversion.m │ ├── GPUImageColorDodgeBlendFilter.h │ ├── GPUImageColorDodgeBlendFilter.m │ ├── GPUImageColorInvertFilter.h │ ├── GPUImageColorInvertFilter.m │ ├── GPUImageColorLocalBinaryPatternFilter.h │ ├── GPUImageColorLocalBinaryPatternFilter.m │ ├── GPUImageColorMatrixFilter.h │ ├── GPUImageColorMatrixFilter.m │ ├── GPUImageColorPackingFilter.h │ ├── GPUImageColorPackingFilter.m │ ├── GPUImageColourFASTFeatureDetector.h │ ├── GPUImageColourFASTFeatureDetector.m │ ├── GPUImageColourFASTSamplingOperation.h │ ├── GPUImageColourFASTSamplingOperation.m │ ├── GPUImageContrastFilter.h │ ├── GPUImageContrastFilter.m │ ├── GPUImageCropFilter.h │ ├── GPUImageCropFilter.m │ ├── GPUImageCrosshairGenerator.h │ ├── GPUImageCrosshairGenerator.m │ ├── GPUImageCrosshatchFilter.h │ ├── GPUImageCrosshatchFilter.m │ ├── GPUImageDarkenBlendFilter.h │ ├── GPUImageDarkenBlendFilter.m │ ├── GPUImageDifferenceBlendFilter.h │ ├── GPUImageDifferenceBlendFilter.m │ ├── GPUImageDilationFilter.h │ ├── GPUImageDilationFilter.m │ ├── GPUImageDirectionalNonMaximumSuppressionFilter.h │ ├── GPUImageDirectionalNonMaximumSuppressionFilter.m │ ├── GPUImageDirectionalSobelEdgeDetectionFilter.h │ ├── GPUImageDirectionalSobelEdgeDetectionFilter.m │ ├── GPUImageDissolveBlendFilter.h │ ├── GPUImageDissolveBlendFilter.m │ ├── GPUImageDivideBlendFilter.h │ ├── GPUImageDivideBlendFilter.m │ ├── GPUImageEmbossFilter.h │ ├── GPUImageEmbossFilter.m │ ├── GPUImageErosionFilter.h │ ├── GPUImageErosionFilter.m │ ├── GPUImageExclusionBlendFilter.h │ ├── GPUImageExclusionBlendFilter.m │ ├── GPUImageExposureFilter.h │ ├── GPUImageExposureFilter.m │ ├── GPUImageFASTCornerDetectionFilter.h │ ├── GPUImageFASTCornerDetectionFilter.m │ ├── GPUImageFalseColorFilter.h │ ├── GPUImageFalseColorFilter.m │ ├── GPUImageFilter.h │ ├── GPUImageFilter.m │ ├── GPUImageFilterGroup.h │ ├── GPUImageFilterGroup.m │ ├── GPUImageFilterPipeline.h │ ├── GPUImageFilterPipeline.m │ ├── GPUImageFourInputFilter.h │ ├── GPUImageFourInputFilter.m │ ├── GPUImageFramebuffer.h │ ├── GPUImageFramebuffer.m │ ├── GPUImageFramebufferCache.h │ ├── GPUImageFramebufferCache.m │ ├── GPUImageGammaFilter.h │ ├── GPUImageGammaFilter.m │ ├── GPUImageGaussianBlurFilter.h │ ├── GPUImageGaussianBlurFilter.m │ ├── GPUImageGaussianBlurPositionFilter.h │ ├── GPUImageGaussianBlurPositionFilter.m │ ├── GPUImageGaussianSelectiveBlurFilter.h │ ├── GPUImageGaussianSelectiveBlurFilter.m │ ├── GPUImageGlassSphereFilter.h │ ├── GPUImageGlassSphereFilter.m │ ├── GPUImageGrayscaleFilter.h │ ├── GPUImageGrayscaleFilter.m │ ├── GPUImageHSBFilter.h │ ├── GPUImageHSBFilter.m │ ├── GPUImageHalftoneFilter.h │ ├── GPUImageHalftoneFilter.m │ ├── GPUImageHardLightBlendFilter.h │ ├── GPUImageHardLightBlendFilter.m │ ├── GPUImageHarrisCornerDetectionFilter.h │ ├── GPUImageHarrisCornerDetectionFilter.m │ ├── GPUImageHazeFilter.h │ ├── GPUImageHazeFilter.m │ ├── GPUImageHighPassFilter.h │ ├── GPUImageHighPassFilter.m │ ├── GPUImageHighlightShadowFilter.h │ ├── GPUImageHighlightShadowFilter.m │ ├── GPUImageHighlightShadowTintFilter.h │ ├── GPUImageHighlightShadowTintFilter.m │ ├── GPUImageHistogramEqualizationFilter.h │ ├── GPUImageHistogramEqualizationFilter.m │ ├── GPUImageHistogramFilter.h │ ├── GPUImageHistogramFilter.m │ ├── GPUImageHistogramGenerator.h │ ├── GPUImageHistogramGenerator.m │ ├── GPUImageHoughTransformLineDetector.h │ ├── GPUImageHoughTransformLineDetector.m │ ├── GPUImageHueBlendFilter.h │ ├── GPUImageHueBlendFilter.m │ ├── GPUImageHueFilter.h │ ├── GPUImageHueFilter.m │ ├── GPUImageJFAVoronoiFilter.h │ ├── GPUImageJFAVoronoiFilter.m │ ├── GPUImageKuwaharaFilter.h │ ├── GPUImageKuwaharaFilter.m │ ├── GPUImageKuwaharaRadius3Filter.h │ ├── GPUImageKuwaharaRadius3Filter.m │ ├── GPUImageLanczosResamplingFilter.h │ ├── GPUImageLanczosResamplingFilter.m │ ├── GPUImageLaplacianFilter.h │ ├── GPUImageLaplacianFilter.m │ ├── GPUImageLevelsFilter.h │ ├── GPUImageLevelsFilter.m │ ├── GPUImageLightenBlendFilter.h │ ├── GPUImageLightenBlendFilter.m │ ├── GPUImageLineGenerator.h │ ├── GPUImageLineGenerator.m │ ├── GPUImageLinearBurnBlendFilter.h │ ├── GPUImageLinearBurnBlendFilter.m │ ├── GPUImageLocalBinaryPatternFilter.h │ ├── GPUImageLocalBinaryPatternFilter.m │ ├── GPUImageLookupFilter.h │ ├── GPUImageLookupFilter.m │ ├── GPUImageLowPassFilter.h │ ├── GPUImageLowPassFilter.m │ ├── GPUImageLuminanceRangeFilter.h │ ├── GPUImageLuminanceRangeFilter.m │ ├── GPUImageLuminanceThresholdFilter.h │ ├── GPUImageLuminanceThresholdFilter.m │ ├── GPUImageLuminosity.h │ ├── GPUImageLuminosity.m │ ├── GPUImageLuminosityBlendFilter.h │ ├── GPUImageLuminosityBlendFilter.m │ ├── GPUImageMaskFilter.h │ ├── GPUImageMaskFilter.m │ ├── GPUImageMedianFilter.h │ ├── GPUImageMedianFilter.m │ ├── GPUImageMissEtikateFilter.h │ ├── GPUImageMissEtikateFilter.m │ ├── GPUImageMonochromeFilter.h │ ├── GPUImageMonochromeFilter.m │ ├── GPUImageMosaicFilter.h │ ├── GPUImageMosaicFilter.m │ ├── GPUImageMotionBlurFilter.h │ ├── GPUImageMotionBlurFilter.m │ ├── GPUImageMotionDetector.h │ ├── GPUImageMotionDetector.m │ ├── GPUImageMovie.h │ ├── GPUImageMovie.m │ ├── GPUImageMovieComposition.h │ ├── GPUImageMovieComposition.m │ ├── GPUImageMultiplyBlendFilter.h │ ├── GPUImageMultiplyBlendFilter.m │ ├── GPUImageNobleCornerDetectionFilter.h │ ├── GPUImageNobleCornerDetectionFilter.m │ ├── GPUImageNonMaximumSuppressionFilter.h │ ├── GPUImageNonMaximumSuppressionFilter.m │ ├── GPUImageNormalBlendFilter.h │ ├── GPUImageNormalBlendFilter.m │ ├── GPUImageOpacityFilter.h │ ├── GPUImageOpacityFilter.m │ ├── GPUImageOpeningFilter.h │ ├── GPUImageOpeningFilter.m │ ├── GPUImageOutput.h │ ├── GPUImageOutput.m │ ├── GPUImageOverlayBlendFilter.h │ ├── GPUImageOverlayBlendFilter.m │ ├── GPUImageParallelCoordinateLineTransformFilter.h │ ├── GPUImageParallelCoordinateLineTransformFilter.m │ ├── GPUImagePerlinNoiseFilter.h │ ├── GPUImagePerlinNoiseFilter.m │ ├── GPUImagePinchDistortionFilter.h │ ├── GPUImagePinchDistortionFilter.m │ ├── GPUImagePixellateFilter.h │ ├── GPUImagePixellateFilter.m │ ├── GPUImagePixellatePositionFilter.h │ ├── GPUImagePixellatePositionFilter.m │ ├── GPUImagePoissonBlendFilter.h │ ├── GPUImagePoissonBlendFilter.m │ ├── GPUImagePolarPixellateFilter.h │ ├── GPUImagePolarPixellateFilter.m │ ├── GPUImagePolkaDotFilter.h │ ├── GPUImagePolkaDotFilter.m │ ├── GPUImagePosterizeFilter.h │ ├── GPUImagePosterizeFilter.m │ ├── GPUImagePrewittEdgeDetectionFilter.h │ ├── GPUImagePrewittEdgeDetectionFilter.m │ ├── GPUImageRGBClosingFilter.h │ ├── GPUImageRGBClosingFilter.m │ ├── GPUImageRGBDilationFilter.h │ ├── GPUImageRGBDilationFilter.m │ ├── GPUImageRGBErosionFilter.h │ ├── GPUImageRGBErosionFilter.m │ ├── GPUImageRGBFilter.h │ ├── GPUImageRGBFilter.m │ ├── GPUImageRGBOpeningFilter.h │ ├── GPUImageRGBOpeningFilter.m │ ├── GPUImageRawDataInput.h │ ├── GPUImageRawDataInput.m │ ├── GPUImageRawDataOutput.h │ ├── GPUImageRawDataOutput.m │ ├── GPUImageSaturationBlendFilter.h │ ├── GPUImageSaturationBlendFilter.m │ ├── GPUImageSaturationFilter.h │ ├── GPUImageSaturationFilter.m │ ├── GPUImageScreenBlendFilter.h │ ├── GPUImageScreenBlendFilter.m │ ├── GPUImageSepiaFilter.h │ ├── GPUImageSepiaFilter.m │ ├── GPUImageSharpenFilter.h │ ├── GPUImageSharpenFilter.m │ ├── GPUImageShiTomasiFeatureDetectionFilter.h │ ├── GPUImageShiTomasiFeatureDetectionFilter.m │ ├── GPUImageSingleComponentGaussianBlurFilter.h │ ├── GPUImageSingleComponentGaussianBlurFilter.m │ ├── GPUImageSketchFilter.h │ ├── GPUImageSketchFilter.m │ ├── GPUImageSkinToneFilter.h │ ├── GPUImageSkinToneFilter.m │ ├── GPUImageSmoothToonFilter.h │ ├── GPUImageSmoothToonFilter.m │ ├── GPUImageSobelEdgeDetectionFilter.h │ ├── GPUImageSobelEdgeDetectionFilter.m │ ├── GPUImageSoftEleganceFilter.h │ ├── GPUImageSoftEleganceFilter.m │ ├── GPUImageSoftLightBlendFilter.h │ ├── GPUImageSoftLightBlendFilter.m │ ├── GPUImageSolarizeFilter.h │ ├── GPUImageSolarizeFilter.m │ ├── GPUImageSolidColorGenerator.h │ ├── GPUImageSolidColorGenerator.m │ ├── GPUImageSourceOverBlendFilter.h │ ├── GPUImageSourceOverBlendFilter.m │ ├── GPUImageSphereRefractionFilter.h │ ├── GPUImageSphereRefractionFilter.m │ ├── GPUImageStillCamera.h │ ├── GPUImageStillCamera.m │ ├── GPUImageStretchDistortionFilter.h │ ├── GPUImageStretchDistortionFilter.m │ ├── GPUImageSubtractBlendFilter.h │ ├── GPUImageSubtractBlendFilter.m │ ├── GPUImageSwirlFilter.h │ ├── GPUImageSwirlFilter.m │ ├── GPUImageTextureInput.h │ ├── GPUImageTextureInput.m │ ├── GPUImageTextureOutput.h │ ├── GPUImageTextureOutput.m │ ├── GPUImageThreeInputFilter.h │ ├── GPUImageThreeInputFilter.m │ ├── GPUImageThresholdEdgeDetectionFilter.h │ ├── GPUImageThresholdEdgeDetectionFilter.m │ ├── GPUImageThresholdSketchFilter.h │ ├── GPUImageThresholdSketchFilter.m │ ├── GPUImageThresholdedNonMaximumSuppressionFilter.h │ ├── GPUImageThresholdedNonMaximumSuppressionFilter.m │ ├── GPUImageTiltShiftFilter.h │ ├── GPUImageTiltShiftFilter.m │ ├── GPUImageToneCurveFilter.h │ ├── GPUImageToneCurveFilter.m │ ├── GPUImageToonFilter.h │ ├── GPUImageToonFilter.m │ ├── GPUImageTransformFilter.h │ ├── GPUImageTransformFilter.m │ ├── GPUImageTwoInputCrossTextureSamplingFilter.h │ ├── GPUImageTwoInputCrossTextureSamplingFilter.m │ ├── GPUImageTwoInputFilter.h │ ├── GPUImageTwoInputFilter.m │ ├── GPUImageTwoPassFilter.h │ ├── GPUImageTwoPassFilter.m │ ├── GPUImageTwoPassTextureSamplingFilter.h │ ├── GPUImageTwoPassTextureSamplingFilter.m │ ├── GPUImageUIElement.h │ ├── GPUImageUIElement.m │ ├── GPUImageUnsharpMaskFilter.h │ ├── GPUImageUnsharpMaskFilter.m │ ├── GPUImageVibranceFilter.h │ ├── GPUImageVibranceFilter.m │ ├── GPUImageVideoCamera.h │ ├── GPUImageVideoCamera.m │ ├── GPUImageVignetteFilter.h │ ├── GPUImageVignetteFilter.m │ ├── GPUImageVoronoiConsumerFilter.h │ ├── GPUImageVoronoiConsumerFilter.m │ ├── GPUImageWeakPixelInclusionFilter.h │ ├── GPUImageWeakPixelInclusionFilter.m │ ├── GPUImageWhiteBalanceFilter.h │ ├── GPUImageWhiteBalanceFilter.m │ ├── GPUImageXYDerivativeFilter.h │ ├── GPUImageXYDerivativeFilter.m │ ├── GPUImageZoomBlurFilter.h │ ├── GPUImageZoomBlurFilter.m │ ├── GPUImageiOSBlurFilter.h │ ├── GPUImageiOSBlurFilter.m │ ├── Mac │ ├── GPUImage.h │ ├── GPUImageAVCamera.h │ ├── GPUImageAVCamera.m │ ├── GPUImageContext.h │ ├── GPUImageContext.m │ ├── GPUImageMac-Info.plist │ ├── GPUImageMac-Prefix.pch │ ├── GPUImageMovieWriter.h │ ├── GPUImageMovieWriter.m │ ├── GPUImagePicture.h │ ├── GPUImagePicture.m │ ├── GPUImageView.h │ ├── GPUImageView.m │ └── en.lproj │ │ └── InfoPlist.strings │ └── iOS │ ├── Framework │ ├── GPUImageFramework.h │ ├── Info.plist │ └── module.modulemap │ ├── GPUImage-Prefix.pch │ ├── GPUImageContext.h │ ├── GPUImageContext.m │ ├── GPUImageMovieWriter.h │ ├── GPUImageMovieWriter.m │ ├── GPUImagePicture+TextureSubimage.h │ ├── GPUImagePicture+TextureSubimage.m │ ├── GPUImagePicture.h │ ├── GPUImagePicture.m │ ├── GPUImageView.h │ └── GPUImageView.m ├── README.md ├── UIImage+ ├── UIImage+Alpha.h ├── UIImage+Alpha.m ├── UIImage+Blur.h ├── UIImage+Blur.m ├── UIImage+BoxBlur.h ├── UIImage+BoxBlur.m ├── UIImage+Clip.h ├── UIImage+Clip.m ├── UIImage+Color.h ├── UIImage+Color.m ├── UIImage+Corner.h ├── UIImage+Corner.m ├── UIImage+Mosaic.h ├── UIImage+Mosaic.m ├── UIImage+Rotate.h ├── UIImage+Rotate.m ├── UIImage+SubImage.h └── UIImage+SubImage.m └── copy_filter.sh /GPUImageFilter-04/GPUImageFilter.xcodeproj/project.xcworkspace/contents.xcworkspacedata: -------------------------------------------------------------------------------- 1 | 2 | 4 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /GPUImageFilter-04/GPUImageFilter.xcodeproj/project.xcworkspace/xcuserdata/mac.xcuserdatad/UserInterfaceState.xcuserstate: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/QinminiOS/GPUImage/3a90ecf0f7edc036ecbdad9149776a5d463f5a50/GPUImageFilter-04/GPUImageFilter.xcodeproj/project.xcworkspace/xcuserdata/mac.xcuserdatad/UserInterfaceState.xcuserstate -------------------------------------------------------------------------------- /GPUImageFilter-04/GPUImageFilter/1.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/QinminiOS/GPUImage/3a90ecf0f7edc036ecbdad9149776a5d463f5a50/GPUImageFilter-04/GPUImageFilter/1.jpg -------------------------------------------------------------------------------- /GPUImageFilter-04/GPUImageFilter/AppDelegate.h: -------------------------------------------------------------------------------- 1 | // 2 | // AppDelegate.h 3 | // GPUImageFilter 4 | // 5 | // Created by mac on 17/2/4. 6 | // Copyright © 2017年 Qinmin. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface AppDelegate : UIResponder 12 | 13 | @property (strong, nonatomic) UIWindow *window; 14 | 15 | 16 | @end 17 | 18 | -------------------------------------------------------------------------------- /GPUImageFilter-04/GPUImageFilter/SecondViewController.h: -------------------------------------------------------------------------------- 1 | // 2 | // Second ViewController.h 3 | // GPUImageFilter 4 | // 5 | // Created by mac on 17/5/3. 6 | // Copyright © 2017年 Qinmin. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface SecondViewController : UIViewController 12 | 13 | @end 14 | -------------------------------------------------------------------------------- /GPUImageFilter-04/GPUImageFilter/ViewController.h: -------------------------------------------------------------------------------- 1 | // 2 | // ViewController.h 3 | // GPUImageFilter 4 | // 5 | // Created by mac on 17/2/4. 6 | // Copyright © 2017年 Qinmin. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface ViewController : UIViewController 12 | 13 | 14 | @end 15 | 16 | -------------------------------------------------------------------------------- /GPUImageFilter-04/framework/GPUImage.xcodeproj/project.xcworkspace/contents.xcworkspacedata: -------------------------------------------------------------------------------- 1 | 2 | 4 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /GPUImageFilter-04/framework/GPUImage.xcodeproj/project.xcworkspace/xcuserdata/mac.xcuserdatad/UserInterfaceState.xcuserstate: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/QinminiOS/GPUImage/3a90ecf0f7edc036ecbdad9149776a5d463f5a50/GPUImageFilter-04/framework/GPUImage.xcodeproj/project.xcworkspace/xcuserdata/mac.xcuserdatad/UserInterfaceState.xcuserstate -------------------------------------------------------------------------------- /GPUImageFilter-04/framework/GPUImage.xcodeproj/project.xcworkspace/xcuserdata/mac.xcuserdatad/WorkspaceSettings.xcsettings: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | BuildLocationStyle 6 | UseTargetSettings 7 | 8 | 9 | -------------------------------------------------------------------------------- /GPUImageFilter-04/framework/Resources/lookup.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/QinminiOS/GPUImage/3a90ecf0f7edc036ecbdad9149776a5d463f5a50/GPUImageFilter-04/framework/Resources/lookup.png -------------------------------------------------------------------------------- /GPUImageFilter-04/framework/Resources/lookup_amatorka.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/QinminiOS/GPUImage/3a90ecf0f7edc036ecbdad9149776a5d463f5a50/GPUImageFilter-04/framework/Resources/lookup_amatorka.png -------------------------------------------------------------------------------- /GPUImageFilter-04/framework/Resources/lookup_miss_etikate.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/QinminiOS/GPUImage/3a90ecf0f7edc036ecbdad9149776a5d463f5a50/GPUImageFilter-04/framework/Resources/lookup_miss_etikate.png -------------------------------------------------------------------------------- /GPUImageFilter-04/framework/Resources/lookup_soft_elegance_1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/QinminiOS/GPUImage/3a90ecf0f7edc036ecbdad9149776a5d463f5a50/GPUImageFilter-04/framework/Resources/lookup_soft_elegance_1.png -------------------------------------------------------------------------------- /GPUImageFilter-04/framework/Resources/lookup_soft_elegance_2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/QinminiOS/GPUImage/3a90ecf0f7edc036ecbdad9149776a5d463f5a50/GPUImageFilter-04/framework/Resources/lookup_soft_elegance_2.png -------------------------------------------------------------------------------- /GPUImageFilter-04/framework/Source/GPUImageAdaptiveThresholdFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageFilterGroup.h" 2 | 3 | @interface GPUImageAdaptiveThresholdFilter : GPUImageFilterGroup 4 | 5 | /** A multiplier for the background averaging blur radius in pixels, with a default of 4 6 | */ 7 | @property(readwrite, nonatomic) CGFloat blurRadiusInPixels; 8 | 9 | @end 10 | -------------------------------------------------------------------------------- /GPUImageFilter-04/framework/Source/GPUImageAddBlendFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageTwoInputFilter.h" 2 | 3 | @interface GPUImageAddBlendFilter : GPUImageTwoInputFilter 4 | 5 | @end 6 | -------------------------------------------------------------------------------- /GPUImageFilter-04/framework/Source/GPUImageAlphaBlendFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageTwoInputFilter.h" 2 | 3 | @interface GPUImageAlphaBlendFilter : GPUImageTwoInputFilter 4 | { 5 | GLint mixUniform; 6 | } 7 | 8 | // Mix ranges from 0.0 (only image 1) to 1.0 (only image 2), with 1.0 as the normal level 9 | @property(readwrite, nonatomic) CGFloat mix; 10 | 11 | @end 12 | -------------------------------------------------------------------------------- /GPUImageFilter-04/framework/Source/GPUImageAverageLuminanceThresholdFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageFilterGroup.h" 2 | 3 | @interface GPUImageAverageLuminanceThresholdFilter : GPUImageFilterGroup 4 | 5 | // This is multiplied by the continually calculated average image luminosity to arrive at the final threshold. Default is 1.0. 6 | @property(readwrite, nonatomic) CGFloat thresholdMultiplier; 7 | 8 | @end 9 | -------------------------------------------------------------------------------- /GPUImageFilter-04/framework/Source/GPUImageBoxBlurFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageGaussianBlurFilter.h" 2 | 3 | /** A hardware-accelerated box blur of an image 4 | */ 5 | @interface GPUImageBoxBlurFilter : GPUImageGaussianBlurFilter 6 | 7 | @end 8 | -------------------------------------------------------------------------------- /GPUImageFilter-04/framework/Source/GPUImageBrightnessFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageFilter.h" 2 | 3 | @interface GPUImageBrightnessFilter : GPUImageFilter 4 | { 5 | GLint brightnessUniform; 6 | } 7 | 8 | // Brightness ranges from -1.0 to 1.0, with 0.0 as the normal level 9 | @property(readwrite, nonatomic) CGFloat brightness; 10 | 11 | @end 12 | -------------------------------------------------------------------------------- /GPUImageFilter-04/framework/Source/GPUImageBuffer.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageFilter.h" 2 | 3 | @interface GPUImageBuffer : GPUImageFilter 4 | { 5 | NSMutableArray *bufferedFramebuffers; 6 | } 7 | 8 | @property(readwrite, nonatomic) NSUInteger bufferSize; 9 | 10 | @end 11 | -------------------------------------------------------------------------------- /GPUImageFilter-04/framework/Source/GPUImageCGAColorspaceFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageFilter.h" 2 | 3 | @interface GPUImageCGAColorspaceFilter : GPUImageFilter 4 | 5 | @end 6 | -------------------------------------------------------------------------------- /GPUImageFilter-04/framework/Source/GPUImageColorBlendFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageTwoInputFilter.h" 2 | 3 | @interface GPUImageColorBlendFilter : GPUImageTwoInputFilter 4 | 5 | @end 6 | -------------------------------------------------------------------------------- /GPUImageFilter-04/framework/Source/GPUImageColorBurnBlendFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageTwoInputFilter.h" 2 | 3 | /** Applies a color burn blend of two images 4 | */ 5 | @interface GPUImageColorBurnBlendFilter : GPUImageTwoInputFilter 6 | { 7 | } 8 | 9 | @end 10 | -------------------------------------------------------------------------------- /GPUImageFilter-04/framework/Source/GPUImageColorDodgeBlendFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageTwoInputFilter.h" 2 | 3 | /** Applies a color dodge blend of two images 4 | */ 5 | @interface GPUImageColorDodgeBlendFilter : GPUImageTwoInputFilter 6 | { 7 | } 8 | 9 | @end 10 | -------------------------------------------------------------------------------- /GPUImageFilter-04/framework/Source/GPUImageColorInvertFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageFilter.h" 2 | 3 | @interface GPUImageColorInvertFilter : GPUImageFilter 4 | { 5 | } 6 | 7 | @end 8 | -------------------------------------------------------------------------------- /GPUImageFilter-04/framework/Source/GPUImageColorLocalBinaryPatternFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImage3x3TextureSamplingFilter.h" 2 | 3 | @interface GPUImageColorLocalBinaryPatternFilter : GPUImage3x3TextureSamplingFilter 4 | 5 | @end 6 | -------------------------------------------------------------------------------- /GPUImageFilter-04/framework/Source/GPUImageColorPackingFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageFilter.h" 2 | 3 | @interface GPUImageColorPackingFilter : GPUImageFilter 4 | { 5 | GLint texelWidthUniform, texelHeightUniform; 6 | 7 | CGFloat texelWidth, texelHeight; 8 | } 9 | 10 | @end 11 | -------------------------------------------------------------------------------- /GPUImageFilter-04/framework/Source/GPUImageDarkenBlendFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageTwoInputFilter.h" 2 | 3 | @interface GPUImageDarkenBlendFilter : GPUImageTwoInputFilter 4 | { 5 | } 6 | 7 | @end 8 | -------------------------------------------------------------------------------- /GPUImageFilter-04/framework/Source/GPUImageDifferenceBlendFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageTwoInputFilter.h" 2 | 3 | @interface GPUImageDifferenceBlendFilter : GPUImageTwoInputFilter 4 | { 5 | } 6 | 7 | @end 8 | -------------------------------------------------------------------------------- /GPUImageFilter-04/framework/Source/GPUImageDirectionalSobelEdgeDetectionFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImage3x3TextureSamplingFilter.h" 2 | 3 | @interface GPUImageDirectionalSobelEdgeDetectionFilter : GPUImage3x3TextureSamplingFilter 4 | 5 | @end 6 | -------------------------------------------------------------------------------- /GPUImageFilter-04/framework/Source/GPUImageDissolveBlendFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageTwoInputFilter.h" 2 | 3 | @interface GPUImageDissolveBlendFilter : GPUImageTwoInputFilter 4 | { 5 | GLint mixUniform; 6 | } 7 | 8 | // Mix ranges from 0.0 (only image 1) to 1.0 (only image 2), with 0.5 (half of either) as the normal level 9 | @property(readwrite, nonatomic) CGFloat mix; 10 | 11 | @end 12 | -------------------------------------------------------------------------------- /GPUImageFilter-04/framework/Source/GPUImageDivideBlendFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageTwoInputFilter.h" 2 | 3 | @interface GPUImageDivideBlendFilter : GPUImageTwoInputFilter 4 | 5 | @end 6 | -------------------------------------------------------------------------------- /GPUImageFilter-04/framework/Source/GPUImageEmbossFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImage3x3ConvolutionFilter.h" 2 | 3 | @interface GPUImageEmbossFilter : GPUImage3x3ConvolutionFilter 4 | 5 | // The strength of the embossing, from 0.0 to 4.0, with 1.0 as the normal level 6 | @property(readwrite, nonatomic) CGFloat intensity; 7 | 8 | @end 9 | -------------------------------------------------------------------------------- /GPUImageFilter-04/framework/Source/GPUImageExclusionBlendFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageTwoInputFilter.h" 2 | 3 | @interface GPUImageExclusionBlendFilter : GPUImageTwoInputFilter 4 | { 5 | } 6 | 7 | @end 8 | -------------------------------------------------------------------------------- /GPUImageFilter-04/framework/Source/GPUImageExposureFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageFilter.h" 2 | 3 | @interface GPUImageExposureFilter : GPUImageFilter 4 | { 5 | GLint exposureUniform; 6 | } 7 | 8 | // Exposure ranges from -10.0 to 10.0, with 0.0 as the normal level 9 | @property(readwrite, nonatomic) CGFloat exposure; 10 | 11 | @end 12 | -------------------------------------------------------------------------------- /GPUImageFilter-04/framework/Source/GPUImageGammaFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageFilter.h" 2 | 3 | @interface GPUImageGammaFilter : GPUImageFilter 4 | { 5 | GLint gammaUniform; 6 | } 7 | 8 | // Gamma ranges from 0.0 to 3.0, with 1.0 as the normal level 9 | @property(readwrite, nonatomic) CGFloat gamma; 10 | 11 | @end 12 | -------------------------------------------------------------------------------- /GPUImageFilter-04/framework/Source/GPUImageGlassSphereFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageSphereRefractionFilter.h" 2 | 3 | @interface GPUImageGlassSphereFilter : GPUImageSphereRefractionFilter 4 | 5 | @end 6 | -------------------------------------------------------------------------------- /GPUImageFilter-04/framework/Source/GPUImageGrayscaleFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageFilter.h" 2 | 3 | extern NSString *const kGPUImageLuminanceFragmentShaderString; 4 | 5 | /** Converts an image to grayscale (a slightly faster implementation of the saturation filter, without the ability to vary the color contribution) 6 | */ 7 | @interface GPUImageGrayscaleFilter : GPUImageFilter 8 | 9 | @end 10 | -------------------------------------------------------------------------------- /GPUImageFilter-04/framework/Source/GPUImageHalftoneFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImagePixellateFilter.h" 2 | 3 | @interface GPUImageHalftoneFilter : GPUImagePixellateFilter 4 | 5 | @end 6 | -------------------------------------------------------------------------------- /GPUImageFilter-04/framework/Source/GPUImageHardLightBlendFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageTwoInputFilter.h" 2 | 3 | @interface GPUImageHardLightBlendFilter : GPUImageTwoInputFilter 4 | { 5 | } 6 | 7 | @end 8 | -------------------------------------------------------------------------------- /GPUImageFilter-04/framework/Source/GPUImageHistogramGenerator.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageFilter.h" 2 | 3 | @interface GPUImageHistogramGenerator : GPUImageFilter 4 | { 5 | GLint backgroundColorUniform; 6 | } 7 | 8 | @end 9 | -------------------------------------------------------------------------------- /GPUImageFilter-04/framework/Source/GPUImageHueBlendFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageTwoInputFilter.h" 2 | 3 | @interface GPUImageHueBlendFilter : GPUImageTwoInputFilter 4 | 5 | @end 6 | -------------------------------------------------------------------------------- /GPUImageFilter-04/framework/Source/GPUImageHueFilter.h: -------------------------------------------------------------------------------- 1 | 2 | #import "GPUImageFilter.h" 3 | 4 | @interface GPUImageHueFilter : GPUImageFilter 5 | { 6 | GLint hueAdjustUniform; 7 | 8 | } 9 | @property (nonatomic, readwrite) CGFloat hue; 10 | 11 | @end 12 | -------------------------------------------------------------------------------- /GPUImageFilter-04/framework/Source/GPUImageKuwaharaRadius3Filter.h: -------------------------------------------------------------------------------- 1 | // 2 | // GPUImageKuwaharaRadius3Filter.h 3 | 4 | #import "GPUImageFilter.h" 5 | 6 | @interface GPUImageKuwaharaRadius3Filter : GPUImageFilter 7 | 8 | @end 9 | -------------------------------------------------------------------------------- /GPUImageFilter-04/framework/Source/GPUImageLanczosResamplingFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageTwoPassTextureSamplingFilter.h" 2 | 3 | @interface GPUImageLanczosResamplingFilter : GPUImageTwoPassTextureSamplingFilter 4 | 5 | @property(readwrite, nonatomic) CGSize originalImageSize; 6 | 7 | @end 8 | -------------------------------------------------------------------------------- /GPUImageFilter-04/framework/Source/GPUImageLaplacianFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImage3x3ConvolutionFilter.h" 2 | 3 | @interface GPUImageLaplacianFilter : GPUImage3x3ConvolutionFilter 4 | 5 | @end 6 | -------------------------------------------------------------------------------- /GPUImageFilter-04/framework/Source/GPUImageLightenBlendFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageTwoInputFilter.h" 2 | 3 | /// Blends two images by taking the maximum value of each color component between the images 4 | @interface GPUImageLightenBlendFilter : GPUImageTwoInputFilter 5 | { 6 | } 7 | 8 | @end 9 | -------------------------------------------------------------------------------- /GPUImageFilter-04/framework/Source/GPUImageLinearBurnBlendFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageTwoInputFilter.h" 2 | 3 | @interface GPUImageLinearBurnBlendFilter : GPUImageTwoInputFilter 4 | 5 | @end 6 | -------------------------------------------------------------------------------- /GPUImageFilter-04/framework/Source/GPUImageLocalBinaryPatternFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImage3x3TextureSamplingFilter.h" 2 | 3 | @interface GPUImageLocalBinaryPatternFilter : GPUImage3x3TextureSamplingFilter 4 | 5 | @end 6 | -------------------------------------------------------------------------------- /GPUImageFilter-04/framework/Source/GPUImageLuminanceRangeFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageFilter.h" 2 | 3 | @interface GPUImageLuminanceRangeFilter : GPUImageFilter 4 | { 5 | GLint rangeReductionUniform; 6 | } 7 | 8 | /** The degree to reduce the luminance range, from 0.0 to 1.0. Default is 0.6. 9 | */ 10 | @property(readwrite, nonatomic) CGFloat rangeReductionFactor; 11 | 12 | @end 13 | -------------------------------------------------------------------------------- /GPUImageFilter-04/framework/Source/GPUImageLuminosityBlendFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageTwoInputFilter.h" 2 | 3 | @interface GPUImageLuminosityBlendFilter : GPUImageTwoInputFilter 4 | 5 | @end 6 | -------------------------------------------------------------------------------- /GPUImageFilter-04/framework/Source/GPUImageMaskFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageTwoInputFilter.h" 2 | 3 | @interface GPUImageMaskFilter : GPUImageTwoInputFilter 4 | 5 | @end 6 | -------------------------------------------------------------------------------- /GPUImageFilter-04/framework/Source/GPUImageMedianFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImage3x3TextureSamplingFilter.h" 2 | 3 | @interface GPUImageMedianFilter : GPUImage3x3TextureSamplingFilter 4 | 5 | @end 6 | -------------------------------------------------------------------------------- /GPUImageFilter-04/framework/Source/GPUImageMultiplyBlendFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageTwoInputFilter.h" 2 | 3 | @interface GPUImageMultiplyBlendFilter : GPUImageTwoInputFilter 4 | { 5 | } 6 | 7 | @end 8 | -------------------------------------------------------------------------------- /GPUImageFilter-04/framework/Source/GPUImageNonMaximumSuppressionFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImage3x3TextureSamplingFilter.h" 2 | 3 | @interface GPUImageNonMaximumSuppressionFilter : GPUImage3x3TextureSamplingFilter 4 | 5 | @end 6 | -------------------------------------------------------------------------------- /GPUImageFilter-04/framework/Source/GPUImageNormalBlendFilter.h: -------------------------------------------------------------------------------- 1 | // Created by Jorge Garcia on 9/5/12. 2 | // 3 | 4 | #import "GPUImageTwoInputFilter.h" 5 | 6 | @interface GPUImageNormalBlendFilter : GPUImageTwoInputFilter 7 | 8 | @end 9 | -------------------------------------------------------------------------------- /GPUImageFilter-04/framework/Source/GPUImageOpacityFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageFilter.h" 2 | 3 | @interface GPUImageOpacityFilter : GPUImageFilter 4 | { 5 | GLint opacityUniform; 6 | } 7 | 8 | // Opacity ranges from 0.0 to 1.0, with 1.0 as the normal setting 9 | @property(readwrite, nonatomic) CGFloat opacity; 10 | 11 | @end 12 | -------------------------------------------------------------------------------- /GPUImageFilter-04/framework/Source/GPUImageOverlayBlendFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageTwoInputFilter.h" 2 | 3 | @interface GPUImageOverlayBlendFilter : GPUImageTwoInputFilter 4 | 5 | @end 6 | -------------------------------------------------------------------------------- /GPUImageFilter-04/framework/Source/GPUImagePolkaDotFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImagePixellateFilter.h" 2 | 3 | @interface GPUImagePolkaDotFilter : GPUImagePixellateFilter 4 | { 5 | GLint dotScalingUniform; 6 | } 7 | 8 | @property(readwrite, nonatomic) CGFloat dotScaling; 9 | 10 | @end 11 | -------------------------------------------------------------------------------- /GPUImageFilter-04/framework/Source/GPUImagePrewittEdgeDetectionFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageSobelEdgeDetectionFilter.h" 2 | 3 | @interface GPUImagePrewittEdgeDetectionFilter : GPUImageSobelEdgeDetectionFilter 4 | 5 | @end 6 | -------------------------------------------------------------------------------- /GPUImageFilter-04/framework/Source/GPUImageSaturationBlendFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageTwoInputFilter.h" 2 | 3 | @interface GPUImageSaturationBlendFilter : GPUImageTwoInputFilter 4 | 5 | @end 6 | -------------------------------------------------------------------------------- /GPUImageFilter-04/framework/Source/GPUImageScreenBlendFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageTwoInputFilter.h" 2 | 3 | @interface GPUImageScreenBlendFilter : GPUImageTwoInputFilter 4 | { 5 | } 6 | 7 | @end 8 | -------------------------------------------------------------------------------- /GPUImageFilter-04/framework/Source/GPUImageSepiaFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageColorMatrixFilter.h" 2 | 3 | /// Simple sepia tone filter 4 | @interface GPUImageSepiaFilter : GPUImageColorMatrixFilter 5 | 6 | @end 7 | -------------------------------------------------------------------------------- /GPUImageFilter-04/framework/Source/GPUImageSharpenFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageFilter.h" 2 | 3 | @interface GPUImageSharpenFilter : GPUImageFilter 4 | { 5 | GLint sharpnessUniform; 6 | GLint imageWidthFactorUniform, imageHeightFactorUniform; 7 | } 8 | 9 | // Sharpness ranges from -4.0 to 4.0, with 0.0 as the normal level 10 | @property(readwrite, nonatomic) CGFloat sharpness; 11 | 12 | @end 13 | -------------------------------------------------------------------------------- /GPUImageFilter-04/framework/Source/GPUImageSingleComponentGaussianBlurFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageGaussianBlurFilter.h" 2 | 3 | // This filter merely performs the standard Gaussian blur on the red color channel (assuming a luminance image) 4 | 5 | @interface GPUImageSingleComponentGaussianBlurFilter : GPUImageGaussianBlurFilter 6 | 7 | @end 8 | -------------------------------------------------------------------------------- /GPUImageFilter-04/framework/Source/GPUImageSketchFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageSobelEdgeDetectionFilter.h" 2 | 3 | /** Converts video to look like a sketch. 4 | 5 | This is just the Sobel edge detection filter with the colors inverted. 6 | */ 7 | @interface GPUImageSketchFilter : GPUImageSobelEdgeDetectionFilter 8 | { 9 | } 10 | 11 | @end 12 | -------------------------------------------------------------------------------- /GPUImageFilter-04/framework/Source/GPUImageSoftLightBlendFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageTwoInputFilter.h" 2 | 3 | @interface GPUImageSoftLightBlendFilter : GPUImageTwoInputFilter 4 | { 5 | } 6 | 7 | @end 8 | -------------------------------------------------------------------------------- /GPUImageFilter-04/framework/Source/GPUImageSourceOverBlendFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageTwoInputFilter.h" 2 | 3 | @interface GPUImageSourceOverBlendFilter : GPUImageTwoInputFilter 4 | 5 | @end 6 | -------------------------------------------------------------------------------- /GPUImageFilter-04/framework/Source/GPUImageSubtractBlendFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageTwoInputFilter.h" 2 | 3 | @interface GPUImageSubtractBlendFilter : GPUImageTwoInputFilter 4 | 5 | @end 6 | -------------------------------------------------------------------------------- /GPUImageFilter-04/framework/Source/GPUImageTextureInput.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageOutput.h" 2 | 3 | @interface GPUImageTextureInput : GPUImageOutput 4 | { 5 | CGSize textureSize; 6 | } 7 | 8 | // Initialization and teardown 9 | - (id)initWithTexture:(GLuint)newInputTexture size:(CGSize)newTextureSize; 10 | 11 | // Image rendering 12 | - (void)processTextureWithFrameTime:(CMTime)frameTime; 13 | 14 | @end 15 | -------------------------------------------------------------------------------- /GPUImageFilter-04/framework/Source/GPUImageThresholdSketchFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageThresholdEdgeDetectionFilter.h" 2 | 3 | @interface GPUImageThresholdSketchFilter : GPUImageThresholdEdgeDetectionFilter 4 | 5 | @end 6 | -------------------------------------------------------------------------------- /GPUImageFilter-04/framework/Source/GPUImageVoronoiConsumerFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageTwoInputFilter.h" 2 | 3 | @interface GPUImageVoronoiConsumerFilter : GPUImageTwoInputFilter 4 | { 5 | GLint sizeUniform; 6 | } 7 | 8 | @property (nonatomic, readwrite) CGSize sizeInPixels; 9 | 10 | @end 11 | -------------------------------------------------------------------------------- /GPUImageFilter-04/framework/Source/GPUImageWeakPixelInclusionFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImage3x3TextureSamplingFilter.h" 2 | 3 | @interface GPUImageWeakPixelInclusionFilter : GPUImage3x3TextureSamplingFilter 4 | 5 | @end 6 | -------------------------------------------------------------------------------- /GPUImageFilter-04/framework/Source/GPUImageXYDerivativeFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageSobelEdgeDetectionFilter.h" 2 | 3 | @interface GPUImageXYDerivativeFilter : GPUImageSobelEdgeDetectionFilter 4 | 5 | @end 6 | -------------------------------------------------------------------------------- /GPUImageFilter-04/framework/Source/Mac/GPUImageMac-Prefix.pch: -------------------------------------------------------------------------------- 1 | // 2 | // Prefix header for all source files of the 'GPUImageMac' target in the 'GPUImageMac' project 3 | // 4 | 5 | #ifdef __OBJC__ 6 | #import 7 | #endif 8 | -------------------------------------------------------------------------------- /GPUImageFilter-04/framework/Source/Mac/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /GPUImageFilter-04/framework/Source/iOS/Framework/module.modulemap: -------------------------------------------------------------------------------- 1 | framework module GPUImage { 2 | umbrella header "GPUImageFramework.h" 3 | 4 | export * 5 | module * { export * } 6 | } 7 | -------------------------------------------------------------------------------- /GPUImageFilter-04/framework/Source/iOS/GPUImage-Prefix.pch: -------------------------------------------------------------------------------- 1 | // 2 | // Prefix header for all source files of the 'GPUImage' target in the 'GPUImage' project 3 | // 4 | 5 | #ifdef __OBJC__ 6 | #import 7 | #endif 8 | -------------------------------------------------------------------------------- /GPUImageFilter-05/GPUImageFilter.xcodeproj/project.xcworkspace/contents.xcworkspacedata: -------------------------------------------------------------------------------- 1 | 2 | 4 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /GPUImageFilter-05/GPUImageFilter.xcodeproj/project.xcworkspace/xcuserdata/mac.xcuserdatad/UserInterfaceState.xcuserstate: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/QinminiOS/GPUImage/3a90ecf0f7edc036ecbdad9149776a5d463f5a50/GPUImageFilter-05/GPUImageFilter.xcodeproj/project.xcworkspace/xcuserdata/mac.xcuserdatad/UserInterfaceState.xcuserstate -------------------------------------------------------------------------------- /GPUImageFilter-05/GPUImageFilter.xcodeproj/project.xcworkspace/xcuserdata/qinmin.xcuserdatad/UserInterfaceState.xcuserstate: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/QinminiOS/GPUImage/3a90ecf0f7edc036ecbdad9149776a5d463f5a50/GPUImageFilter-05/GPUImageFilter.xcodeproj/project.xcworkspace/xcuserdata/qinmin.xcuserdatad/UserInterfaceState.xcuserstate -------------------------------------------------------------------------------- /GPUImageFilter-05/GPUImageFilter.xcodeproj/xcuserdata/qinmin.xcuserdatad/xcdebugger/Breakpoints_v2.xcbkptlist: -------------------------------------------------------------------------------- 1 | 2 | 5 | 6 | -------------------------------------------------------------------------------- /GPUImageFilter-05/GPUImageFilter/1.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/QinminiOS/GPUImage/3a90ecf0f7edc036ecbdad9149776a5d463f5a50/GPUImageFilter-05/GPUImageFilter/1.jpg -------------------------------------------------------------------------------- /GPUImageFilter-05/GPUImageFilter/1.mp4: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/QinminiOS/GPUImage/3a90ecf0f7edc036ecbdad9149776a5d463f5a50/GPUImageFilter-05/GPUImageFilter/1.mp4 -------------------------------------------------------------------------------- /GPUImageFilter-05/GPUImageFilter/AppDelegate.h: -------------------------------------------------------------------------------- 1 | // 2 | // AppDelegate.h 3 | // GPUImageFilter 4 | // 5 | // Created by mac on 17/2/4. 6 | // Copyright © 2017年 Qinmin. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface AppDelegate : UIResponder 12 | 13 | @property (strong, nonatomic) UIWindow *window; 14 | 15 | 16 | @end 17 | 18 | -------------------------------------------------------------------------------- /GPUImageFilter-05/GPUImageFilter/ImageShowViewController.h: -------------------------------------------------------------------------------- 1 | // 2 | // ImageShowViewController.h 3 | // GPUImageFilter 4 | // 5 | // Created by mac on 17/5/5. 6 | // Copyright © 2017年 Qinmin. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface ImageShowViewController : UIViewController 12 | @property (nonatomic, strong) UIImage *image; 13 | @end 14 | -------------------------------------------------------------------------------- /GPUImageFilter-05/GPUImageFilter/SecondViewController.h: -------------------------------------------------------------------------------- 1 | // 2 | // Second ViewController.h 3 | // GPUImageFilter 4 | // 5 | // Created by mac on 17/5/3. 6 | // Copyright © 2017年 Qinmin. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface SecondViewController : UIViewController 12 | 13 | @end 14 | -------------------------------------------------------------------------------- /GPUImageFilter-05/GPUImageFilter/ThirdViewController.h: -------------------------------------------------------------------------------- 1 | // 2 | // ThirdViewController.h 3 | // GPUImageFilter 4 | // 5 | // Created by mac on 17/5/5. 6 | // Copyright © 2017年 Qinmin. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface ThirdViewController : UIViewController 12 | 13 | @end 14 | -------------------------------------------------------------------------------- /GPUImageFilter-05/GPUImageFilter/ViewController.h: -------------------------------------------------------------------------------- 1 | // 2 | // ViewController.h 3 | // GPUImageFilter 4 | // 5 | // Created by mac on 17/2/4. 6 | // Copyright © 2017年 Qinmin. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface ViewController : UIViewController 12 | 13 | 14 | @end 15 | 16 | -------------------------------------------------------------------------------- /GPUImageFilter-05/framework/GPUImage.xcodeproj/project.xcworkspace/contents.xcworkspacedata: -------------------------------------------------------------------------------- 1 | 2 | 4 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /GPUImageFilter-05/framework/GPUImage.xcodeproj/project.xcworkspace/xcuserdata/mac.xcuserdatad/UserInterfaceState.xcuserstate: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/QinminiOS/GPUImage/3a90ecf0f7edc036ecbdad9149776a5d463f5a50/GPUImageFilter-05/framework/GPUImage.xcodeproj/project.xcworkspace/xcuserdata/mac.xcuserdatad/UserInterfaceState.xcuserstate -------------------------------------------------------------------------------- /GPUImageFilter-05/framework/GPUImage.xcodeproj/project.xcworkspace/xcuserdata/mac.xcuserdatad/WorkspaceSettings.xcsettings: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | BuildLocationStyle 6 | UseTargetSettings 7 | 8 | 9 | -------------------------------------------------------------------------------- /GPUImageFilter-05/framework/Resources/lookup.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/QinminiOS/GPUImage/3a90ecf0f7edc036ecbdad9149776a5d463f5a50/GPUImageFilter-05/framework/Resources/lookup.png -------------------------------------------------------------------------------- /GPUImageFilter-05/framework/Resources/lookup_amatorka.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/QinminiOS/GPUImage/3a90ecf0f7edc036ecbdad9149776a5d463f5a50/GPUImageFilter-05/framework/Resources/lookup_amatorka.png -------------------------------------------------------------------------------- /GPUImageFilter-05/framework/Resources/lookup_miss_etikate.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/QinminiOS/GPUImage/3a90ecf0f7edc036ecbdad9149776a5d463f5a50/GPUImageFilter-05/framework/Resources/lookup_miss_etikate.png -------------------------------------------------------------------------------- /GPUImageFilter-05/framework/Resources/lookup_soft_elegance_1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/QinminiOS/GPUImage/3a90ecf0f7edc036ecbdad9149776a5d463f5a50/GPUImageFilter-05/framework/Resources/lookup_soft_elegance_1.png -------------------------------------------------------------------------------- /GPUImageFilter-05/framework/Resources/lookup_soft_elegance_2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/QinminiOS/GPUImage/3a90ecf0f7edc036ecbdad9149776a5d463f5a50/GPUImageFilter-05/framework/Resources/lookup_soft_elegance_2.png -------------------------------------------------------------------------------- /GPUImageFilter-05/framework/Source/GPUImageAdaptiveThresholdFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageFilterGroup.h" 2 | 3 | @interface GPUImageAdaptiveThresholdFilter : GPUImageFilterGroup 4 | 5 | /** A multiplier for the background averaging blur radius in pixels, with a default of 4 6 | */ 7 | @property(readwrite, nonatomic) CGFloat blurRadiusInPixels; 8 | 9 | @end 10 | -------------------------------------------------------------------------------- /GPUImageFilter-05/framework/Source/GPUImageAddBlendFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageTwoInputFilter.h" 2 | 3 | @interface GPUImageAddBlendFilter : GPUImageTwoInputFilter 4 | 5 | @end 6 | -------------------------------------------------------------------------------- /GPUImageFilter-05/framework/Source/GPUImageAlphaBlendFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageTwoInputFilter.h" 2 | 3 | @interface GPUImageAlphaBlendFilter : GPUImageTwoInputFilter 4 | { 5 | GLint mixUniform; 6 | } 7 | 8 | // Mix ranges from 0.0 (only image 1) to 1.0 (only image 2), with 1.0 as the normal level 9 | @property(readwrite, nonatomic) CGFloat mix; 10 | 11 | @end 12 | -------------------------------------------------------------------------------- /GPUImageFilter-05/framework/Source/GPUImageAverageLuminanceThresholdFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageFilterGroup.h" 2 | 3 | @interface GPUImageAverageLuminanceThresholdFilter : GPUImageFilterGroup 4 | 5 | // This is multiplied by the continually calculated average image luminosity to arrive at the final threshold. Default is 1.0. 6 | @property(readwrite, nonatomic) CGFloat thresholdMultiplier; 7 | 8 | @end 9 | -------------------------------------------------------------------------------- /GPUImageFilter-05/framework/Source/GPUImageBoxBlurFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageGaussianBlurFilter.h" 2 | 3 | /** A hardware-accelerated box blur of an image 4 | */ 5 | @interface GPUImageBoxBlurFilter : GPUImageGaussianBlurFilter 6 | 7 | @end 8 | -------------------------------------------------------------------------------- /GPUImageFilter-05/framework/Source/GPUImageBrightnessFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageFilter.h" 2 | 3 | @interface GPUImageBrightnessFilter : GPUImageFilter 4 | { 5 | GLint brightnessUniform; 6 | } 7 | 8 | // Brightness ranges from -1.0 to 1.0, with 0.0 as the normal level 9 | @property(readwrite, nonatomic) CGFloat brightness; 10 | 11 | @end 12 | -------------------------------------------------------------------------------- /GPUImageFilter-05/framework/Source/GPUImageBuffer.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageFilter.h" 2 | 3 | @interface GPUImageBuffer : GPUImageFilter 4 | { 5 | NSMutableArray *bufferedFramebuffers; 6 | } 7 | 8 | @property(readwrite, nonatomic) NSUInteger bufferSize; 9 | 10 | @end 11 | -------------------------------------------------------------------------------- /GPUImageFilter-05/framework/Source/GPUImageCGAColorspaceFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageFilter.h" 2 | 3 | @interface GPUImageCGAColorspaceFilter : GPUImageFilter 4 | 5 | @end 6 | -------------------------------------------------------------------------------- /GPUImageFilter-05/framework/Source/GPUImageColorBlendFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageTwoInputFilter.h" 2 | 3 | @interface GPUImageColorBlendFilter : GPUImageTwoInputFilter 4 | 5 | @end 6 | -------------------------------------------------------------------------------- /GPUImageFilter-05/framework/Source/GPUImageColorBurnBlendFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageTwoInputFilter.h" 2 | 3 | /** Applies a color burn blend of two images 4 | */ 5 | @interface GPUImageColorBurnBlendFilter : GPUImageTwoInputFilter 6 | { 7 | } 8 | 9 | @end 10 | -------------------------------------------------------------------------------- /GPUImageFilter-05/framework/Source/GPUImageColorDodgeBlendFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageTwoInputFilter.h" 2 | 3 | /** Applies a color dodge blend of two images 4 | */ 5 | @interface GPUImageColorDodgeBlendFilter : GPUImageTwoInputFilter 6 | { 7 | } 8 | 9 | @end 10 | -------------------------------------------------------------------------------- /GPUImageFilter-05/framework/Source/GPUImageColorInvertFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageFilter.h" 2 | 3 | @interface GPUImageColorInvertFilter : GPUImageFilter 4 | { 5 | } 6 | 7 | @end 8 | -------------------------------------------------------------------------------- /GPUImageFilter-05/framework/Source/GPUImageColorLocalBinaryPatternFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImage3x3TextureSamplingFilter.h" 2 | 3 | @interface GPUImageColorLocalBinaryPatternFilter : GPUImage3x3TextureSamplingFilter 4 | 5 | @end 6 | -------------------------------------------------------------------------------- /GPUImageFilter-05/framework/Source/GPUImageColorPackingFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageFilter.h" 2 | 3 | @interface GPUImageColorPackingFilter : GPUImageFilter 4 | { 5 | GLint texelWidthUniform, texelHeightUniform; 6 | 7 | CGFloat texelWidth, texelHeight; 8 | } 9 | 10 | @end 11 | -------------------------------------------------------------------------------- /GPUImageFilter-05/framework/Source/GPUImageDarkenBlendFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageTwoInputFilter.h" 2 | 3 | @interface GPUImageDarkenBlendFilter : GPUImageTwoInputFilter 4 | { 5 | } 6 | 7 | @end 8 | -------------------------------------------------------------------------------- /GPUImageFilter-05/framework/Source/GPUImageDifferenceBlendFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageTwoInputFilter.h" 2 | 3 | @interface GPUImageDifferenceBlendFilter : GPUImageTwoInputFilter 4 | { 5 | } 6 | 7 | @end 8 | -------------------------------------------------------------------------------- /GPUImageFilter-05/framework/Source/GPUImageDirectionalSobelEdgeDetectionFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImage3x3TextureSamplingFilter.h" 2 | 3 | @interface GPUImageDirectionalSobelEdgeDetectionFilter : GPUImage3x3TextureSamplingFilter 4 | 5 | @end 6 | -------------------------------------------------------------------------------- /GPUImageFilter-05/framework/Source/GPUImageDissolveBlendFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageTwoInputFilter.h" 2 | 3 | @interface GPUImageDissolveBlendFilter : GPUImageTwoInputFilter 4 | { 5 | GLint mixUniform; 6 | } 7 | 8 | // Mix ranges from 0.0 (only image 1) to 1.0 (only image 2), with 0.5 (half of either) as the normal level 9 | @property(readwrite, nonatomic) CGFloat mix; 10 | 11 | @end 12 | -------------------------------------------------------------------------------- /GPUImageFilter-05/framework/Source/GPUImageDivideBlendFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageTwoInputFilter.h" 2 | 3 | @interface GPUImageDivideBlendFilter : GPUImageTwoInputFilter 4 | 5 | @end 6 | -------------------------------------------------------------------------------- /GPUImageFilter-05/framework/Source/GPUImageEmbossFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImage3x3ConvolutionFilter.h" 2 | 3 | @interface GPUImageEmbossFilter : GPUImage3x3ConvolutionFilter 4 | 5 | // The strength of the embossing, from 0.0 to 4.0, with 1.0 as the normal level 6 | @property(readwrite, nonatomic) CGFloat intensity; 7 | 8 | @end 9 | -------------------------------------------------------------------------------- /GPUImageFilter-05/framework/Source/GPUImageExclusionBlendFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageTwoInputFilter.h" 2 | 3 | @interface GPUImageExclusionBlendFilter : GPUImageTwoInputFilter 4 | { 5 | } 6 | 7 | @end 8 | -------------------------------------------------------------------------------- /GPUImageFilter-05/framework/Source/GPUImageExposureFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageFilter.h" 2 | 3 | @interface GPUImageExposureFilter : GPUImageFilter 4 | { 5 | GLint exposureUniform; 6 | } 7 | 8 | // Exposure ranges from -10.0 to 10.0, with 0.0 as the normal level 9 | @property(readwrite, nonatomic) CGFloat exposure; 10 | 11 | @end 12 | -------------------------------------------------------------------------------- /GPUImageFilter-05/framework/Source/GPUImageGammaFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageFilter.h" 2 | 3 | @interface GPUImageGammaFilter : GPUImageFilter 4 | { 5 | GLint gammaUniform; 6 | } 7 | 8 | // Gamma ranges from 0.0 to 3.0, with 1.0 as the normal level 9 | @property(readwrite, nonatomic) CGFloat gamma; 10 | 11 | @end 12 | -------------------------------------------------------------------------------- /GPUImageFilter-05/framework/Source/GPUImageGlassSphereFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageSphereRefractionFilter.h" 2 | 3 | @interface GPUImageGlassSphereFilter : GPUImageSphereRefractionFilter 4 | 5 | @end 6 | -------------------------------------------------------------------------------- /GPUImageFilter-05/framework/Source/GPUImageGrayscaleFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageFilter.h" 2 | 3 | extern NSString *const kGPUImageLuminanceFragmentShaderString; 4 | 5 | /** Converts an image to grayscale (a slightly faster implementation of the saturation filter, without the ability to vary the color contribution) 6 | */ 7 | @interface GPUImageGrayscaleFilter : GPUImageFilter 8 | 9 | @end 10 | -------------------------------------------------------------------------------- /GPUImageFilter-05/framework/Source/GPUImageHalftoneFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImagePixellateFilter.h" 2 | 3 | @interface GPUImageHalftoneFilter : GPUImagePixellateFilter 4 | 5 | @end 6 | -------------------------------------------------------------------------------- /GPUImageFilter-05/framework/Source/GPUImageHardLightBlendFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageTwoInputFilter.h" 2 | 3 | @interface GPUImageHardLightBlendFilter : GPUImageTwoInputFilter 4 | { 5 | } 6 | 7 | @end 8 | -------------------------------------------------------------------------------- /GPUImageFilter-05/framework/Source/GPUImageHistogramGenerator.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageFilter.h" 2 | 3 | @interface GPUImageHistogramGenerator : GPUImageFilter 4 | { 5 | GLint backgroundColorUniform; 6 | } 7 | 8 | @end 9 | -------------------------------------------------------------------------------- /GPUImageFilter-05/framework/Source/GPUImageHueBlendFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageTwoInputFilter.h" 2 | 3 | @interface GPUImageHueBlendFilter : GPUImageTwoInputFilter 4 | 5 | @end 6 | -------------------------------------------------------------------------------- /GPUImageFilter-05/framework/Source/GPUImageHueFilter.h: -------------------------------------------------------------------------------- 1 | 2 | #import "GPUImageFilter.h" 3 | 4 | @interface GPUImageHueFilter : GPUImageFilter 5 | { 6 | GLint hueAdjustUniform; 7 | 8 | } 9 | @property (nonatomic, readwrite) CGFloat hue; 10 | 11 | @end 12 | -------------------------------------------------------------------------------- /GPUImageFilter-05/framework/Source/GPUImageKuwaharaRadius3Filter.h: -------------------------------------------------------------------------------- 1 | // 2 | // GPUImageKuwaharaRadius3Filter.h 3 | 4 | #import "GPUImageFilter.h" 5 | 6 | @interface GPUImageKuwaharaRadius3Filter : GPUImageFilter 7 | 8 | @end 9 | -------------------------------------------------------------------------------- /GPUImageFilter-05/framework/Source/GPUImageLanczosResamplingFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageTwoPassTextureSamplingFilter.h" 2 | 3 | @interface GPUImageLanczosResamplingFilter : GPUImageTwoPassTextureSamplingFilter 4 | 5 | @property(readwrite, nonatomic) CGSize originalImageSize; 6 | 7 | @end 8 | -------------------------------------------------------------------------------- /GPUImageFilter-05/framework/Source/GPUImageLaplacianFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImage3x3ConvolutionFilter.h" 2 | 3 | @interface GPUImageLaplacianFilter : GPUImage3x3ConvolutionFilter 4 | 5 | @end 6 | -------------------------------------------------------------------------------- /GPUImageFilter-05/framework/Source/GPUImageLightenBlendFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageTwoInputFilter.h" 2 | 3 | /// Blends two images by taking the maximum value of each color component between the images 4 | @interface GPUImageLightenBlendFilter : GPUImageTwoInputFilter 5 | { 6 | } 7 | 8 | @end 9 | -------------------------------------------------------------------------------- /GPUImageFilter-05/framework/Source/GPUImageLinearBurnBlendFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageTwoInputFilter.h" 2 | 3 | @interface GPUImageLinearBurnBlendFilter : GPUImageTwoInputFilter 4 | 5 | @end 6 | -------------------------------------------------------------------------------- /GPUImageFilter-05/framework/Source/GPUImageLocalBinaryPatternFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImage3x3TextureSamplingFilter.h" 2 | 3 | @interface GPUImageLocalBinaryPatternFilter : GPUImage3x3TextureSamplingFilter 4 | 5 | @end 6 | -------------------------------------------------------------------------------- /GPUImageFilter-05/framework/Source/GPUImageLuminanceRangeFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageFilter.h" 2 | 3 | @interface GPUImageLuminanceRangeFilter : GPUImageFilter 4 | { 5 | GLint rangeReductionUniform; 6 | } 7 | 8 | /** The degree to reduce the luminance range, from 0.0 to 1.0. Default is 0.6. 9 | */ 10 | @property(readwrite, nonatomic) CGFloat rangeReductionFactor; 11 | 12 | @end 13 | -------------------------------------------------------------------------------- /GPUImageFilter-05/framework/Source/GPUImageLuminosityBlendFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageTwoInputFilter.h" 2 | 3 | @interface GPUImageLuminosityBlendFilter : GPUImageTwoInputFilter 4 | 5 | @end 6 | -------------------------------------------------------------------------------- /GPUImageFilter-05/framework/Source/GPUImageMaskFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageTwoInputFilter.h" 2 | 3 | @interface GPUImageMaskFilter : GPUImageTwoInputFilter 4 | 5 | @end 6 | -------------------------------------------------------------------------------- /GPUImageFilter-05/framework/Source/GPUImageMedianFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImage3x3TextureSamplingFilter.h" 2 | 3 | @interface GPUImageMedianFilter : GPUImage3x3TextureSamplingFilter 4 | 5 | @end 6 | -------------------------------------------------------------------------------- /GPUImageFilter-05/framework/Source/GPUImageMultiplyBlendFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageTwoInputFilter.h" 2 | 3 | @interface GPUImageMultiplyBlendFilter : GPUImageTwoInputFilter 4 | { 5 | } 6 | 7 | @end 8 | -------------------------------------------------------------------------------- /GPUImageFilter-05/framework/Source/GPUImageNonMaximumSuppressionFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImage3x3TextureSamplingFilter.h" 2 | 3 | @interface GPUImageNonMaximumSuppressionFilter : GPUImage3x3TextureSamplingFilter 4 | 5 | @end 6 | -------------------------------------------------------------------------------- /GPUImageFilter-05/framework/Source/GPUImageNormalBlendFilter.h: -------------------------------------------------------------------------------- 1 | // Created by Jorge Garcia on 9/5/12. 2 | // 3 | 4 | #import "GPUImageTwoInputFilter.h" 5 | 6 | @interface GPUImageNormalBlendFilter : GPUImageTwoInputFilter 7 | 8 | @end 9 | -------------------------------------------------------------------------------- /GPUImageFilter-05/framework/Source/GPUImageOpacityFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageFilter.h" 2 | 3 | @interface GPUImageOpacityFilter : GPUImageFilter 4 | { 5 | GLint opacityUniform; 6 | } 7 | 8 | // Opacity ranges from 0.0 to 1.0, with 1.0 as the normal setting 9 | @property(readwrite, nonatomic) CGFloat opacity; 10 | 11 | @end 12 | -------------------------------------------------------------------------------- /GPUImageFilter-05/framework/Source/GPUImageOverlayBlendFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageTwoInputFilter.h" 2 | 3 | @interface GPUImageOverlayBlendFilter : GPUImageTwoInputFilter 4 | 5 | @end 6 | -------------------------------------------------------------------------------- /GPUImageFilter-05/framework/Source/GPUImagePolkaDotFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImagePixellateFilter.h" 2 | 3 | @interface GPUImagePolkaDotFilter : GPUImagePixellateFilter 4 | { 5 | GLint dotScalingUniform; 6 | } 7 | 8 | @property(readwrite, nonatomic) CGFloat dotScaling; 9 | 10 | @end 11 | -------------------------------------------------------------------------------- /GPUImageFilter-05/framework/Source/GPUImagePrewittEdgeDetectionFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageSobelEdgeDetectionFilter.h" 2 | 3 | @interface GPUImagePrewittEdgeDetectionFilter : GPUImageSobelEdgeDetectionFilter 4 | 5 | @end 6 | -------------------------------------------------------------------------------- /GPUImageFilter-05/framework/Source/GPUImageSaturationBlendFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageTwoInputFilter.h" 2 | 3 | @interface GPUImageSaturationBlendFilter : GPUImageTwoInputFilter 4 | 5 | @end 6 | -------------------------------------------------------------------------------- /GPUImageFilter-05/framework/Source/GPUImageScreenBlendFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageTwoInputFilter.h" 2 | 3 | @interface GPUImageScreenBlendFilter : GPUImageTwoInputFilter 4 | { 5 | } 6 | 7 | @end 8 | -------------------------------------------------------------------------------- /GPUImageFilter-05/framework/Source/GPUImageSepiaFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageColorMatrixFilter.h" 2 | 3 | /// Simple sepia tone filter 4 | @interface GPUImageSepiaFilter : GPUImageColorMatrixFilter 5 | 6 | @end 7 | -------------------------------------------------------------------------------- /GPUImageFilter-05/framework/Source/GPUImageSharpenFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageFilter.h" 2 | 3 | @interface GPUImageSharpenFilter : GPUImageFilter 4 | { 5 | GLint sharpnessUniform; 6 | GLint imageWidthFactorUniform, imageHeightFactorUniform; 7 | } 8 | 9 | // Sharpness ranges from -4.0 to 4.0, with 0.0 as the normal level 10 | @property(readwrite, nonatomic) CGFloat sharpness; 11 | 12 | @end 13 | -------------------------------------------------------------------------------- /GPUImageFilter-05/framework/Source/GPUImageSingleComponentGaussianBlurFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageGaussianBlurFilter.h" 2 | 3 | // This filter merely performs the standard Gaussian blur on the red color channel (assuming a luminance image) 4 | 5 | @interface GPUImageSingleComponentGaussianBlurFilter : GPUImageGaussianBlurFilter 6 | 7 | @end 8 | -------------------------------------------------------------------------------- /GPUImageFilter-05/framework/Source/GPUImageSketchFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageSobelEdgeDetectionFilter.h" 2 | 3 | /** Converts video to look like a sketch. 4 | 5 | This is just the Sobel edge detection filter with the colors inverted. 6 | */ 7 | @interface GPUImageSketchFilter : GPUImageSobelEdgeDetectionFilter 8 | { 9 | } 10 | 11 | @end 12 | -------------------------------------------------------------------------------- /GPUImageFilter-05/framework/Source/GPUImageSoftLightBlendFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageTwoInputFilter.h" 2 | 3 | @interface GPUImageSoftLightBlendFilter : GPUImageTwoInputFilter 4 | { 5 | } 6 | 7 | @end 8 | -------------------------------------------------------------------------------- /GPUImageFilter-05/framework/Source/GPUImageSourceOverBlendFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageTwoInputFilter.h" 2 | 3 | @interface GPUImageSourceOverBlendFilter : GPUImageTwoInputFilter 4 | 5 | @end 6 | -------------------------------------------------------------------------------- /GPUImageFilter-05/framework/Source/GPUImageSubtractBlendFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageTwoInputFilter.h" 2 | 3 | @interface GPUImageSubtractBlendFilter : GPUImageTwoInputFilter 4 | 5 | @end 6 | -------------------------------------------------------------------------------- /GPUImageFilter-05/framework/Source/GPUImageTextureInput.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageOutput.h" 2 | 3 | @interface GPUImageTextureInput : GPUImageOutput 4 | { 5 | CGSize textureSize; 6 | } 7 | 8 | // Initialization and teardown 9 | - (id)initWithTexture:(GLuint)newInputTexture size:(CGSize)newTextureSize; 10 | 11 | // Image rendering 12 | - (void)processTextureWithFrameTime:(CMTime)frameTime; 13 | 14 | @end 15 | -------------------------------------------------------------------------------- /GPUImageFilter-05/framework/Source/GPUImageThresholdSketchFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageThresholdEdgeDetectionFilter.h" 2 | 3 | @interface GPUImageThresholdSketchFilter : GPUImageThresholdEdgeDetectionFilter 4 | 5 | @end 6 | -------------------------------------------------------------------------------- /GPUImageFilter-05/framework/Source/GPUImageVoronoiConsumerFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageTwoInputFilter.h" 2 | 3 | @interface GPUImageVoronoiConsumerFilter : GPUImageTwoInputFilter 4 | { 5 | GLint sizeUniform; 6 | } 7 | 8 | @property (nonatomic, readwrite) CGSize sizeInPixels; 9 | 10 | @end 11 | -------------------------------------------------------------------------------- /GPUImageFilter-05/framework/Source/GPUImageWeakPixelInclusionFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImage3x3TextureSamplingFilter.h" 2 | 3 | @interface GPUImageWeakPixelInclusionFilter : GPUImage3x3TextureSamplingFilter 4 | 5 | @end 6 | -------------------------------------------------------------------------------- /GPUImageFilter-05/framework/Source/GPUImageXYDerivativeFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageSobelEdgeDetectionFilter.h" 2 | 3 | @interface GPUImageXYDerivativeFilter : GPUImageSobelEdgeDetectionFilter 4 | 5 | @end 6 | -------------------------------------------------------------------------------- /GPUImageFilter-05/framework/Source/Mac/GPUImageMac-Prefix.pch: -------------------------------------------------------------------------------- 1 | // 2 | // Prefix header for all source files of the 'GPUImageMac' target in the 'GPUImageMac' project 3 | // 4 | 5 | #ifdef __OBJC__ 6 | #import 7 | #endif 8 | -------------------------------------------------------------------------------- /GPUImageFilter-05/framework/Source/Mac/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /GPUImageFilter-05/framework/Source/iOS/Framework/module.modulemap: -------------------------------------------------------------------------------- 1 | framework module GPUImage { 2 | umbrella header "GPUImageFramework.h" 3 | 4 | export * 5 | module * { export * } 6 | } 7 | -------------------------------------------------------------------------------- /GPUImageFilter-05/framework/Source/iOS/GPUImage-Prefix.pch: -------------------------------------------------------------------------------- 1 | // 2 | // Prefix header for all source files of the 'GPUImage' target in the 'GPUImage' project 3 | // 4 | 5 | #ifdef __OBJC__ 6 | #import 7 | #endif 8 | -------------------------------------------------------------------------------- /GPUImageFilter-06/GPUImageFilter.xcodeproj/project.xcworkspace/contents.xcworkspacedata: -------------------------------------------------------------------------------- 1 | 2 | 4 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /GPUImageFilter-06/GPUImageFilter.xcodeproj/project.xcworkspace/xcuserdata/mac.xcuserdatad/UserInterfaceState.xcuserstate: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/QinminiOS/GPUImage/3a90ecf0f7edc036ecbdad9149776a5d463f5a50/GPUImageFilter-06/GPUImageFilter.xcodeproj/project.xcworkspace/xcuserdata/mac.xcuserdatad/UserInterfaceState.xcuserstate -------------------------------------------------------------------------------- /GPUImageFilter-06/GPUImageFilter.xcodeproj/project.xcworkspace/xcuserdata/qinmin.xcuserdatad/UserInterfaceState.xcuserstate: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/QinminiOS/GPUImage/3a90ecf0f7edc036ecbdad9149776a5d463f5a50/GPUImageFilter-06/GPUImageFilter.xcodeproj/project.xcworkspace/xcuserdata/qinmin.xcuserdatad/UserInterfaceState.xcuserstate -------------------------------------------------------------------------------- /GPUImageFilter-06/GPUImageFilter.xcodeproj/xcuserdata/qinmin.xcuserdatad/xcdebugger/Breakpoints_v2.xcbkptlist: -------------------------------------------------------------------------------- 1 | 2 | 5 | 6 | -------------------------------------------------------------------------------- /GPUImageFilter-06/GPUImageFilter/1.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/QinminiOS/GPUImage/3a90ecf0f7edc036ecbdad9149776a5d463f5a50/GPUImageFilter-06/GPUImageFilter/1.jpg -------------------------------------------------------------------------------- /GPUImageFilter-06/GPUImageFilter/2.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/QinminiOS/GPUImage/3a90ecf0f7edc036ecbdad9149776a5d463f5a50/GPUImageFilter-06/GPUImageFilter/2.jpg -------------------------------------------------------------------------------- /GPUImageFilter-06/GPUImageFilter/3.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/QinminiOS/GPUImage/3a90ecf0f7edc036ecbdad9149776a5d463f5a50/GPUImageFilter-06/GPUImageFilter/3.jpg -------------------------------------------------------------------------------- /GPUImageFilter-06/GPUImageFilter/AppDelegate.h: -------------------------------------------------------------------------------- 1 | // 2 | // AppDelegate.h 3 | // GPUImageFilter 4 | // 5 | // Created by mac on 17/2/4. 6 | // Copyright © 2017年 Qinmin. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface AppDelegate : UIResponder 12 | 13 | @property (strong, nonatomic) UIWindow *window; 14 | 15 | 16 | @end 17 | 18 | -------------------------------------------------------------------------------- /GPUImageFilter-06/GPUImageFilter/SecondViewController.h: -------------------------------------------------------------------------------- 1 | // 2 | // Second ViewController.h 3 | // GPUImageFilter 4 | // 5 | // Created by mac on 17/5/3. 6 | // Copyright © 2017年 Qinmin. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface SecondViewController : UIViewController 12 | 13 | @end 14 | -------------------------------------------------------------------------------- /GPUImageFilter-06/GPUImageFilter/Utils/png/prebuilt/ios/libpng.a: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/QinminiOS/GPUImage/3a90ecf0f7edc036ecbdad9149776a5d463f5a50/GPUImageFilter-06/GPUImageFilter/Utils/png/prebuilt/ios/libpng.a -------------------------------------------------------------------------------- /GPUImageFilter-06/GPUImageFilter/ViewController.h: -------------------------------------------------------------------------------- 1 | // 2 | // ViewController.h 3 | // GPUImageFilter 4 | // 5 | // Created by mac on 17/2/4. 6 | // Copyright © 2017年 Qinmin. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface ViewController : UIViewController 12 | 13 | 14 | @end 15 | 16 | -------------------------------------------------------------------------------- /GPUImageFilter-06/framework/GPUImage.xcodeproj/project.xcworkspace/contents.xcworkspacedata: -------------------------------------------------------------------------------- 1 | 2 | 4 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /GPUImageFilter-06/framework/GPUImage.xcodeproj/project.xcworkspace/xcuserdata/mac.xcuserdatad/UserInterfaceState.xcuserstate: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/QinminiOS/GPUImage/3a90ecf0f7edc036ecbdad9149776a5d463f5a50/GPUImageFilter-06/framework/GPUImage.xcodeproj/project.xcworkspace/xcuserdata/mac.xcuserdatad/UserInterfaceState.xcuserstate -------------------------------------------------------------------------------- /GPUImageFilter-06/framework/GPUImage.xcodeproj/project.xcworkspace/xcuserdata/mac.xcuserdatad/WorkspaceSettings.xcsettings: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | BuildLocationStyle 6 | UseTargetSettings 7 | 8 | 9 | -------------------------------------------------------------------------------- /GPUImageFilter-06/framework/Resources/lookup.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/QinminiOS/GPUImage/3a90ecf0f7edc036ecbdad9149776a5d463f5a50/GPUImageFilter-06/framework/Resources/lookup.png -------------------------------------------------------------------------------- /GPUImageFilter-06/framework/Resources/lookup_amatorka.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/QinminiOS/GPUImage/3a90ecf0f7edc036ecbdad9149776a5d463f5a50/GPUImageFilter-06/framework/Resources/lookup_amatorka.png -------------------------------------------------------------------------------- /GPUImageFilter-06/framework/Resources/lookup_miss_etikate.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/QinminiOS/GPUImage/3a90ecf0f7edc036ecbdad9149776a5d463f5a50/GPUImageFilter-06/framework/Resources/lookup_miss_etikate.png -------------------------------------------------------------------------------- /GPUImageFilter-06/framework/Resources/lookup_soft_elegance_1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/QinminiOS/GPUImage/3a90ecf0f7edc036ecbdad9149776a5d463f5a50/GPUImageFilter-06/framework/Resources/lookup_soft_elegance_1.png -------------------------------------------------------------------------------- /GPUImageFilter-06/framework/Resources/lookup_soft_elegance_2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/QinminiOS/GPUImage/3a90ecf0f7edc036ecbdad9149776a5d463f5a50/GPUImageFilter-06/framework/Resources/lookup_soft_elegance_2.png -------------------------------------------------------------------------------- /GPUImageFilter-06/framework/Source/GPUImageAdaptiveThresholdFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageFilterGroup.h" 2 | 3 | @interface GPUImageAdaptiveThresholdFilter : GPUImageFilterGroup 4 | 5 | /** A multiplier for the background averaging blur radius in pixels, with a default of 4 6 | */ 7 | @property(readwrite, nonatomic) CGFloat blurRadiusInPixels; 8 | 9 | @end 10 | -------------------------------------------------------------------------------- /GPUImageFilter-06/framework/Source/GPUImageAddBlendFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageTwoInputFilter.h" 2 | 3 | @interface GPUImageAddBlendFilter : GPUImageTwoInputFilter 4 | 5 | @end 6 | -------------------------------------------------------------------------------- /GPUImageFilter-06/framework/Source/GPUImageAlphaBlendFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageTwoInputFilter.h" 2 | 3 | @interface GPUImageAlphaBlendFilter : GPUImageTwoInputFilter 4 | { 5 | GLint mixUniform; 6 | } 7 | 8 | // Mix ranges from 0.0 (only image 1) to 1.0 (only image 2), with 1.0 as the normal level 9 | @property(readwrite, nonatomic) CGFloat mix; 10 | 11 | @end 12 | -------------------------------------------------------------------------------- /GPUImageFilter-06/framework/Source/GPUImageAverageLuminanceThresholdFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageFilterGroup.h" 2 | 3 | @interface GPUImageAverageLuminanceThresholdFilter : GPUImageFilterGroup 4 | 5 | // This is multiplied by the continually calculated average image luminosity to arrive at the final threshold. Default is 1.0. 6 | @property(readwrite, nonatomic) CGFloat thresholdMultiplier; 7 | 8 | @end 9 | -------------------------------------------------------------------------------- /GPUImageFilter-06/framework/Source/GPUImageBoxBlurFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageGaussianBlurFilter.h" 2 | 3 | /** A hardware-accelerated box blur of an image 4 | */ 5 | @interface GPUImageBoxBlurFilter : GPUImageGaussianBlurFilter 6 | 7 | @end 8 | -------------------------------------------------------------------------------- /GPUImageFilter-06/framework/Source/GPUImageBrightnessFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageFilter.h" 2 | 3 | @interface GPUImageBrightnessFilter : GPUImageFilter 4 | { 5 | GLint brightnessUniform; 6 | } 7 | 8 | // Brightness ranges from -1.0 to 1.0, with 0.0 as the normal level 9 | @property(readwrite, nonatomic) CGFloat brightness; 10 | 11 | @end 12 | -------------------------------------------------------------------------------- /GPUImageFilter-06/framework/Source/GPUImageBuffer.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageFilter.h" 2 | 3 | @interface GPUImageBuffer : GPUImageFilter 4 | { 5 | NSMutableArray *bufferedFramebuffers; 6 | } 7 | 8 | @property(readwrite, nonatomic) NSUInteger bufferSize; 9 | 10 | @end 11 | -------------------------------------------------------------------------------- /GPUImageFilter-06/framework/Source/GPUImageCGAColorspaceFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageFilter.h" 2 | 3 | @interface GPUImageCGAColorspaceFilter : GPUImageFilter 4 | 5 | @end 6 | -------------------------------------------------------------------------------- /GPUImageFilter-06/framework/Source/GPUImageColorBlendFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageTwoInputFilter.h" 2 | 3 | @interface GPUImageColorBlendFilter : GPUImageTwoInputFilter 4 | 5 | @end 6 | -------------------------------------------------------------------------------- /GPUImageFilter-06/framework/Source/GPUImageColorBurnBlendFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageTwoInputFilter.h" 2 | 3 | /** Applies a color burn blend of two images 4 | */ 5 | @interface GPUImageColorBurnBlendFilter : GPUImageTwoInputFilter 6 | { 7 | } 8 | 9 | @end 10 | -------------------------------------------------------------------------------- /GPUImageFilter-06/framework/Source/GPUImageColorDodgeBlendFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageTwoInputFilter.h" 2 | 3 | /** Applies a color dodge blend of two images 4 | */ 5 | @interface GPUImageColorDodgeBlendFilter : GPUImageTwoInputFilter 6 | { 7 | } 8 | 9 | @end 10 | -------------------------------------------------------------------------------- /GPUImageFilter-06/framework/Source/GPUImageColorInvertFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageFilter.h" 2 | 3 | @interface GPUImageColorInvertFilter : GPUImageFilter 4 | { 5 | } 6 | 7 | @end 8 | -------------------------------------------------------------------------------- /GPUImageFilter-06/framework/Source/GPUImageColorLocalBinaryPatternFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImage3x3TextureSamplingFilter.h" 2 | 3 | @interface GPUImageColorLocalBinaryPatternFilter : GPUImage3x3TextureSamplingFilter 4 | 5 | @end 6 | -------------------------------------------------------------------------------- /GPUImageFilter-06/framework/Source/GPUImageColorPackingFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageFilter.h" 2 | 3 | @interface GPUImageColorPackingFilter : GPUImageFilter 4 | { 5 | GLint texelWidthUniform, texelHeightUniform; 6 | 7 | CGFloat texelWidth, texelHeight; 8 | } 9 | 10 | @end 11 | -------------------------------------------------------------------------------- /GPUImageFilter-06/framework/Source/GPUImageDarkenBlendFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageTwoInputFilter.h" 2 | 3 | @interface GPUImageDarkenBlendFilter : GPUImageTwoInputFilter 4 | { 5 | } 6 | 7 | @end 8 | -------------------------------------------------------------------------------- /GPUImageFilter-06/framework/Source/GPUImageDifferenceBlendFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageTwoInputFilter.h" 2 | 3 | @interface GPUImageDifferenceBlendFilter : GPUImageTwoInputFilter 4 | { 5 | } 6 | 7 | @end 8 | -------------------------------------------------------------------------------- /GPUImageFilter-06/framework/Source/GPUImageDirectionalSobelEdgeDetectionFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImage3x3TextureSamplingFilter.h" 2 | 3 | @interface GPUImageDirectionalSobelEdgeDetectionFilter : GPUImage3x3TextureSamplingFilter 4 | 5 | @end 6 | -------------------------------------------------------------------------------- /GPUImageFilter-06/framework/Source/GPUImageDissolveBlendFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageTwoInputFilter.h" 2 | 3 | @interface GPUImageDissolveBlendFilter : GPUImageTwoInputFilter 4 | { 5 | GLint mixUniform; 6 | } 7 | 8 | // Mix ranges from 0.0 (only image 1) to 1.0 (only image 2), with 0.5 (half of either) as the normal level 9 | @property(readwrite, nonatomic) CGFloat mix; 10 | 11 | @end 12 | -------------------------------------------------------------------------------- /GPUImageFilter-06/framework/Source/GPUImageDivideBlendFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageTwoInputFilter.h" 2 | 3 | @interface GPUImageDivideBlendFilter : GPUImageTwoInputFilter 4 | 5 | @end 6 | -------------------------------------------------------------------------------- /GPUImageFilter-06/framework/Source/GPUImageEmbossFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImage3x3ConvolutionFilter.h" 2 | 3 | @interface GPUImageEmbossFilter : GPUImage3x3ConvolutionFilter 4 | 5 | // The strength of the embossing, from 0.0 to 4.0, with 1.0 as the normal level 6 | @property(readwrite, nonatomic) CGFloat intensity; 7 | 8 | @end 9 | -------------------------------------------------------------------------------- /GPUImageFilter-06/framework/Source/GPUImageExclusionBlendFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageTwoInputFilter.h" 2 | 3 | @interface GPUImageExclusionBlendFilter : GPUImageTwoInputFilter 4 | { 5 | } 6 | 7 | @end 8 | -------------------------------------------------------------------------------- /GPUImageFilter-06/framework/Source/GPUImageExposureFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageFilter.h" 2 | 3 | @interface GPUImageExposureFilter : GPUImageFilter 4 | { 5 | GLint exposureUniform; 6 | } 7 | 8 | // Exposure ranges from -10.0 to 10.0, with 0.0 as the normal level 9 | @property(readwrite, nonatomic) CGFloat exposure; 10 | 11 | @end 12 | -------------------------------------------------------------------------------- /GPUImageFilter-06/framework/Source/GPUImageGammaFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageFilter.h" 2 | 3 | @interface GPUImageGammaFilter : GPUImageFilter 4 | { 5 | GLint gammaUniform; 6 | } 7 | 8 | // Gamma ranges from 0.0 to 3.0, with 1.0 as the normal level 9 | @property(readwrite, nonatomic) CGFloat gamma; 10 | 11 | @end 12 | -------------------------------------------------------------------------------- /GPUImageFilter-06/framework/Source/GPUImageGlassSphereFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageSphereRefractionFilter.h" 2 | 3 | @interface GPUImageGlassSphereFilter : GPUImageSphereRefractionFilter 4 | 5 | @end 6 | -------------------------------------------------------------------------------- /GPUImageFilter-06/framework/Source/GPUImageGrayscaleFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageFilter.h" 2 | 3 | extern NSString *const kGPUImageLuminanceFragmentShaderString; 4 | 5 | /** Converts an image to grayscale (a slightly faster implementation of the saturation filter, without the ability to vary the color contribution) 6 | */ 7 | @interface GPUImageGrayscaleFilter : GPUImageFilter 8 | 9 | @end 10 | -------------------------------------------------------------------------------- /GPUImageFilter-06/framework/Source/GPUImageHalftoneFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImagePixellateFilter.h" 2 | 3 | @interface GPUImageHalftoneFilter : GPUImagePixellateFilter 4 | 5 | @end 6 | -------------------------------------------------------------------------------- /GPUImageFilter-06/framework/Source/GPUImageHardLightBlendFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageTwoInputFilter.h" 2 | 3 | @interface GPUImageHardLightBlendFilter : GPUImageTwoInputFilter 4 | { 5 | } 6 | 7 | @end 8 | -------------------------------------------------------------------------------- /GPUImageFilter-06/framework/Source/GPUImageHistogramGenerator.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageFilter.h" 2 | 3 | @interface GPUImageHistogramGenerator : GPUImageFilter 4 | { 5 | GLint backgroundColorUniform; 6 | } 7 | 8 | @end 9 | -------------------------------------------------------------------------------- /GPUImageFilter-06/framework/Source/GPUImageHueBlendFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageTwoInputFilter.h" 2 | 3 | @interface GPUImageHueBlendFilter : GPUImageTwoInputFilter 4 | 5 | @end 6 | -------------------------------------------------------------------------------- /GPUImageFilter-06/framework/Source/GPUImageHueFilter.h: -------------------------------------------------------------------------------- 1 | 2 | #import "GPUImageFilter.h" 3 | 4 | @interface GPUImageHueFilter : GPUImageFilter 5 | { 6 | GLint hueAdjustUniform; 7 | 8 | } 9 | @property (nonatomic, readwrite) CGFloat hue; 10 | 11 | @end 12 | -------------------------------------------------------------------------------- /GPUImageFilter-06/framework/Source/GPUImageKuwaharaRadius3Filter.h: -------------------------------------------------------------------------------- 1 | // 2 | // GPUImageKuwaharaRadius3Filter.h 3 | 4 | #import "GPUImageFilter.h" 5 | 6 | @interface GPUImageKuwaharaRadius3Filter : GPUImageFilter 7 | 8 | @end 9 | -------------------------------------------------------------------------------- /GPUImageFilter-06/framework/Source/GPUImageLanczosResamplingFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageTwoPassTextureSamplingFilter.h" 2 | 3 | @interface GPUImageLanczosResamplingFilter : GPUImageTwoPassTextureSamplingFilter 4 | 5 | @property(readwrite, nonatomic) CGSize originalImageSize; 6 | 7 | @end 8 | -------------------------------------------------------------------------------- /GPUImageFilter-06/framework/Source/GPUImageLaplacianFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImage3x3ConvolutionFilter.h" 2 | 3 | @interface GPUImageLaplacianFilter : GPUImage3x3ConvolutionFilter 4 | 5 | @end 6 | -------------------------------------------------------------------------------- /GPUImageFilter-06/framework/Source/GPUImageLightenBlendFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageTwoInputFilter.h" 2 | 3 | /// Blends two images by taking the maximum value of each color component between the images 4 | @interface GPUImageLightenBlendFilter : GPUImageTwoInputFilter 5 | { 6 | } 7 | 8 | @end 9 | -------------------------------------------------------------------------------- /GPUImageFilter-06/framework/Source/GPUImageLinearBurnBlendFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageTwoInputFilter.h" 2 | 3 | @interface GPUImageLinearBurnBlendFilter : GPUImageTwoInputFilter 4 | 5 | @end 6 | -------------------------------------------------------------------------------- /GPUImageFilter-06/framework/Source/GPUImageLocalBinaryPatternFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImage3x3TextureSamplingFilter.h" 2 | 3 | @interface GPUImageLocalBinaryPatternFilter : GPUImage3x3TextureSamplingFilter 4 | 5 | @end 6 | -------------------------------------------------------------------------------- /GPUImageFilter-06/framework/Source/GPUImageLuminanceRangeFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageFilter.h" 2 | 3 | @interface GPUImageLuminanceRangeFilter : GPUImageFilter 4 | { 5 | GLint rangeReductionUniform; 6 | } 7 | 8 | /** The degree to reduce the luminance range, from 0.0 to 1.0. Default is 0.6. 9 | */ 10 | @property(readwrite, nonatomic) CGFloat rangeReductionFactor; 11 | 12 | @end 13 | -------------------------------------------------------------------------------- /GPUImageFilter-06/framework/Source/GPUImageLuminosityBlendFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageTwoInputFilter.h" 2 | 3 | @interface GPUImageLuminosityBlendFilter : GPUImageTwoInputFilter 4 | 5 | @end 6 | -------------------------------------------------------------------------------- /GPUImageFilter-06/framework/Source/GPUImageMaskFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageTwoInputFilter.h" 2 | 3 | @interface GPUImageMaskFilter : GPUImageTwoInputFilter 4 | 5 | @end 6 | -------------------------------------------------------------------------------- /GPUImageFilter-06/framework/Source/GPUImageMedianFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImage3x3TextureSamplingFilter.h" 2 | 3 | @interface GPUImageMedianFilter : GPUImage3x3TextureSamplingFilter 4 | 5 | @end 6 | -------------------------------------------------------------------------------- /GPUImageFilter-06/framework/Source/GPUImageMultiplyBlendFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageTwoInputFilter.h" 2 | 3 | @interface GPUImageMultiplyBlendFilter : GPUImageTwoInputFilter 4 | { 5 | } 6 | 7 | @end 8 | -------------------------------------------------------------------------------- /GPUImageFilter-06/framework/Source/GPUImageNonMaximumSuppressionFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImage3x3TextureSamplingFilter.h" 2 | 3 | @interface GPUImageNonMaximumSuppressionFilter : GPUImage3x3TextureSamplingFilter 4 | 5 | @end 6 | -------------------------------------------------------------------------------- /GPUImageFilter-06/framework/Source/GPUImageNormalBlendFilter.h: -------------------------------------------------------------------------------- 1 | // Created by Jorge Garcia on 9/5/12. 2 | // 3 | 4 | #import "GPUImageTwoInputFilter.h" 5 | 6 | @interface GPUImageNormalBlendFilter : GPUImageTwoInputFilter 7 | 8 | @end 9 | -------------------------------------------------------------------------------- /GPUImageFilter-06/framework/Source/GPUImageOpacityFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageFilter.h" 2 | 3 | @interface GPUImageOpacityFilter : GPUImageFilter 4 | { 5 | GLint opacityUniform; 6 | } 7 | 8 | // Opacity ranges from 0.0 to 1.0, with 1.0 as the normal setting 9 | @property(readwrite, nonatomic) CGFloat opacity; 10 | 11 | @end 12 | -------------------------------------------------------------------------------- /GPUImageFilter-06/framework/Source/GPUImageOverlayBlendFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageTwoInputFilter.h" 2 | 3 | @interface GPUImageOverlayBlendFilter : GPUImageTwoInputFilter 4 | 5 | @end 6 | -------------------------------------------------------------------------------- /GPUImageFilter-06/framework/Source/GPUImagePolkaDotFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImagePixellateFilter.h" 2 | 3 | @interface GPUImagePolkaDotFilter : GPUImagePixellateFilter 4 | { 5 | GLint dotScalingUniform; 6 | } 7 | 8 | @property(readwrite, nonatomic) CGFloat dotScaling; 9 | 10 | @end 11 | -------------------------------------------------------------------------------- /GPUImageFilter-06/framework/Source/GPUImagePrewittEdgeDetectionFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageSobelEdgeDetectionFilter.h" 2 | 3 | @interface GPUImagePrewittEdgeDetectionFilter : GPUImageSobelEdgeDetectionFilter 4 | 5 | @end 6 | -------------------------------------------------------------------------------- /GPUImageFilter-06/framework/Source/GPUImageSaturationBlendFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageTwoInputFilter.h" 2 | 3 | @interface GPUImageSaturationBlendFilter : GPUImageTwoInputFilter 4 | 5 | @end 6 | -------------------------------------------------------------------------------- /GPUImageFilter-06/framework/Source/GPUImageScreenBlendFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageTwoInputFilter.h" 2 | 3 | @interface GPUImageScreenBlendFilter : GPUImageTwoInputFilter 4 | { 5 | } 6 | 7 | @end 8 | -------------------------------------------------------------------------------- /GPUImageFilter-06/framework/Source/GPUImageSepiaFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageColorMatrixFilter.h" 2 | 3 | /// Simple sepia tone filter 4 | @interface GPUImageSepiaFilter : GPUImageColorMatrixFilter 5 | 6 | @end 7 | -------------------------------------------------------------------------------- /GPUImageFilter-06/framework/Source/GPUImageSharpenFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageFilter.h" 2 | 3 | @interface GPUImageSharpenFilter : GPUImageFilter 4 | { 5 | GLint sharpnessUniform; 6 | GLint imageWidthFactorUniform, imageHeightFactorUniform; 7 | } 8 | 9 | // Sharpness ranges from -4.0 to 4.0, with 0.0 as the normal level 10 | @property(readwrite, nonatomic) CGFloat sharpness; 11 | 12 | @end 13 | -------------------------------------------------------------------------------- /GPUImageFilter-06/framework/Source/GPUImageSingleComponentGaussianBlurFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageGaussianBlurFilter.h" 2 | 3 | // This filter merely performs the standard Gaussian blur on the red color channel (assuming a luminance image) 4 | 5 | @interface GPUImageSingleComponentGaussianBlurFilter : GPUImageGaussianBlurFilter 6 | 7 | @end 8 | -------------------------------------------------------------------------------- /GPUImageFilter-06/framework/Source/GPUImageSketchFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageSobelEdgeDetectionFilter.h" 2 | 3 | /** Converts video to look like a sketch. 4 | 5 | This is just the Sobel edge detection filter with the colors inverted. 6 | */ 7 | @interface GPUImageSketchFilter : GPUImageSobelEdgeDetectionFilter 8 | { 9 | } 10 | 11 | @end 12 | -------------------------------------------------------------------------------- /GPUImageFilter-06/framework/Source/GPUImageSoftLightBlendFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageTwoInputFilter.h" 2 | 3 | @interface GPUImageSoftLightBlendFilter : GPUImageTwoInputFilter 4 | { 5 | } 6 | 7 | @end 8 | -------------------------------------------------------------------------------- /GPUImageFilter-06/framework/Source/GPUImageSourceOverBlendFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageTwoInputFilter.h" 2 | 3 | @interface GPUImageSourceOverBlendFilter : GPUImageTwoInputFilter 4 | 5 | @end 6 | -------------------------------------------------------------------------------- /GPUImageFilter-06/framework/Source/GPUImageSubtractBlendFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageTwoInputFilter.h" 2 | 3 | @interface GPUImageSubtractBlendFilter : GPUImageTwoInputFilter 4 | 5 | @end 6 | -------------------------------------------------------------------------------- /GPUImageFilter-06/framework/Source/GPUImageTextureInput.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageOutput.h" 2 | 3 | @interface GPUImageTextureInput : GPUImageOutput 4 | { 5 | CGSize textureSize; 6 | } 7 | 8 | // Initialization and teardown 9 | - (id)initWithTexture:(GLuint)newInputTexture size:(CGSize)newTextureSize; 10 | 11 | // Image rendering 12 | - (void)processTextureWithFrameTime:(CMTime)frameTime; 13 | 14 | @end 15 | -------------------------------------------------------------------------------- /GPUImageFilter-06/framework/Source/GPUImageThresholdSketchFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageThresholdEdgeDetectionFilter.h" 2 | 3 | @interface GPUImageThresholdSketchFilter : GPUImageThresholdEdgeDetectionFilter 4 | 5 | @end 6 | -------------------------------------------------------------------------------- /GPUImageFilter-06/framework/Source/GPUImageVoronoiConsumerFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageTwoInputFilter.h" 2 | 3 | @interface GPUImageVoronoiConsumerFilter : GPUImageTwoInputFilter 4 | { 5 | GLint sizeUniform; 6 | } 7 | 8 | @property (nonatomic, readwrite) CGSize sizeInPixels; 9 | 10 | @end 11 | -------------------------------------------------------------------------------- /GPUImageFilter-06/framework/Source/GPUImageWeakPixelInclusionFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImage3x3TextureSamplingFilter.h" 2 | 3 | @interface GPUImageWeakPixelInclusionFilter : GPUImage3x3TextureSamplingFilter 4 | 5 | @end 6 | -------------------------------------------------------------------------------- /GPUImageFilter-06/framework/Source/GPUImageXYDerivativeFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageSobelEdgeDetectionFilter.h" 2 | 3 | @interface GPUImageXYDerivativeFilter : GPUImageSobelEdgeDetectionFilter 4 | 5 | @end 6 | -------------------------------------------------------------------------------- /GPUImageFilter-06/framework/Source/Mac/GPUImageMac-Prefix.pch: -------------------------------------------------------------------------------- 1 | // 2 | // Prefix header for all source files of the 'GPUImageMac' target in the 'GPUImageMac' project 3 | // 4 | 5 | #ifdef __OBJC__ 6 | #import 7 | #endif 8 | -------------------------------------------------------------------------------- /GPUImageFilter-06/framework/Source/Mac/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /GPUImageFilter-06/framework/Source/iOS/Framework/module.modulemap: -------------------------------------------------------------------------------- 1 | framework module GPUImage { 2 | umbrella header "GPUImageFramework.h" 3 | 4 | export * 5 | module * { export * } 6 | } 7 | -------------------------------------------------------------------------------- /GPUImageFilter-06/framework/Source/iOS/GPUImage-Prefix.pch: -------------------------------------------------------------------------------- 1 | // 2 | // Prefix header for all source files of the 'GPUImage' target in the 'GPUImage' project 3 | // 4 | 5 | #ifdef __OBJC__ 6 | #import 7 | #endif 8 | -------------------------------------------------------------------------------- /GPUImageFilter-07/GPUImageFilter.xcodeproj/project.xcworkspace/contents.xcworkspacedata: -------------------------------------------------------------------------------- 1 | 2 | 4 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /GPUImageFilter-07/GPUImageFilter.xcodeproj/project.xcworkspace/xcuserdata/mac.xcuserdatad/UserInterfaceState.xcuserstate: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/QinminiOS/GPUImage/3a90ecf0f7edc036ecbdad9149776a5d463f5a50/GPUImageFilter-07/GPUImageFilter.xcodeproj/project.xcworkspace/xcuserdata/mac.xcuserdatad/UserInterfaceState.xcuserstate -------------------------------------------------------------------------------- /GPUImageFilter-07/GPUImageFilter.xcodeproj/project.xcworkspace/xcuserdata/qinmin.xcuserdatad/UserInterfaceState.xcuserstate: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/QinminiOS/GPUImage/3a90ecf0f7edc036ecbdad9149776a5d463f5a50/GPUImageFilter-07/GPUImageFilter.xcodeproj/project.xcworkspace/xcuserdata/qinmin.xcuserdatad/UserInterfaceState.xcuserstate -------------------------------------------------------------------------------- /GPUImageFilter-07/GPUImageFilter.xcodeproj/xcuserdata/qinmin.xcuserdatad/xcdebugger/Breakpoints_v2.xcbkptlist: -------------------------------------------------------------------------------- 1 | 2 | 5 | 6 | -------------------------------------------------------------------------------- /GPUImageFilter-07/GPUImageFilter/1.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/QinminiOS/GPUImage/3a90ecf0f7edc036ecbdad9149776a5d463f5a50/GPUImageFilter-07/GPUImageFilter/1.jpg -------------------------------------------------------------------------------- /GPUImageFilter-07/GPUImageFilter/2.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/QinminiOS/GPUImage/3a90ecf0f7edc036ecbdad9149776a5d463f5a50/GPUImageFilter-07/GPUImageFilter/2.jpg -------------------------------------------------------------------------------- /GPUImageFilter-07/GPUImageFilter/3.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/QinminiOS/GPUImage/3a90ecf0f7edc036ecbdad9149776a5d463f5a50/GPUImageFilter-07/GPUImageFilter/3.jpg -------------------------------------------------------------------------------- /GPUImageFilter-07/GPUImageFilter/AppDelegate.h: -------------------------------------------------------------------------------- 1 | // 2 | // AppDelegate.h 3 | // GPUImageFilter 4 | // 5 | // Created by mac on 17/2/4. 6 | // Copyright © 2017年 Qinmin. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface AppDelegate : UIResponder 12 | 13 | @property (strong, nonatomic) UIWindow *window; 14 | 15 | 16 | @end 17 | 18 | -------------------------------------------------------------------------------- /GPUImageFilter-07/GPUImageFilter/QMGrayBilateralBlendFilter.h: -------------------------------------------------------------------------------- 1 | // 2 | // QMRGBBilateralBlendFilter.h 3 | // GPUImageFilter 4 | // 5 | // Created by mac on 17/5/11. 6 | // Copyright © 2017年 Qinmin. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface QMGrayBilateralBlendFilter : GPUImageFilterGroup 12 | 13 | @end 14 | -------------------------------------------------------------------------------- /GPUImageFilter-07/GPUImageFilter/SecondViewController.h: -------------------------------------------------------------------------------- 1 | // 2 | // Second ViewController.h 3 | // GPUImageFilter 4 | // 5 | // Created by mac on 17/5/3. 6 | // Copyright © 2017年 Qinmin. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface SecondViewController : UIViewController 12 | 13 | @end 14 | -------------------------------------------------------------------------------- /GPUImageFilter-07/GPUImageFilter/Utils/png/prebuilt/ios/libpng.a: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/QinminiOS/GPUImage/3a90ecf0f7edc036ecbdad9149776a5d463f5a50/GPUImageFilter-07/GPUImageFilter/Utils/png/prebuilt/ios/libpng.a -------------------------------------------------------------------------------- /GPUImageFilter-07/GPUImageFilter/ViewController.h: -------------------------------------------------------------------------------- 1 | // 2 | // ViewController.h 3 | // GPUImageFilter 4 | // 5 | // Created by mac on 17/2/4. 6 | // Copyright © 2017年 Qinmin. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface ViewController : UIViewController 12 | 13 | 14 | @end 15 | 16 | -------------------------------------------------------------------------------- /GPUImageFilter-07/framework/GPUImage.xcodeproj/project.xcworkspace/contents.xcworkspacedata: -------------------------------------------------------------------------------- 1 | 2 | 4 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /GPUImageFilter-07/framework/GPUImage.xcodeproj/project.xcworkspace/xcuserdata/mac.xcuserdatad/UserInterfaceState.xcuserstate: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/QinminiOS/GPUImage/3a90ecf0f7edc036ecbdad9149776a5d463f5a50/GPUImageFilter-07/framework/GPUImage.xcodeproj/project.xcworkspace/xcuserdata/mac.xcuserdatad/UserInterfaceState.xcuserstate -------------------------------------------------------------------------------- /GPUImageFilter-07/framework/GPUImage.xcodeproj/project.xcworkspace/xcuserdata/mac.xcuserdatad/WorkspaceSettings.xcsettings: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | BuildLocationStyle 6 | UseTargetSettings 7 | 8 | 9 | -------------------------------------------------------------------------------- /GPUImageFilter-07/framework/Resources/lookup.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/QinminiOS/GPUImage/3a90ecf0f7edc036ecbdad9149776a5d463f5a50/GPUImageFilter-07/framework/Resources/lookup.png -------------------------------------------------------------------------------- /GPUImageFilter-07/framework/Resources/lookup_amatorka.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/QinminiOS/GPUImage/3a90ecf0f7edc036ecbdad9149776a5d463f5a50/GPUImageFilter-07/framework/Resources/lookup_amatorka.png -------------------------------------------------------------------------------- /GPUImageFilter-07/framework/Resources/lookup_miss_etikate.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/QinminiOS/GPUImage/3a90ecf0f7edc036ecbdad9149776a5d463f5a50/GPUImageFilter-07/framework/Resources/lookup_miss_etikate.png -------------------------------------------------------------------------------- /GPUImageFilter-07/framework/Resources/lookup_soft_elegance_1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/QinminiOS/GPUImage/3a90ecf0f7edc036ecbdad9149776a5d463f5a50/GPUImageFilter-07/framework/Resources/lookup_soft_elegance_1.png -------------------------------------------------------------------------------- /GPUImageFilter-07/framework/Resources/lookup_soft_elegance_2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/QinminiOS/GPUImage/3a90ecf0f7edc036ecbdad9149776a5d463f5a50/GPUImageFilter-07/framework/Resources/lookup_soft_elegance_2.png -------------------------------------------------------------------------------- /GPUImageFilter-07/framework/Source/GPUImageAdaptiveThresholdFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageFilterGroup.h" 2 | 3 | @interface GPUImageAdaptiveThresholdFilter : GPUImageFilterGroup 4 | 5 | /** A multiplier for the background averaging blur radius in pixels, with a default of 4 6 | */ 7 | @property(readwrite, nonatomic) CGFloat blurRadiusInPixels; 8 | 9 | @end 10 | -------------------------------------------------------------------------------- /GPUImageFilter-07/framework/Source/GPUImageAddBlendFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageTwoInputFilter.h" 2 | 3 | @interface GPUImageAddBlendFilter : GPUImageTwoInputFilter 4 | 5 | @end 6 | -------------------------------------------------------------------------------- /GPUImageFilter-07/framework/Source/GPUImageAlphaBlendFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageTwoInputFilter.h" 2 | 3 | @interface GPUImageAlphaBlendFilter : GPUImageTwoInputFilter 4 | { 5 | GLint mixUniform; 6 | } 7 | 8 | // Mix ranges from 0.0 (only image 1) to 1.0 (only image 2), with 1.0 as the normal level 9 | @property(readwrite, nonatomic) CGFloat mix; 10 | 11 | @end 12 | -------------------------------------------------------------------------------- /GPUImageFilter-07/framework/Source/GPUImageAverageLuminanceThresholdFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageFilterGroup.h" 2 | 3 | @interface GPUImageAverageLuminanceThresholdFilter : GPUImageFilterGroup 4 | 5 | // This is multiplied by the continually calculated average image luminosity to arrive at the final threshold. Default is 1.0. 6 | @property(readwrite, nonatomic) CGFloat thresholdMultiplier; 7 | 8 | @end 9 | -------------------------------------------------------------------------------- /GPUImageFilter-07/framework/Source/GPUImageBoxBlurFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageGaussianBlurFilter.h" 2 | 3 | /** A hardware-accelerated box blur of an image 4 | */ 5 | @interface GPUImageBoxBlurFilter : GPUImageGaussianBlurFilter 6 | 7 | @end 8 | -------------------------------------------------------------------------------- /GPUImageFilter-07/framework/Source/GPUImageBrightnessFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageFilter.h" 2 | 3 | @interface GPUImageBrightnessFilter : GPUImageFilter 4 | { 5 | GLint brightnessUniform; 6 | } 7 | 8 | // Brightness ranges from -1.0 to 1.0, with 0.0 as the normal level 9 | @property(readwrite, nonatomic) CGFloat brightness; 10 | 11 | @end 12 | -------------------------------------------------------------------------------- /GPUImageFilter-07/framework/Source/GPUImageBuffer.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageFilter.h" 2 | 3 | @interface GPUImageBuffer : GPUImageFilter 4 | { 5 | NSMutableArray *bufferedFramebuffers; 6 | } 7 | 8 | @property(readwrite, nonatomic) NSUInteger bufferSize; 9 | 10 | @end 11 | -------------------------------------------------------------------------------- /GPUImageFilter-07/framework/Source/GPUImageCGAColorspaceFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageFilter.h" 2 | 3 | @interface GPUImageCGAColorspaceFilter : GPUImageFilter 4 | 5 | @end 6 | -------------------------------------------------------------------------------- /GPUImageFilter-07/framework/Source/GPUImageColorBlendFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageTwoInputFilter.h" 2 | 3 | @interface GPUImageColorBlendFilter : GPUImageTwoInputFilter 4 | 5 | @end 6 | -------------------------------------------------------------------------------- /GPUImageFilter-07/framework/Source/GPUImageColorBurnBlendFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageTwoInputFilter.h" 2 | 3 | /** Applies a color burn blend of two images 4 | */ 5 | @interface GPUImageColorBurnBlendFilter : GPUImageTwoInputFilter 6 | { 7 | } 8 | 9 | @end 10 | -------------------------------------------------------------------------------- /GPUImageFilter-07/framework/Source/GPUImageColorDodgeBlendFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageTwoInputFilter.h" 2 | 3 | /** Applies a color dodge blend of two images 4 | */ 5 | @interface GPUImageColorDodgeBlendFilter : GPUImageTwoInputFilter 6 | { 7 | } 8 | 9 | @end 10 | -------------------------------------------------------------------------------- /GPUImageFilter-07/framework/Source/GPUImageColorInvertFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageFilter.h" 2 | 3 | @interface GPUImageColorInvertFilter : GPUImageFilter 4 | { 5 | } 6 | 7 | @end 8 | -------------------------------------------------------------------------------- /GPUImageFilter-07/framework/Source/GPUImageColorLocalBinaryPatternFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImage3x3TextureSamplingFilter.h" 2 | 3 | @interface GPUImageColorLocalBinaryPatternFilter : GPUImage3x3TextureSamplingFilter 4 | 5 | @end 6 | -------------------------------------------------------------------------------- /GPUImageFilter-07/framework/Source/GPUImageColorPackingFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageFilter.h" 2 | 3 | @interface GPUImageColorPackingFilter : GPUImageFilter 4 | { 5 | GLint texelWidthUniform, texelHeightUniform; 6 | 7 | CGFloat texelWidth, texelHeight; 8 | } 9 | 10 | @end 11 | -------------------------------------------------------------------------------- /GPUImageFilter-07/framework/Source/GPUImageDarkenBlendFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageTwoInputFilter.h" 2 | 3 | @interface GPUImageDarkenBlendFilter : GPUImageTwoInputFilter 4 | { 5 | } 6 | 7 | @end 8 | -------------------------------------------------------------------------------- /GPUImageFilter-07/framework/Source/GPUImageDifferenceBlendFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageTwoInputFilter.h" 2 | 3 | @interface GPUImageDifferenceBlendFilter : GPUImageTwoInputFilter 4 | { 5 | } 6 | 7 | @end 8 | -------------------------------------------------------------------------------- /GPUImageFilter-07/framework/Source/GPUImageDirectionalSobelEdgeDetectionFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImage3x3TextureSamplingFilter.h" 2 | 3 | @interface GPUImageDirectionalSobelEdgeDetectionFilter : GPUImage3x3TextureSamplingFilter 4 | 5 | @end 6 | -------------------------------------------------------------------------------- /GPUImageFilter-07/framework/Source/GPUImageDissolveBlendFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageTwoInputFilter.h" 2 | 3 | @interface GPUImageDissolveBlendFilter : GPUImageTwoInputFilter 4 | { 5 | GLint mixUniform; 6 | } 7 | 8 | // Mix ranges from 0.0 (only image 1) to 1.0 (only image 2), with 0.5 (half of either) as the normal level 9 | @property(readwrite, nonatomic) CGFloat mix; 10 | 11 | @end 12 | -------------------------------------------------------------------------------- /GPUImageFilter-07/framework/Source/GPUImageDivideBlendFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageTwoInputFilter.h" 2 | 3 | @interface GPUImageDivideBlendFilter : GPUImageTwoInputFilter 4 | 5 | @end 6 | -------------------------------------------------------------------------------- /GPUImageFilter-07/framework/Source/GPUImageEmbossFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImage3x3ConvolutionFilter.h" 2 | 3 | @interface GPUImageEmbossFilter : GPUImage3x3ConvolutionFilter 4 | 5 | // The strength of the embossing, from 0.0 to 4.0, with 1.0 as the normal level 6 | @property(readwrite, nonatomic) CGFloat intensity; 7 | 8 | @end 9 | -------------------------------------------------------------------------------- /GPUImageFilter-07/framework/Source/GPUImageExclusionBlendFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageTwoInputFilter.h" 2 | 3 | @interface GPUImageExclusionBlendFilter : GPUImageTwoInputFilter 4 | { 5 | } 6 | 7 | @end 8 | -------------------------------------------------------------------------------- /GPUImageFilter-07/framework/Source/GPUImageExposureFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageFilter.h" 2 | 3 | @interface GPUImageExposureFilter : GPUImageFilter 4 | { 5 | GLint exposureUniform; 6 | } 7 | 8 | // Exposure ranges from -10.0 to 10.0, with 0.0 as the normal level 9 | @property(readwrite, nonatomic) CGFloat exposure; 10 | 11 | @end 12 | -------------------------------------------------------------------------------- /GPUImageFilter-07/framework/Source/GPUImageGammaFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageFilter.h" 2 | 3 | @interface GPUImageGammaFilter : GPUImageFilter 4 | { 5 | GLint gammaUniform; 6 | } 7 | 8 | // Gamma ranges from 0.0 to 3.0, with 1.0 as the normal level 9 | @property(readwrite, nonatomic) CGFloat gamma; 10 | 11 | @end 12 | -------------------------------------------------------------------------------- /GPUImageFilter-07/framework/Source/GPUImageGlassSphereFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageSphereRefractionFilter.h" 2 | 3 | @interface GPUImageGlassSphereFilter : GPUImageSphereRefractionFilter 4 | 5 | @end 6 | -------------------------------------------------------------------------------- /GPUImageFilter-07/framework/Source/GPUImageGrayscaleFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageFilter.h" 2 | 3 | extern NSString *const kGPUImageLuminanceFragmentShaderString; 4 | 5 | /** Converts an image to grayscale (a slightly faster implementation of the saturation filter, without the ability to vary the color contribution) 6 | */ 7 | @interface GPUImageGrayscaleFilter : GPUImageFilter 8 | 9 | @end 10 | -------------------------------------------------------------------------------- /GPUImageFilter-07/framework/Source/GPUImageHalftoneFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImagePixellateFilter.h" 2 | 3 | @interface GPUImageHalftoneFilter : GPUImagePixellateFilter 4 | 5 | @end 6 | -------------------------------------------------------------------------------- /GPUImageFilter-07/framework/Source/GPUImageHardLightBlendFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageTwoInputFilter.h" 2 | 3 | @interface GPUImageHardLightBlendFilter : GPUImageTwoInputFilter 4 | { 5 | } 6 | 7 | @end 8 | -------------------------------------------------------------------------------- /GPUImageFilter-07/framework/Source/GPUImageHistogramGenerator.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageFilter.h" 2 | 3 | @interface GPUImageHistogramGenerator : GPUImageFilter 4 | { 5 | GLint backgroundColorUniform; 6 | } 7 | 8 | @end 9 | -------------------------------------------------------------------------------- /GPUImageFilter-07/framework/Source/GPUImageHueBlendFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageTwoInputFilter.h" 2 | 3 | @interface GPUImageHueBlendFilter : GPUImageTwoInputFilter 4 | 5 | @end 6 | -------------------------------------------------------------------------------- /GPUImageFilter-07/framework/Source/GPUImageHueFilter.h: -------------------------------------------------------------------------------- 1 | 2 | #import "GPUImageFilter.h" 3 | 4 | @interface GPUImageHueFilter : GPUImageFilter 5 | { 6 | GLint hueAdjustUniform; 7 | 8 | } 9 | @property (nonatomic, readwrite) CGFloat hue; 10 | 11 | @end 12 | -------------------------------------------------------------------------------- /GPUImageFilter-07/framework/Source/GPUImageKuwaharaRadius3Filter.h: -------------------------------------------------------------------------------- 1 | // 2 | // GPUImageKuwaharaRadius3Filter.h 3 | 4 | #import "GPUImageFilter.h" 5 | 6 | @interface GPUImageKuwaharaRadius3Filter : GPUImageFilter 7 | 8 | @end 9 | -------------------------------------------------------------------------------- /GPUImageFilter-07/framework/Source/GPUImageLanczosResamplingFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageTwoPassTextureSamplingFilter.h" 2 | 3 | @interface GPUImageLanczosResamplingFilter : GPUImageTwoPassTextureSamplingFilter 4 | 5 | @property(readwrite, nonatomic) CGSize originalImageSize; 6 | 7 | @end 8 | -------------------------------------------------------------------------------- /GPUImageFilter-07/framework/Source/GPUImageLaplacianFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImage3x3ConvolutionFilter.h" 2 | 3 | @interface GPUImageLaplacianFilter : GPUImage3x3ConvolutionFilter 4 | 5 | @end 6 | -------------------------------------------------------------------------------- /GPUImageFilter-07/framework/Source/GPUImageLightenBlendFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageTwoInputFilter.h" 2 | 3 | /// Blends two images by taking the maximum value of each color component between the images 4 | @interface GPUImageLightenBlendFilter : GPUImageTwoInputFilter 5 | { 6 | } 7 | 8 | @end 9 | -------------------------------------------------------------------------------- /GPUImageFilter-07/framework/Source/GPUImageLinearBurnBlendFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageTwoInputFilter.h" 2 | 3 | @interface GPUImageLinearBurnBlendFilter : GPUImageTwoInputFilter 4 | 5 | @end 6 | -------------------------------------------------------------------------------- /GPUImageFilter-07/framework/Source/GPUImageLocalBinaryPatternFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImage3x3TextureSamplingFilter.h" 2 | 3 | @interface GPUImageLocalBinaryPatternFilter : GPUImage3x3TextureSamplingFilter 4 | 5 | @end 6 | -------------------------------------------------------------------------------- /GPUImageFilter-07/framework/Source/GPUImageLuminanceRangeFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageFilter.h" 2 | 3 | @interface GPUImageLuminanceRangeFilter : GPUImageFilter 4 | { 5 | GLint rangeReductionUniform; 6 | } 7 | 8 | /** The degree to reduce the luminance range, from 0.0 to 1.0. Default is 0.6. 9 | */ 10 | @property(readwrite, nonatomic) CGFloat rangeReductionFactor; 11 | 12 | @end 13 | -------------------------------------------------------------------------------- /GPUImageFilter-07/framework/Source/GPUImageLuminosityBlendFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageTwoInputFilter.h" 2 | 3 | @interface GPUImageLuminosityBlendFilter : GPUImageTwoInputFilter 4 | 5 | @end 6 | -------------------------------------------------------------------------------- /GPUImageFilter-07/framework/Source/GPUImageMaskFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageTwoInputFilter.h" 2 | 3 | @interface GPUImageMaskFilter : GPUImageTwoInputFilter 4 | 5 | @end 6 | -------------------------------------------------------------------------------- /GPUImageFilter-07/framework/Source/GPUImageMedianFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImage3x3TextureSamplingFilter.h" 2 | 3 | @interface GPUImageMedianFilter : GPUImage3x3TextureSamplingFilter 4 | 5 | @end 6 | -------------------------------------------------------------------------------- /GPUImageFilter-07/framework/Source/GPUImageMultiplyBlendFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageTwoInputFilter.h" 2 | 3 | @interface GPUImageMultiplyBlendFilter : GPUImageTwoInputFilter 4 | { 5 | } 6 | 7 | @end 8 | -------------------------------------------------------------------------------- /GPUImageFilter-07/framework/Source/GPUImageNonMaximumSuppressionFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImage3x3TextureSamplingFilter.h" 2 | 3 | @interface GPUImageNonMaximumSuppressionFilter : GPUImage3x3TextureSamplingFilter 4 | 5 | @end 6 | -------------------------------------------------------------------------------- /GPUImageFilter-07/framework/Source/GPUImageNormalBlendFilter.h: -------------------------------------------------------------------------------- 1 | // Created by Jorge Garcia on 9/5/12. 2 | // 3 | 4 | #import "GPUImageTwoInputFilter.h" 5 | 6 | @interface GPUImageNormalBlendFilter : GPUImageTwoInputFilter 7 | 8 | @end 9 | -------------------------------------------------------------------------------- /GPUImageFilter-07/framework/Source/GPUImageOpacityFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageFilter.h" 2 | 3 | @interface GPUImageOpacityFilter : GPUImageFilter 4 | { 5 | GLint opacityUniform; 6 | } 7 | 8 | // Opacity ranges from 0.0 to 1.0, with 1.0 as the normal setting 9 | @property(readwrite, nonatomic) CGFloat opacity; 10 | 11 | @end 12 | -------------------------------------------------------------------------------- /GPUImageFilter-07/framework/Source/GPUImageOverlayBlendFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageTwoInputFilter.h" 2 | 3 | @interface GPUImageOverlayBlendFilter : GPUImageTwoInputFilter 4 | 5 | @end 6 | -------------------------------------------------------------------------------- /GPUImageFilter-07/framework/Source/GPUImagePolkaDotFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImagePixellateFilter.h" 2 | 3 | @interface GPUImagePolkaDotFilter : GPUImagePixellateFilter 4 | { 5 | GLint dotScalingUniform; 6 | } 7 | 8 | @property(readwrite, nonatomic) CGFloat dotScaling; 9 | 10 | @end 11 | -------------------------------------------------------------------------------- /GPUImageFilter-07/framework/Source/GPUImagePrewittEdgeDetectionFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageSobelEdgeDetectionFilter.h" 2 | 3 | @interface GPUImagePrewittEdgeDetectionFilter : GPUImageSobelEdgeDetectionFilter 4 | 5 | @end 6 | -------------------------------------------------------------------------------- /GPUImageFilter-07/framework/Source/GPUImageSaturationBlendFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageTwoInputFilter.h" 2 | 3 | @interface GPUImageSaturationBlendFilter : GPUImageTwoInputFilter 4 | 5 | @end 6 | -------------------------------------------------------------------------------- /GPUImageFilter-07/framework/Source/GPUImageScreenBlendFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageTwoInputFilter.h" 2 | 3 | @interface GPUImageScreenBlendFilter : GPUImageTwoInputFilter 4 | { 5 | } 6 | 7 | @end 8 | -------------------------------------------------------------------------------- /GPUImageFilter-07/framework/Source/GPUImageSepiaFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageColorMatrixFilter.h" 2 | 3 | /// Simple sepia tone filter 4 | @interface GPUImageSepiaFilter : GPUImageColorMatrixFilter 5 | 6 | @end 7 | -------------------------------------------------------------------------------- /GPUImageFilter-07/framework/Source/GPUImageSharpenFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageFilter.h" 2 | 3 | @interface GPUImageSharpenFilter : GPUImageFilter 4 | { 5 | GLint sharpnessUniform; 6 | GLint imageWidthFactorUniform, imageHeightFactorUniform; 7 | } 8 | 9 | // Sharpness ranges from -4.0 to 4.0, with 0.0 as the normal level 10 | @property(readwrite, nonatomic) CGFloat sharpness; 11 | 12 | @end 13 | -------------------------------------------------------------------------------- /GPUImageFilter-07/framework/Source/GPUImageSingleComponentGaussianBlurFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageGaussianBlurFilter.h" 2 | 3 | // This filter merely performs the standard Gaussian blur on the red color channel (assuming a luminance image) 4 | 5 | @interface GPUImageSingleComponentGaussianBlurFilter : GPUImageGaussianBlurFilter 6 | 7 | @end 8 | -------------------------------------------------------------------------------- /GPUImageFilter-07/framework/Source/GPUImageSketchFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageSobelEdgeDetectionFilter.h" 2 | 3 | /** Converts video to look like a sketch. 4 | 5 | This is just the Sobel edge detection filter with the colors inverted. 6 | */ 7 | @interface GPUImageSketchFilter : GPUImageSobelEdgeDetectionFilter 8 | { 9 | } 10 | 11 | @end 12 | -------------------------------------------------------------------------------- /GPUImageFilter-07/framework/Source/GPUImageSoftLightBlendFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageTwoInputFilter.h" 2 | 3 | @interface GPUImageSoftLightBlendFilter : GPUImageTwoInputFilter 4 | { 5 | } 6 | 7 | @end 8 | -------------------------------------------------------------------------------- /GPUImageFilter-07/framework/Source/GPUImageSourceOverBlendFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageTwoInputFilter.h" 2 | 3 | @interface GPUImageSourceOverBlendFilter : GPUImageTwoInputFilter 4 | 5 | @end 6 | -------------------------------------------------------------------------------- /GPUImageFilter-07/framework/Source/GPUImageSubtractBlendFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageTwoInputFilter.h" 2 | 3 | @interface GPUImageSubtractBlendFilter : GPUImageTwoInputFilter 4 | 5 | @end 6 | -------------------------------------------------------------------------------- /GPUImageFilter-07/framework/Source/GPUImageTextureInput.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageOutput.h" 2 | 3 | @interface GPUImageTextureInput : GPUImageOutput 4 | { 5 | CGSize textureSize; 6 | } 7 | 8 | // Initialization and teardown 9 | - (id)initWithTexture:(GLuint)newInputTexture size:(CGSize)newTextureSize; 10 | 11 | // Image rendering 12 | - (void)processTextureWithFrameTime:(CMTime)frameTime; 13 | 14 | @end 15 | -------------------------------------------------------------------------------- /GPUImageFilter-07/framework/Source/GPUImageThresholdSketchFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageThresholdEdgeDetectionFilter.h" 2 | 3 | @interface GPUImageThresholdSketchFilter : GPUImageThresholdEdgeDetectionFilter 4 | 5 | @end 6 | -------------------------------------------------------------------------------- /GPUImageFilter-07/framework/Source/GPUImageVoronoiConsumerFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageTwoInputFilter.h" 2 | 3 | @interface GPUImageVoronoiConsumerFilter : GPUImageTwoInputFilter 4 | { 5 | GLint sizeUniform; 6 | } 7 | 8 | @property (nonatomic, readwrite) CGSize sizeInPixels; 9 | 10 | @end 11 | -------------------------------------------------------------------------------- /GPUImageFilter-07/framework/Source/GPUImageWeakPixelInclusionFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImage3x3TextureSamplingFilter.h" 2 | 3 | @interface GPUImageWeakPixelInclusionFilter : GPUImage3x3TextureSamplingFilter 4 | 5 | @end 6 | -------------------------------------------------------------------------------- /GPUImageFilter-07/framework/Source/GPUImageXYDerivativeFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageSobelEdgeDetectionFilter.h" 2 | 3 | @interface GPUImageXYDerivativeFilter : GPUImageSobelEdgeDetectionFilter 4 | 5 | @end 6 | -------------------------------------------------------------------------------- /GPUImageFilter-07/framework/Source/Mac/GPUImageMac-Prefix.pch: -------------------------------------------------------------------------------- 1 | // 2 | // Prefix header for all source files of the 'GPUImageMac' target in the 'GPUImageMac' project 3 | // 4 | 5 | #ifdef __OBJC__ 6 | #import 7 | #endif 8 | -------------------------------------------------------------------------------- /GPUImageFilter-07/framework/Source/Mac/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /GPUImageFilter-07/framework/Source/iOS/Framework/module.modulemap: -------------------------------------------------------------------------------- 1 | framework module GPUImage { 2 | umbrella header "GPUImageFramework.h" 3 | 4 | export * 5 | module * { export * } 6 | } 7 | -------------------------------------------------------------------------------- /GPUImageFilter-07/framework/Source/iOS/GPUImage-Prefix.pch: -------------------------------------------------------------------------------- 1 | // 2 | // Prefix header for all source files of the 'GPUImage' target in the 'GPUImage' project 3 | // 4 | 5 | #ifdef __OBJC__ 6 | #import 7 | #endif 8 | -------------------------------------------------------------------------------- /GPUImageFilter-08/GPUImageFilter.xcodeproj/project.xcworkspace/contents.xcworkspacedata: -------------------------------------------------------------------------------- 1 | 2 | 4 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /GPUImageFilter-08/GPUImageFilter.xcodeproj/project.xcworkspace/xcuserdata/mac.xcuserdatad/UserInterfaceState.xcuserstate: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/QinminiOS/GPUImage/3a90ecf0f7edc036ecbdad9149776a5d463f5a50/GPUImageFilter-08/GPUImageFilter.xcodeproj/project.xcworkspace/xcuserdata/mac.xcuserdatad/UserInterfaceState.xcuserstate -------------------------------------------------------------------------------- /GPUImageFilter-08/GPUImageFilter/1.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/QinminiOS/GPUImage/3a90ecf0f7edc036ecbdad9149776a5d463f5a50/GPUImageFilter-08/GPUImageFilter/1.jpg -------------------------------------------------------------------------------- /GPUImageFilter-08/GPUImageFilter/AppDelegate.h: -------------------------------------------------------------------------------- 1 | // 2 | // AppDelegate.h 3 | // GPUImageFilter 4 | // 5 | // Created by mac on 17/2/4. 6 | // Copyright © 2017年 Qinmin. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface AppDelegate : UIResponder 12 | 13 | @property (strong, nonatomic) UIWindow *window; 14 | 15 | 16 | @end 17 | 18 | -------------------------------------------------------------------------------- /GPUImageFilter-08/GPUImageFilter/ViewController.h: -------------------------------------------------------------------------------- 1 | // 2 | // ViewController.h 3 | // GPUImageFilter 4 | // 5 | // Created by mac on 17/2/4. 6 | // Copyright © 2017年 Qinmin. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface ViewController : UIViewController 12 | 13 | 14 | @end 15 | 16 | -------------------------------------------------------------------------------- /GPUImageFilter-08/framework/GPUImage.xcodeproj/project.xcworkspace/contents.xcworkspacedata: -------------------------------------------------------------------------------- 1 | 2 | 4 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /GPUImageFilter-08/framework/GPUImage.xcodeproj/project.xcworkspace/xcuserdata/mac.xcuserdatad/UserInterfaceState.xcuserstate: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/QinminiOS/GPUImage/3a90ecf0f7edc036ecbdad9149776a5d463f5a50/GPUImageFilter-08/framework/GPUImage.xcodeproj/project.xcworkspace/xcuserdata/mac.xcuserdatad/UserInterfaceState.xcuserstate -------------------------------------------------------------------------------- /GPUImageFilter-08/framework/GPUImage.xcodeproj/project.xcworkspace/xcuserdata/mac.xcuserdatad/WorkspaceSettings.xcsettings: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | BuildLocationStyle 6 | UseTargetSettings 7 | 8 | 9 | -------------------------------------------------------------------------------- /GPUImageFilter-08/framework/Resources/lookup.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/QinminiOS/GPUImage/3a90ecf0f7edc036ecbdad9149776a5d463f5a50/GPUImageFilter-08/framework/Resources/lookup.png -------------------------------------------------------------------------------- /GPUImageFilter-08/framework/Resources/lookup_amatorka.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/QinminiOS/GPUImage/3a90ecf0f7edc036ecbdad9149776a5d463f5a50/GPUImageFilter-08/framework/Resources/lookup_amatorka.png -------------------------------------------------------------------------------- /GPUImageFilter-08/framework/Resources/lookup_miss_etikate.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/QinminiOS/GPUImage/3a90ecf0f7edc036ecbdad9149776a5d463f5a50/GPUImageFilter-08/framework/Resources/lookup_miss_etikate.png -------------------------------------------------------------------------------- /GPUImageFilter-08/framework/Resources/lookup_soft_elegance_1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/QinminiOS/GPUImage/3a90ecf0f7edc036ecbdad9149776a5d463f5a50/GPUImageFilter-08/framework/Resources/lookup_soft_elegance_1.png -------------------------------------------------------------------------------- /GPUImageFilter-08/framework/Resources/lookup_soft_elegance_2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/QinminiOS/GPUImage/3a90ecf0f7edc036ecbdad9149776a5d463f5a50/GPUImageFilter-08/framework/Resources/lookup_soft_elegance_2.png -------------------------------------------------------------------------------- /GPUImageFilter-08/framework/Source/GPUImageAdaptiveThresholdFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageFilterGroup.h" 2 | 3 | @interface GPUImageAdaptiveThresholdFilter : GPUImageFilterGroup 4 | 5 | /** A multiplier for the background averaging blur radius in pixels, with a default of 4 6 | */ 7 | @property(readwrite, nonatomic) CGFloat blurRadiusInPixels; 8 | 9 | @end 10 | -------------------------------------------------------------------------------- /GPUImageFilter-08/framework/Source/GPUImageAddBlendFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageTwoInputFilter.h" 2 | 3 | @interface GPUImageAddBlendFilter : GPUImageTwoInputFilter 4 | 5 | @end 6 | -------------------------------------------------------------------------------- /GPUImageFilter-08/framework/Source/GPUImageAlphaBlendFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageTwoInputFilter.h" 2 | 3 | @interface GPUImageAlphaBlendFilter : GPUImageTwoInputFilter 4 | { 5 | GLint mixUniform; 6 | } 7 | 8 | // Mix ranges from 0.0 (only image 1) to 1.0 (only image 2), with 1.0 as the normal level 9 | @property(readwrite, nonatomic) CGFloat mix; 10 | 11 | @end 12 | -------------------------------------------------------------------------------- /GPUImageFilter-08/framework/Source/GPUImageAverageLuminanceThresholdFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageFilterGroup.h" 2 | 3 | @interface GPUImageAverageLuminanceThresholdFilter : GPUImageFilterGroup 4 | 5 | // This is multiplied by the continually calculated average image luminosity to arrive at the final threshold. Default is 1.0. 6 | @property(readwrite, nonatomic) CGFloat thresholdMultiplier; 7 | 8 | @end 9 | -------------------------------------------------------------------------------- /GPUImageFilter-08/framework/Source/GPUImageBoxBlurFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageGaussianBlurFilter.h" 2 | 3 | /** A hardware-accelerated box blur of an image 4 | */ 5 | @interface GPUImageBoxBlurFilter : GPUImageGaussianBlurFilter 6 | 7 | @end 8 | -------------------------------------------------------------------------------- /GPUImageFilter-08/framework/Source/GPUImageBrightnessFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageFilter.h" 2 | 3 | @interface GPUImageBrightnessFilter : GPUImageFilter 4 | { 5 | GLint brightnessUniform; 6 | } 7 | 8 | // Brightness ranges from -1.0 to 1.0, with 0.0 as the normal level 9 | @property(readwrite, nonatomic) CGFloat brightness; 10 | 11 | @end 12 | -------------------------------------------------------------------------------- /GPUImageFilter-08/framework/Source/GPUImageBuffer.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageFilter.h" 2 | 3 | @interface GPUImageBuffer : GPUImageFilter 4 | { 5 | NSMutableArray *bufferedFramebuffers; 6 | } 7 | 8 | @property(readwrite, nonatomic) NSUInteger bufferSize; 9 | 10 | @end 11 | -------------------------------------------------------------------------------- /GPUImageFilter-08/framework/Source/GPUImageCGAColorspaceFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageFilter.h" 2 | 3 | @interface GPUImageCGAColorspaceFilter : GPUImageFilter 4 | 5 | @end 6 | -------------------------------------------------------------------------------- /GPUImageFilter-08/framework/Source/GPUImageColorBlendFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageTwoInputFilter.h" 2 | 3 | @interface GPUImageColorBlendFilter : GPUImageTwoInputFilter 4 | 5 | @end 6 | -------------------------------------------------------------------------------- /GPUImageFilter-08/framework/Source/GPUImageColorBurnBlendFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageTwoInputFilter.h" 2 | 3 | /** Applies a color burn blend of two images 4 | */ 5 | @interface GPUImageColorBurnBlendFilter : GPUImageTwoInputFilter 6 | { 7 | } 8 | 9 | @end 10 | -------------------------------------------------------------------------------- /GPUImageFilter-08/framework/Source/GPUImageColorDodgeBlendFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageTwoInputFilter.h" 2 | 3 | /** Applies a color dodge blend of two images 4 | */ 5 | @interface GPUImageColorDodgeBlendFilter : GPUImageTwoInputFilter 6 | { 7 | } 8 | 9 | @end 10 | -------------------------------------------------------------------------------- /GPUImageFilter-08/framework/Source/GPUImageColorInvertFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageFilter.h" 2 | 3 | @interface GPUImageColorInvertFilter : GPUImageFilter 4 | { 5 | } 6 | 7 | @end 8 | -------------------------------------------------------------------------------- /GPUImageFilter-08/framework/Source/GPUImageColorLocalBinaryPatternFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImage3x3TextureSamplingFilter.h" 2 | 3 | @interface GPUImageColorLocalBinaryPatternFilter : GPUImage3x3TextureSamplingFilter 4 | 5 | @end 6 | -------------------------------------------------------------------------------- /GPUImageFilter-08/framework/Source/GPUImageColorPackingFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageFilter.h" 2 | 3 | @interface GPUImageColorPackingFilter : GPUImageFilter 4 | { 5 | GLint texelWidthUniform, texelHeightUniform; 6 | 7 | CGFloat texelWidth, texelHeight; 8 | } 9 | 10 | @end 11 | -------------------------------------------------------------------------------- /GPUImageFilter-08/framework/Source/GPUImageDarkenBlendFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageTwoInputFilter.h" 2 | 3 | @interface GPUImageDarkenBlendFilter : GPUImageTwoInputFilter 4 | { 5 | } 6 | 7 | @end 8 | -------------------------------------------------------------------------------- /GPUImageFilter-08/framework/Source/GPUImageDifferenceBlendFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageTwoInputFilter.h" 2 | 3 | @interface GPUImageDifferenceBlendFilter : GPUImageTwoInputFilter 4 | { 5 | } 6 | 7 | @end 8 | -------------------------------------------------------------------------------- /GPUImageFilter-08/framework/Source/GPUImageDirectionalSobelEdgeDetectionFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImage3x3TextureSamplingFilter.h" 2 | 3 | @interface GPUImageDirectionalSobelEdgeDetectionFilter : GPUImage3x3TextureSamplingFilter 4 | 5 | @end 6 | -------------------------------------------------------------------------------- /GPUImageFilter-08/framework/Source/GPUImageDissolveBlendFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageTwoInputFilter.h" 2 | 3 | @interface GPUImageDissolveBlendFilter : GPUImageTwoInputFilter 4 | { 5 | GLint mixUniform; 6 | } 7 | 8 | // Mix ranges from 0.0 (only image 1) to 1.0 (only image 2), with 0.5 (half of either) as the normal level 9 | @property(readwrite, nonatomic) CGFloat mix; 10 | 11 | @end 12 | -------------------------------------------------------------------------------- /GPUImageFilter-08/framework/Source/GPUImageDivideBlendFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageTwoInputFilter.h" 2 | 3 | @interface GPUImageDivideBlendFilter : GPUImageTwoInputFilter 4 | 5 | @end 6 | -------------------------------------------------------------------------------- /GPUImageFilter-08/framework/Source/GPUImageEmbossFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImage3x3ConvolutionFilter.h" 2 | 3 | @interface GPUImageEmbossFilter : GPUImage3x3ConvolutionFilter 4 | 5 | // The strength of the embossing, from 0.0 to 4.0, with 1.0 as the normal level 6 | @property(readwrite, nonatomic) CGFloat intensity; 7 | 8 | @end 9 | -------------------------------------------------------------------------------- /GPUImageFilter-08/framework/Source/GPUImageExclusionBlendFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageTwoInputFilter.h" 2 | 3 | @interface GPUImageExclusionBlendFilter : GPUImageTwoInputFilter 4 | { 5 | } 6 | 7 | @end 8 | -------------------------------------------------------------------------------- /GPUImageFilter-08/framework/Source/GPUImageExposureFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageFilter.h" 2 | 3 | @interface GPUImageExposureFilter : GPUImageFilter 4 | { 5 | GLint exposureUniform; 6 | } 7 | 8 | // Exposure ranges from -10.0 to 10.0, with 0.0 as the normal level 9 | @property(readwrite, nonatomic) CGFloat exposure; 10 | 11 | @end 12 | -------------------------------------------------------------------------------- /GPUImageFilter-08/framework/Source/GPUImageGammaFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageFilter.h" 2 | 3 | @interface GPUImageGammaFilter : GPUImageFilter 4 | { 5 | GLint gammaUniform; 6 | } 7 | 8 | // Gamma ranges from 0.0 to 3.0, with 1.0 as the normal level 9 | @property(readwrite, nonatomic) CGFloat gamma; 10 | 11 | @end 12 | -------------------------------------------------------------------------------- /GPUImageFilter-08/framework/Source/GPUImageGlassSphereFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageSphereRefractionFilter.h" 2 | 3 | @interface GPUImageGlassSphereFilter : GPUImageSphereRefractionFilter 4 | 5 | @end 6 | -------------------------------------------------------------------------------- /GPUImageFilter-08/framework/Source/GPUImageGrayscaleFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageFilter.h" 2 | 3 | extern NSString *const kGPUImageLuminanceFragmentShaderString; 4 | 5 | /** Converts an image to grayscale (a slightly faster implementation of the saturation filter, without the ability to vary the color contribution) 6 | */ 7 | @interface GPUImageGrayscaleFilter : GPUImageFilter 8 | 9 | @end 10 | -------------------------------------------------------------------------------- /GPUImageFilter-08/framework/Source/GPUImageHalftoneFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImagePixellateFilter.h" 2 | 3 | @interface GPUImageHalftoneFilter : GPUImagePixellateFilter 4 | 5 | @end 6 | -------------------------------------------------------------------------------- /GPUImageFilter-08/framework/Source/GPUImageHardLightBlendFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageTwoInputFilter.h" 2 | 3 | @interface GPUImageHardLightBlendFilter : GPUImageTwoInputFilter 4 | { 5 | } 6 | 7 | @end 8 | -------------------------------------------------------------------------------- /GPUImageFilter-08/framework/Source/GPUImageHistogramGenerator.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageFilter.h" 2 | 3 | @interface GPUImageHistogramGenerator : GPUImageFilter 4 | { 5 | GLint backgroundColorUniform; 6 | } 7 | 8 | @end 9 | -------------------------------------------------------------------------------- /GPUImageFilter-08/framework/Source/GPUImageHueBlendFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageTwoInputFilter.h" 2 | 3 | @interface GPUImageHueBlendFilter : GPUImageTwoInputFilter 4 | 5 | @end 6 | -------------------------------------------------------------------------------- /GPUImageFilter-08/framework/Source/GPUImageHueFilter.h: -------------------------------------------------------------------------------- 1 | 2 | #import "GPUImageFilter.h" 3 | 4 | @interface GPUImageHueFilter : GPUImageFilter 5 | { 6 | GLint hueAdjustUniform; 7 | 8 | } 9 | @property (nonatomic, readwrite) CGFloat hue; 10 | 11 | @end 12 | -------------------------------------------------------------------------------- /GPUImageFilter-08/framework/Source/GPUImageKuwaharaRadius3Filter.h: -------------------------------------------------------------------------------- 1 | // 2 | // GPUImageKuwaharaRadius3Filter.h 3 | 4 | #import "GPUImageFilter.h" 5 | 6 | @interface GPUImageKuwaharaRadius3Filter : GPUImageFilter 7 | 8 | @end 9 | -------------------------------------------------------------------------------- /GPUImageFilter-08/framework/Source/GPUImageLanczosResamplingFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageTwoPassTextureSamplingFilter.h" 2 | 3 | @interface GPUImageLanczosResamplingFilter : GPUImageTwoPassTextureSamplingFilter 4 | 5 | @property(readwrite, nonatomic) CGSize originalImageSize; 6 | 7 | @end 8 | -------------------------------------------------------------------------------- /GPUImageFilter-08/framework/Source/GPUImageLaplacianFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImage3x3ConvolutionFilter.h" 2 | 3 | @interface GPUImageLaplacianFilter : GPUImage3x3ConvolutionFilter 4 | 5 | @end 6 | -------------------------------------------------------------------------------- /GPUImageFilter-08/framework/Source/GPUImageLightenBlendFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageTwoInputFilter.h" 2 | 3 | /// Blends two images by taking the maximum value of each color component between the images 4 | @interface GPUImageLightenBlendFilter : GPUImageTwoInputFilter 5 | { 6 | } 7 | 8 | @end 9 | -------------------------------------------------------------------------------- /GPUImageFilter-08/framework/Source/GPUImageLinearBurnBlendFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageTwoInputFilter.h" 2 | 3 | @interface GPUImageLinearBurnBlendFilter : GPUImageTwoInputFilter 4 | 5 | @end 6 | -------------------------------------------------------------------------------- /GPUImageFilter-08/framework/Source/GPUImageLocalBinaryPatternFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImage3x3TextureSamplingFilter.h" 2 | 3 | @interface GPUImageLocalBinaryPatternFilter : GPUImage3x3TextureSamplingFilter 4 | 5 | @end 6 | -------------------------------------------------------------------------------- /GPUImageFilter-08/framework/Source/GPUImageLuminanceRangeFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageFilter.h" 2 | 3 | @interface GPUImageLuminanceRangeFilter : GPUImageFilter 4 | { 5 | GLint rangeReductionUniform; 6 | } 7 | 8 | /** The degree to reduce the luminance range, from 0.0 to 1.0. Default is 0.6. 9 | */ 10 | @property(readwrite, nonatomic) CGFloat rangeReductionFactor; 11 | 12 | @end 13 | -------------------------------------------------------------------------------- /GPUImageFilter-08/framework/Source/GPUImageLuminosityBlendFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageTwoInputFilter.h" 2 | 3 | @interface GPUImageLuminosityBlendFilter : GPUImageTwoInputFilter 4 | 5 | @end 6 | -------------------------------------------------------------------------------- /GPUImageFilter-08/framework/Source/GPUImageMaskFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageTwoInputFilter.h" 2 | 3 | @interface GPUImageMaskFilter : GPUImageTwoInputFilter 4 | 5 | @end 6 | -------------------------------------------------------------------------------- /GPUImageFilter-08/framework/Source/GPUImageMedianFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImage3x3TextureSamplingFilter.h" 2 | 3 | @interface GPUImageMedianFilter : GPUImage3x3TextureSamplingFilter 4 | 5 | @end 6 | -------------------------------------------------------------------------------- /GPUImageFilter-08/framework/Source/GPUImageMultiplyBlendFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageTwoInputFilter.h" 2 | 3 | @interface GPUImageMultiplyBlendFilter : GPUImageTwoInputFilter 4 | { 5 | } 6 | 7 | @end 8 | -------------------------------------------------------------------------------- /GPUImageFilter-08/framework/Source/GPUImageNonMaximumSuppressionFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImage3x3TextureSamplingFilter.h" 2 | 3 | @interface GPUImageNonMaximumSuppressionFilter : GPUImage3x3TextureSamplingFilter 4 | 5 | @end 6 | -------------------------------------------------------------------------------- /GPUImageFilter-08/framework/Source/GPUImageNormalBlendFilter.h: -------------------------------------------------------------------------------- 1 | // Created by Jorge Garcia on 9/5/12. 2 | // 3 | 4 | #import "GPUImageTwoInputFilter.h" 5 | 6 | @interface GPUImageNormalBlendFilter : GPUImageTwoInputFilter 7 | 8 | @end 9 | -------------------------------------------------------------------------------- /GPUImageFilter-08/framework/Source/GPUImageOpacityFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageFilter.h" 2 | 3 | @interface GPUImageOpacityFilter : GPUImageFilter 4 | { 5 | GLint opacityUniform; 6 | } 7 | 8 | // Opacity ranges from 0.0 to 1.0, with 1.0 as the normal setting 9 | @property(readwrite, nonatomic) CGFloat opacity; 10 | 11 | @end 12 | -------------------------------------------------------------------------------- /GPUImageFilter-08/framework/Source/GPUImageOverlayBlendFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageTwoInputFilter.h" 2 | 3 | @interface GPUImageOverlayBlendFilter : GPUImageTwoInputFilter 4 | 5 | @end 6 | -------------------------------------------------------------------------------- /GPUImageFilter-08/framework/Source/GPUImagePolkaDotFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImagePixellateFilter.h" 2 | 3 | @interface GPUImagePolkaDotFilter : GPUImagePixellateFilter 4 | { 5 | GLint dotScalingUniform; 6 | } 7 | 8 | @property(readwrite, nonatomic) CGFloat dotScaling; 9 | 10 | @end 11 | -------------------------------------------------------------------------------- /GPUImageFilter-08/framework/Source/GPUImagePrewittEdgeDetectionFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageSobelEdgeDetectionFilter.h" 2 | 3 | @interface GPUImagePrewittEdgeDetectionFilter : GPUImageSobelEdgeDetectionFilter 4 | 5 | @end 6 | -------------------------------------------------------------------------------- /GPUImageFilter-08/framework/Source/GPUImageSaturationBlendFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageTwoInputFilter.h" 2 | 3 | @interface GPUImageSaturationBlendFilter : GPUImageTwoInputFilter 4 | 5 | @end 6 | -------------------------------------------------------------------------------- /GPUImageFilter-08/framework/Source/GPUImageScreenBlendFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageTwoInputFilter.h" 2 | 3 | @interface GPUImageScreenBlendFilter : GPUImageTwoInputFilter 4 | { 5 | } 6 | 7 | @end 8 | -------------------------------------------------------------------------------- /GPUImageFilter-08/framework/Source/GPUImageSepiaFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageColorMatrixFilter.h" 2 | 3 | /// Simple sepia tone filter 4 | @interface GPUImageSepiaFilter : GPUImageColorMatrixFilter 5 | 6 | @end 7 | -------------------------------------------------------------------------------- /GPUImageFilter-08/framework/Source/GPUImageSharpenFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageFilter.h" 2 | 3 | @interface GPUImageSharpenFilter : GPUImageFilter 4 | { 5 | GLint sharpnessUniform; 6 | GLint imageWidthFactorUniform, imageHeightFactorUniform; 7 | } 8 | 9 | // Sharpness ranges from -4.0 to 4.0, with 0.0 as the normal level 10 | @property(readwrite, nonatomic) CGFloat sharpness; 11 | 12 | @end 13 | -------------------------------------------------------------------------------- /GPUImageFilter-08/framework/Source/GPUImageSingleComponentGaussianBlurFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageGaussianBlurFilter.h" 2 | 3 | // This filter merely performs the standard Gaussian blur on the red color channel (assuming a luminance image) 4 | 5 | @interface GPUImageSingleComponentGaussianBlurFilter : GPUImageGaussianBlurFilter 6 | 7 | @end 8 | -------------------------------------------------------------------------------- /GPUImageFilter-08/framework/Source/GPUImageSketchFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageSobelEdgeDetectionFilter.h" 2 | 3 | /** Converts video to look like a sketch. 4 | 5 | This is just the Sobel edge detection filter with the colors inverted. 6 | */ 7 | @interface GPUImageSketchFilter : GPUImageSobelEdgeDetectionFilter 8 | { 9 | } 10 | 11 | @end 12 | -------------------------------------------------------------------------------- /GPUImageFilter-08/framework/Source/GPUImageSoftLightBlendFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageTwoInputFilter.h" 2 | 3 | @interface GPUImageSoftLightBlendFilter : GPUImageTwoInputFilter 4 | { 5 | } 6 | 7 | @end 8 | -------------------------------------------------------------------------------- /GPUImageFilter-08/framework/Source/GPUImageSourceOverBlendFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageTwoInputFilter.h" 2 | 3 | @interface GPUImageSourceOverBlendFilter : GPUImageTwoInputFilter 4 | 5 | @end 6 | -------------------------------------------------------------------------------- /GPUImageFilter-08/framework/Source/GPUImageSubtractBlendFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageTwoInputFilter.h" 2 | 3 | @interface GPUImageSubtractBlendFilter : GPUImageTwoInputFilter 4 | 5 | @end 6 | -------------------------------------------------------------------------------- /GPUImageFilter-08/framework/Source/GPUImageThresholdSketchFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageThresholdEdgeDetectionFilter.h" 2 | 3 | @interface GPUImageThresholdSketchFilter : GPUImageThresholdEdgeDetectionFilter 4 | 5 | @end 6 | -------------------------------------------------------------------------------- /GPUImageFilter-08/framework/Source/GPUImageVoronoiConsumerFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageTwoInputFilter.h" 2 | 3 | @interface GPUImageVoronoiConsumerFilter : GPUImageTwoInputFilter 4 | { 5 | GLint sizeUniform; 6 | } 7 | 8 | @property (nonatomic, readwrite) CGSize sizeInPixels; 9 | 10 | @end 11 | -------------------------------------------------------------------------------- /GPUImageFilter-08/framework/Source/GPUImageWeakPixelInclusionFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImage3x3TextureSamplingFilter.h" 2 | 3 | @interface GPUImageWeakPixelInclusionFilter : GPUImage3x3TextureSamplingFilter 4 | 5 | @end 6 | -------------------------------------------------------------------------------- /GPUImageFilter-08/framework/Source/GPUImageXYDerivativeFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageSobelEdgeDetectionFilter.h" 2 | 3 | @interface GPUImageXYDerivativeFilter : GPUImageSobelEdgeDetectionFilter 4 | 5 | @end 6 | -------------------------------------------------------------------------------- /GPUImageFilter-08/framework/Source/Mac/GPUImageMac-Prefix.pch: -------------------------------------------------------------------------------- 1 | // 2 | // Prefix header for all source files of the 'GPUImageMac' target in the 'GPUImageMac' project 3 | // 4 | 5 | #ifdef __OBJC__ 6 | #import 7 | #endif 8 | -------------------------------------------------------------------------------- /GPUImageFilter-08/framework/Source/Mac/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /GPUImageFilter-08/framework/Source/iOS/Framework/module.modulemap: -------------------------------------------------------------------------------- 1 | framework module GPUImage { 2 | umbrella header "GPUImageFramework.h" 3 | 4 | export * 5 | module * { export * } 6 | } 7 | -------------------------------------------------------------------------------- /GPUImageFilter-08/framework/Source/iOS/GPUImage-Prefix.pch: -------------------------------------------------------------------------------- 1 | // 2 | // Prefix header for all source files of the 'GPUImage' target in the 'GPUImage' project 3 | // 4 | 5 | #ifdef __OBJC__ 6 | #import 7 | #endif 8 | -------------------------------------------------------------------------------- /GPUImageFilter-09/GPUImageFilter.xcodeproj/project.xcworkspace/contents.xcworkspacedata: -------------------------------------------------------------------------------- 1 | 2 | 4 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /GPUImageFilter-09/GPUImageFilter.xcodeproj/project.xcworkspace/xcuserdata/mac.xcuserdatad/UserInterfaceState.xcuserstate: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/QinminiOS/GPUImage/3a90ecf0f7edc036ecbdad9149776a5d463f5a50/GPUImageFilter-09/GPUImageFilter.xcodeproj/project.xcworkspace/xcuserdata/mac.xcuserdatad/UserInterfaceState.xcuserstate -------------------------------------------------------------------------------- /GPUImageFilter-09/GPUImageFilter.xcodeproj/project.xcworkspace/xcuserdata/qinmin.xcuserdatad/UserInterfaceState.xcuserstate: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/QinminiOS/GPUImage/3a90ecf0f7edc036ecbdad9149776a5d463f5a50/GPUImageFilter-09/GPUImageFilter.xcodeproj/project.xcworkspace/xcuserdata/qinmin.xcuserdatad/UserInterfaceState.xcuserstate -------------------------------------------------------------------------------- /GPUImageFilter-09/GPUImageFilter.xcodeproj/xcuserdata/qinmin.xcuserdatad/xcdebugger/Breakpoints_v2.xcbkptlist: -------------------------------------------------------------------------------- 1 | 2 | 5 | 6 | -------------------------------------------------------------------------------- /GPUImageFilter-09/GPUImageFilter/3.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/QinminiOS/GPUImage/3a90ecf0f7edc036ecbdad9149776a5d463f5a50/GPUImageFilter-09/GPUImageFilter/3.jpg -------------------------------------------------------------------------------- /GPUImageFilter-09/GPUImageFilter/AppDelegate.h: -------------------------------------------------------------------------------- 1 | // 2 | // AppDelegate.h 3 | // GPUImageFilter 4 | // 5 | // Created by mac on 17/2/4. 6 | // Copyright © 2017年 Qinmin. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface AppDelegate : UIResponder 12 | 13 | @property (strong, nonatomic) UIWindow *window; 14 | 15 | 16 | @end 17 | 18 | -------------------------------------------------------------------------------- /GPUImageFilter-09/GPUImageFilter/QM3DLightFilter.h: -------------------------------------------------------------------------------- 1 | // 2 | // QMRotationFilter.h 3 | // GPUImageFilter 4 | // 5 | // Created by qinmin on 2017/6/8. 6 | // Copyright © 2017年 Qinmin. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface QM3DLightFilter : GPUImageFilter 12 | 13 | - (instancetype)init; 14 | 15 | @end 16 | -------------------------------------------------------------------------------- /GPUImageFilter-09/GPUImageFilter/QMFishEyeFilter.h: -------------------------------------------------------------------------------- 1 | // 2 | // QMRotationFilter.h 3 | // GPUImageFilter 4 | // 5 | // Created by qinmin on 2017/6/8. 6 | // Copyright © 2017年 Qinmin. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface QMFishEyeFilter : GPUImageFilter 12 | 13 | @property (nonatomic, assign) GLfloat radius; 14 | 15 | - (instancetype)init; 16 | 17 | @end 18 | -------------------------------------------------------------------------------- /GPUImageFilter-09/GPUImageFilter/ViewController.h: -------------------------------------------------------------------------------- 1 | // 2 | // ViewController.h 3 | // GPUImageFilter 4 | // 5 | // Created by mac on 17/2/4. 6 | // Copyright © 2017年 Qinmin. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface ViewController : UIViewController 12 | 13 | 14 | @end 15 | 16 | -------------------------------------------------------------------------------- /GPUImageFilter-09/framework/GPUImage.xcodeproj/project.xcworkspace/contents.xcworkspacedata: -------------------------------------------------------------------------------- 1 | 2 | 4 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /GPUImageFilter-09/framework/GPUImage.xcodeproj/project.xcworkspace/xcuserdata/mac.xcuserdatad/UserInterfaceState.xcuserstate: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/QinminiOS/GPUImage/3a90ecf0f7edc036ecbdad9149776a5d463f5a50/GPUImageFilter-09/framework/GPUImage.xcodeproj/project.xcworkspace/xcuserdata/mac.xcuserdatad/UserInterfaceState.xcuserstate -------------------------------------------------------------------------------- /GPUImageFilter-09/framework/GPUImage.xcodeproj/project.xcworkspace/xcuserdata/mac.xcuserdatad/WorkspaceSettings.xcsettings: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | BuildLocationStyle 6 | UseTargetSettings 7 | 8 | 9 | -------------------------------------------------------------------------------- /GPUImageFilter-09/framework/Resources/lookup.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/QinminiOS/GPUImage/3a90ecf0f7edc036ecbdad9149776a5d463f5a50/GPUImageFilter-09/framework/Resources/lookup.png -------------------------------------------------------------------------------- /GPUImageFilter-09/framework/Resources/lookup_amatorka.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/QinminiOS/GPUImage/3a90ecf0f7edc036ecbdad9149776a5d463f5a50/GPUImageFilter-09/framework/Resources/lookup_amatorka.png -------------------------------------------------------------------------------- /GPUImageFilter-09/framework/Resources/lookup_miss_etikate.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/QinminiOS/GPUImage/3a90ecf0f7edc036ecbdad9149776a5d463f5a50/GPUImageFilter-09/framework/Resources/lookup_miss_etikate.png -------------------------------------------------------------------------------- /GPUImageFilter-09/framework/Resources/lookup_soft_elegance_1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/QinminiOS/GPUImage/3a90ecf0f7edc036ecbdad9149776a5d463f5a50/GPUImageFilter-09/framework/Resources/lookup_soft_elegance_1.png -------------------------------------------------------------------------------- /GPUImageFilter-09/framework/Resources/lookup_soft_elegance_2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/QinminiOS/GPUImage/3a90ecf0f7edc036ecbdad9149776a5d463f5a50/GPUImageFilter-09/framework/Resources/lookup_soft_elegance_2.png -------------------------------------------------------------------------------- /GPUImageFilter-09/framework/Source/GPUImageAdaptiveThresholdFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageFilterGroup.h" 2 | 3 | @interface GPUImageAdaptiveThresholdFilter : GPUImageFilterGroup 4 | 5 | /** A multiplier for the background averaging blur radius in pixels, with a default of 4 6 | */ 7 | @property(readwrite, nonatomic) CGFloat blurRadiusInPixels; 8 | 9 | @end 10 | -------------------------------------------------------------------------------- /GPUImageFilter-09/framework/Source/GPUImageAddBlendFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageTwoInputFilter.h" 2 | 3 | @interface GPUImageAddBlendFilter : GPUImageTwoInputFilter 4 | 5 | @end 6 | -------------------------------------------------------------------------------- /GPUImageFilter-09/framework/Source/GPUImageAlphaBlendFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageTwoInputFilter.h" 2 | 3 | @interface GPUImageAlphaBlendFilter : GPUImageTwoInputFilter 4 | { 5 | GLint mixUniform; 6 | } 7 | 8 | // Mix ranges from 0.0 (only image 1) to 1.0 (only image 2), with 1.0 as the normal level 9 | @property(readwrite, nonatomic) CGFloat mix; 10 | 11 | @end 12 | -------------------------------------------------------------------------------- /GPUImageFilter-09/framework/Source/GPUImageAverageLuminanceThresholdFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageFilterGroup.h" 2 | 3 | @interface GPUImageAverageLuminanceThresholdFilter : GPUImageFilterGroup 4 | 5 | // This is multiplied by the continually calculated average image luminosity to arrive at the final threshold. Default is 1.0. 6 | @property(readwrite, nonatomic) CGFloat thresholdMultiplier; 7 | 8 | @end 9 | -------------------------------------------------------------------------------- /GPUImageFilter-09/framework/Source/GPUImageBoxBlurFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageGaussianBlurFilter.h" 2 | 3 | /** A hardware-accelerated box blur of an image 4 | */ 5 | @interface GPUImageBoxBlurFilter : GPUImageGaussianBlurFilter 6 | 7 | @end 8 | -------------------------------------------------------------------------------- /GPUImageFilter-09/framework/Source/GPUImageBrightnessFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageFilter.h" 2 | 3 | @interface GPUImageBrightnessFilter : GPUImageFilter 4 | { 5 | GLint brightnessUniform; 6 | } 7 | 8 | // Brightness ranges from -1.0 to 1.0, with 0.0 as the normal level 9 | @property(readwrite, nonatomic) CGFloat brightness; 10 | 11 | @end 12 | -------------------------------------------------------------------------------- /GPUImageFilter-09/framework/Source/GPUImageBuffer.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageFilter.h" 2 | 3 | @interface GPUImageBuffer : GPUImageFilter 4 | { 5 | NSMutableArray *bufferedFramebuffers; 6 | } 7 | 8 | @property(readwrite, nonatomic) NSUInteger bufferSize; 9 | 10 | @end 11 | -------------------------------------------------------------------------------- /GPUImageFilter-09/framework/Source/GPUImageCGAColorspaceFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageFilter.h" 2 | 3 | @interface GPUImageCGAColorspaceFilter : GPUImageFilter 4 | 5 | @end 6 | -------------------------------------------------------------------------------- /GPUImageFilter-09/framework/Source/GPUImageColorBlendFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageTwoInputFilter.h" 2 | 3 | @interface GPUImageColorBlendFilter : GPUImageTwoInputFilter 4 | 5 | @end 6 | -------------------------------------------------------------------------------- /GPUImageFilter-09/framework/Source/GPUImageColorBurnBlendFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageTwoInputFilter.h" 2 | 3 | /** Applies a color burn blend of two images 4 | */ 5 | @interface GPUImageColorBurnBlendFilter : GPUImageTwoInputFilter 6 | { 7 | } 8 | 9 | @end 10 | -------------------------------------------------------------------------------- /GPUImageFilter-09/framework/Source/GPUImageColorDodgeBlendFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageTwoInputFilter.h" 2 | 3 | /** Applies a color dodge blend of two images 4 | */ 5 | @interface GPUImageColorDodgeBlendFilter : GPUImageTwoInputFilter 6 | { 7 | } 8 | 9 | @end 10 | -------------------------------------------------------------------------------- /GPUImageFilter-09/framework/Source/GPUImageColorInvertFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageFilter.h" 2 | 3 | @interface GPUImageColorInvertFilter : GPUImageFilter 4 | { 5 | } 6 | 7 | @end 8 | -------------------------------------------------------------------------------- /GPUImageFilter-09/framework/Source/GPUImageColorLocalBinaryPatternFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImage3x3TextureSamplingFilter.h" 2 | 3 | @interface GPUImageColorLocalBinaryPatternFilter : GPUImage3x3TextureSamplingFilter 4 | 5 | @end 6 | -------------------------------------------------------------------------------- /GPUImageFilter-09/framework/Source/GPUImageColorPackingFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageFilter.h" 2 | 3 | @interface GPUImageColorPackingFilter : GPUImageFilter 4 | { 5 | GLint texelWidthUniform, texelHeightUniform; 6 | 7 | CGFloat texelWidth, texelHeight; 8 | } 9 | 10 | @end 11 | -------------------------------------------------------------------------------- /GPUImageFilter-09/framework/Source/GPUImageDarkenBlendFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageTwoInputFilter.h" 2 | 3 | @interface GPUImageDarkenBlendFilter : GPUImageTwoInputFilter 4 | { 5 | } 6 | 7 | @end 8 | -------------------------------------------------------------------------------- /GPUImageFilter-09/framework/Source/GPUImageDifferenceBlendFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageTwoInputFilter.h" 2 | 3 | @interface GPUImageDifferenceBlendFilter : GPUImageTwoInputFilter 4 | { 5 | } 6 | 7 | @end 8 | -------------------------------------------------------------------------------- /GPUImageFilter-09/framework/Source/GPUImageDirectionalSobelEdgeDetectionFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImage3x3TextureSamplingFilter.h" 2 | 3 | @interface GPUImageDirectionalSobelEdgeDetectionFilter : GPUImage3x3TextureSamplingFilter 4 | 5 | @end 6 | -------------------------------------------------------------------------------- /GPUImageFilter-09/framework/Source/GPUImageDissolveBlendFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageTwoInputFilter.h" 2 | 3 | @interface GPUImageDissolveBlendFilter : GPUImageTwoInputFilter 4 | { 5 | GLint mixUniform; 6 | } 7 | 8 | // Mix ranges from 0.0 (only image 1) to 1.0 (only image 2), with 0.5 (half of either) as the normal level 9 | @property(readwrite, nonatomic) CGFloat mix; 10 | 11 | @end 12 | -------------------------------------------------------------------------------- /GPUImageFilter-09/framework/Source/GPUImageDivideBlendFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageTwoInputFilter.h" 2 | 3 | @interface GPUImageDivideBlendFilter : GPUImageTwoInputFilter 4 | 5 | @end 6 | -------------------------------------------------------------------------------- /GPUImageFilter-09/framework/Source/GPUImageEmbossFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImage3x3ConvolutionFilter.h" 2 | 3 | @interface GPUImageEmbossFilter : GPUImage3x3ConvolutionFilter 4 | 5 | // The strength of the embossing, from 0.0 to 4.0, with 1.0 as the normal level 6 | @property(readwrite, nonatomic) CGFloat intensity; 7 | 8 | @end 9 | -------------------------------------------------------------------------------- /GPUImageFilter-09/framework/Source/GPUImageExclusionBlendFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageTwoInputFilter.h" 2 | 3 | @interface GPUImageExclusionBlendFilter : GPUImageTwoInputFilter 4 | { 5 | } 6 | 7 | @end 8 | -------------------------------------------------------------------------------- /GPUImageFilter-09/framework/Source/GPUImageExposureFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageFilter.h" 2 | 3 | @interface GPUImageExposureFilter : GPUImageFilter 4 | { 5 | GLint exposureUniform; 6 | } 7 | 8 | // Exposure ranges from -10.0 to 10.0, with 0.0 as the normal level 9 | @property(readwrite, nonatomic) CGFloat exposure; 10 | 11 | @end 12 | -------------------------------------------------------------------------------- /GPUImageFilter-09/framework/Source/GPUImageGammaFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageFilter.h" 2 | 3 | @interface GPUImageGammaFilter : GPUImageFilter 4 | { 5 | GLint gammaUniform; 6 | } 7 | 8 | // Gamma ranges from 0.0 to 3.0, with 1.0 as the normal level 9 | @property(readwrite, nonatomic) CGFloat gamma; 10 | 11 | @end 12 | -------------------------------------------------------------------------------- /GPUImageFilter-09/framework/Source/GPUImageGlassSphereFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageSphereRefractionFilter.h" 2 | 3 | @interface GPUImageGlassSphereFilter : GPUImageSphereRefractionFilter 4 | 5 | @end 6 | -------------------------------------------------------------------------------- /GPUImageFilter-09/framework/Source/GPUImageGrayscaleFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageFilter.h" 2 | 3 | extern NSString *const kGPUImageLuminanceFragmentShaderString; 4 | 5 | /** Converts an image to grayscale (a slightly faster implementation of the saturation filter, without the ability to vary the color contribution) 6 | */ 7 | @interface GPUImageGrayscaleFilter : GPUImageFilter 8 | 9 | @end 10 | -------------------------------------------------------------------------------- /GPUImageFilter-09/framework/Source/GPUImageHalftoneFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImagePixellateFilter.h" 2 | 3 | @interface GPUImageHalftoneFilter : GPUImagePixellateFilter 4 | 5 | @end 6 | -------------------------------------------------------------------------------- /GPUImageFilter-09/framework/Source/GPUImageHardLightBlendFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageTwoInputFilter.h" 2 | 3 | @interface GPUImageHardLightBlendFilter : GPUImageTwoInputFilter 4 | { 5 | } 6 | 7 | @end 8 | -------------------------------------------------------------------------------- /GPUImageFilter-09/framework/Source/GPUImageHistogramGenerator.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageFilter.h" 2 | 3 | @interface GPUImageHistogramGenerator : GPUImageFilter 4 | { 5 | GLint backgroundColorUniform; 6 | } 7 | 8 | @end 9 | -------------------------------------------------------------------------------- /GPUImageFilter-09/framework/Source/GPUImageHueBlendFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageTwoInputFilter.h" 2 | 3 | @interface GPUImageHueBlendFilter : GPUImageTwoInputFilter 4 | 5 | @end 6 | -------------------------------------------------------------------------------- /GPUImageFilter-09/framework/Source/GPUImageHueFilter.h: -------------------------------------------------------------------------------- 1 | 2 | #import "GPUImageFilter.h" 3 | 4 | @interface GPUImageHueFilter : GPUImageFilter 5 | { 6 | GLint hueAdjustUniform; 7 | 8 | } 9 | @property (nonatomic, readwrite) CGFloat hue; 10 | 11 | @end 12 | -------------------------------------------------------------------------------- /GPUImageFilter-09/framework/Source/GPUImageKuwaharaRadius3Filter.h: -------------------------------------------------------------------------------- 1 | // 2 | // GPUImageKuwaharaRadius3Filter.h 3 | 4 | #import "GPUImageFilter.h" 5 | 6 | @interface GPUImageKuwaharaRadius3Filter : GPUImageFilter 7 | 8 | @end 9 | -------------------------------------------------------------------------------- /GPUImageFilter-09/framework/Source/GPUImageLanczosResamplingFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageTwoPassTextureSamplingFilter.h" 2 | 3 | @interface GPUImageLanczosResamplingFilter : GPUImageTwoPassTextureSamplingFilter 4 | 5 | @property(readwrite, nonatomic) CGSize originalImageSize; 6 | 7 | @end 8 | -------------------------------------------------------------------------------- /GPUImageFilter-09/framework/Source/GPUImageLaplacianFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImage3x3ConvolutionFilter.h" 2 | 3 | @interface GPUImageLaplacianFilter : GPUImage3x3ConvolutionFilter 4 | 5 | @end 6 | -------------------------------------------------------------------------------- /GPUImageFilter-09/framework/Source/GPUImageLightenBlendFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageTwoInputFilter.h" 2 | 3 | /// Blends two images by taking the maximum value of each color component between the images 4 | @interface GPUImageLightenBlendFilter : GPUImageTwoInputFilter 5 | { 6 | } 7 | 8 | @end 9 | -------------------------------------------------------------------------------- /GPUImageFilter-09/framework/Source/GPUImageLinearBurnBlendFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageTwoInputFilter.h" 2 | 3 | @interface GPUImageLinearBurnBlendFilter : GPUImageTwoInputFilter 4 | 5 | @end 6 | -------------------------------------------------------------------------------- /GPUImageFilter-09/framework/Source/GPUImageLocalBinaryPatternFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImage3x3TextureSamplingFilter.h" 2 | 3 | @interface GPUImageLocalBinaryPatternFilter : GPUImage3x3TextureSamplingFilter 4 | 5 | @end 6 | -------------------------------------------------------------------------------- /GPUImageFilter-09/framework/Source/GPUImageLuminanceRangeFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageFilter.h" 2 | 3 | @interface GPUImageLuminanceRangeFilter : GPUImageFilter 4 | { 5 | GLint rangeReductionUniform; 6 | } 7 | 8 | /** The degree to reduce the luminance range, from 0.0 to 1.0. Default is 0.6. 9 | */ 10 | @property(readwrite, nonatomic) CGFloat rangeReductionFactor; 11 | 12 | @end 13 | -------------------------------------------------------------------------------- /GPUImageFilter-09/framework/Source/GPUImageLuminosityBlendFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageTwoInputFilter.h" 2 | 3 | @interface GPUImageLuminosityBlendFilter : GPUImageTwoInputFilter 4 | 5 | @end 6 | -------------------------------------------------------------------------------- /GPUImageFilter-09/framework/Source/GPUImageMaskFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageTwoInputFilter.h" 2 | 3 | @interface GPUImageMaskFilter : GPUImageTwoInputFilter 4 | 5 | @end 6 | -------------------------------------------------------------------------------- /GPUImageFilter-09/framework/Source/GPUImageMedianFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImage3x3TextureSamplingFilter.h" 2 | 3 | @interface GPUImageMedianFilter : GPUImage3x3TextureSamplingFilter 4 | 5 | @end 6 | -------------------------------------------------------------------------------- /GPUImageFilter-09/framework/Source/GPUImageMultiplyBlendFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageTwoInputFilter.h" 2 | 3 | @interface GPUImageMultiplyBlendFilter : GPUImageTwoInputFilter 4 | { 5 | } 6 | 7 | @end 8 | -------------------------------------------------------------------------------- /GPUImageFilter-09/framework/Source/GPUImageNonMaximumSuppressionFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImage3x3TextureSamplingFilter.h" 2 | 3 | @interface GPUImageNonMaximumSuppressionFilter : GPUImage3x3TextureSamplingFilter 4 | 5 | @end 6 | -------------------------------------------------------------------------------- /GPUImageFilter-09/framework/Source/GPUImageNormalBlendFilter.h: -------------------------------------------------------------------------------- 1 | // Created by Jorge Garcia on 9/5/12. 2 | // 3 | 4 | #import "GPUImageTwoInputFilter.h" 5 | 6 | @interface GPUImageNormalBlendFilter : GPUImageTwoInputFilter 7 | 8 | @end 9 | -------------------------------------------------------------------------------- /GPUImageFilter-09/framework/Source/GPUImageOpacityFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageFilter.h" 2 | 3 | @interface GPUImageOpacityFilter : GPUImageFilter 4 | { 5 | GLint opacityUniform; 6 | } 7 | 8 | // Opacity ranges from 0.0 to 1.0, with 1.0 as the normal setting 9 | @property(readwrite, nonatomic) CGFloat opacity; 10 | 11 | @end 12 | -------------------------------------------------------------------------------- /GPUImageFilter-09/framework/Source/GPUImageOverlayBlendFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageTwoInputFilter.h" 2 | 3 | @interface GPUImageOverlayBlendFilter : GPUImageTwoInputFilter 4 | 5 | @end 6 | -------------------------------------------------------------------------------- /GPUImageFilter-09/framework/Source/GPUImagePolkaDotFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImagePixellateFilter.h" 2 | 3 | @interface GPUImagePolkaDotFilter : GPUImagePixellateFilter 4 | { 5 | GLint dotScalingUniform; 6 | } 7 | 8 | @property(readwrite, nonatomic) CGFloat dotScaling; 9 | 10 | @end 11 | -------------------------------------------------------------------------------- /GPUImageFilter-09/framework/Source/GPUImagePrewittEdgeDetectionFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageSobelEdgeDetectionFilter.h" 2 | 3 | @interface GPUImagePrewittEdgeDetectionFilter : GPUImageSobelEdgeDetectionFilter 4 | 5 | @end 6 | -------------------------------------------------------------------------------- /GPUImageFilter-09/framework/Source/GPUImageSaturationBlendFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageTwoInputFilter.h" 2 | 3 | @interface GPUImageSaturationBlendFilter : GPUImageTwoInputFilter 4 | 5 | @end 6 | -------------------------------------------------------------------------------- /GPUImageFilter-09/framework/Source/GPUImageScreenBlendFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageTwoInputFilter.h" 2 | 3 | @interface GPUImageScreenBlendFilter : GPUImageTwoInputFilter 4 | { 5 | } 6 | 7 | @end 8 | -------------------------------------------------------------------------------- /GPUImageFilter-09/framework/Source/GPUImageSepiaFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageColorMatrixFilter.h" 2 | 3 | /// Simple sepia tone filter 4 | @interface GPUImageSepiaFilter : GPUImageColorMatrixFilter 5 | 6 | @end 7 | -------------------------------------------------------------------------------- /GPUImageFilter-09/framework/Source/GPUImageSharpenFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageFilter.h" 2 | 3 | @interface GPUImageSharpenFilter : GPUImageFilter 4 | { 5 | GLint sharpnessUniform; 6 | GLint imageWidthFactorUniform, imageHeightFactorUniform; 7 | } 8 | 9 | // Sharpness ranges from -4.0 to 4.0, with 0.0 as the normal level 10 | @property(readwrite, nonatomic) CGFloat sharpness; 11 | 12 | @end 13 | -------------------------------------------------------------------------------- /GPUImageFilter-09/framework/Source/GPUImageSingleComponentGaussianBlurFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageGaussianBlurFilter.h" 2 | 3 | // This filter merely performs the standard Gaussian blur on the red color channel (assuming a luminance image) 4 | 5 | @interface GPUImageSingleComponentGaussianBlurFilter : GPUImageGaussianBlurFilter 6 | 7 | @end 8 | -------------------------------------------------------------------------------- /GPUImageFilter-09/framework/Source/GPUImageSketchFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageSobelEdgeDetectionFilter.h" 2 | 3 | /** Converts video to look like a sketch. 4 | 5 | This is just the Sobel edge detection filter with the colors inverted. 6 | */ 7 | @interface GPUImageSketchFilter : GPUImageSobelEdgeDetectionFilter 8 | { 9 | } 10 | 11 | @end 12 | -------------------------------------------------------------------------------- /GPUImageFilter-09/framework/Source/GPUImageSoftLightBlendFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageTwoInputFilter.h" 2 | 3 | @interface GPUImageSoftLightBlendFilter : GPUImageTwoInputFilter 4 | { 5 | } 6 | 7 | @end 8 | -------------------------------------------------------------------------------- /GPUImageFilter-09/framework/Source/GPUImageSourceOverBlendFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageTwoInputFilter.h" 2 | 3 | @interface GPUImageSourceOverBlendFilter : GPUImageTwoInputFilter 4 | 5 | @end 6 | -------------------------------------------------------------------------------- /GPUImageFilter-09/framework/Source/GPUImageSubtractBlendFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageTwoInputFilter.h" 2 | 3 | @interface GPUImageSubtractBlendFilter : GPUImageTwoInputFilter 4 | 5 | @end 6 | -------------------------------------------------------------------------------- /GPUImageFilter-09/framework/Source/GPUImageThresholdSketchFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageThresholdEdgeDetectionFilter.h" 2 | 3 | @interface GPUImageThresholdSketchFilter : GPUImageThresholdEdgeDetectionFilter 4 | 5 | @end 6 | -------------------------------------------------------------------------------- /GPUImageFilter-09/framework/Source/GPUImageVoronoiConsumerFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageTwoInputFilter.h" 2 | 3 | @interface GPUImageVoronoiConsumerFilter : GPUImageTwoInputFilter 4 | { 5 | GLint sizeUniform; 6 | } 7 | 8 | @property (nonatomic, readwrite) CGSize sizeInPixels; 9 | 10 | @end 11 | -------------------------------------------------------------------------------- /GPUImageFilter-09/framework/Source/GPUImageWeakPixelInclusionFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImage3x3TextureSamplingFilter.h" 2 | 3 | @interface GPUImageWeakPixelInclusionFilter : GPUImage3x3TextureSamplingFilter 4 | 5 | @end 6 | -------------------------------------------------------------------------------- /GPUImageFilter-09/framework/Source/GPUImageXYDerivativeFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageSobelEdgeDetectionFilter.h" 2 | 3 | @interface GPUImageXYDerivativeFilter : GPUImageSobelEdgeDetectionFilter 4 | 5 | @end 6 | -------------------------------------------------------------------------------- /GPUImageFilter-09/framework/Source/Mac/GPUImageMac-Prefix.pch: -------------------------------------------------------------------------------- 1 | // 2 | // Prefix header for all source files of the 'GPUImageMac' target in the 'GPUImageMac' project 3 | // 4 | 5 | #ifdef __OBJC__ 6 | #import 7 | #endif 8 | -------------------------------------------------------------------------------- /GPUImageFilter-09/framework/Source/Mac/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /GPUImageFilter-09/framework/Source/iOS/Framework/module.modulemap: -------------------------------------------------------------------------------- 1 | framework module GPUImage { 2 | umbrella header "GPUImageFramework.h" 3 | 4 | export * 5 | module * { export * } 6 | } 7 | -------------------------------------------------------------------------------- /GPUImageFilter-09/framework/Source/iOS/GPUImage-Prefix.pch: -------------------------------------------------------------------------------- 1 | // 2 | // Prefix header for all source files of the 'GPUImage' target in the 'GPUImage' project 3 | // 4 | 5 | #ifdef __OBJC__ 6 | #import 7 | #endif 8 | -------------------------------------------------------------------------------- /GPUImageFilter-10/GPUImageFilter.xcodeproj/project.xcworkspace/contents.xcworkspacedata: -------------------------------------------------------------------------------- 1 | 2 | 4 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /GPUImageFilter-10/GPUImageFilter.xcodeproj/project.xcworkspace/xcuserdata/mac.xcuserdatad/UserInterfaceState.xcuserstate: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/QinminiOS/GPUImage/3a90ecf0f7edc036ecbdad9149776a5d463f5a50/GPUImageFilter-10/GPUImageFilter.xcodeproj/project.xcworkspace/xcuserdata/mac.xcuserdatad/UserInterfaceState.xcuserstate -------------------------------------------------------------------------------- /GPUImageFilter-10/GPUImageFilter.xcodeproj/project.xcworkspace/xcuserdata/qinmin.xcuserdatad/UserInterfaceState.xcuserstate: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/QinminiOS/GPUImage/3a90ecf0f7edc036ecbdad9149776a5d463f5a50/GPUImageFilter-10/GPUImageFilter.xcodeproj/project.xcworkspace/xcuserdata/qinmin.xcuserdatad/UserInterfaceState.xcuserstate -------------------------------------------------------------------------------- /GPUImageFilter-10/GPUImageFilter.xcodeproj/xcuserdata/qinmin.xcuserdatad/xcdebugger/Breakpoints_v2.xcbkptlist: -------------------------------------------------------------------------------- 1 | 2 | 5 | 6 | -------------------------------------------------------------------------------- /GPUImageFilter-10/GPUImageFilter/1.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/QinminiOS/GPUImage/3a90ecf0f7edc036ecbdad9149776a5d463f5a50/GPUImageFilter-10/GPUImageFilter/1.jpg -------------------------------------------------------------------------------- /GPUImageFilter-10/GPUImageFilter/2.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/QinminiOS/GPUImage/3a90ecf0f7edc036ecbdad9149776a5d463f5a50/GPUImageFilter-10/GPUImageFilter/2.jpg -------------------------------------------------------------------------------- /GPUImageFilter-10/GPUImageFilter/3.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/QinminiOS/GPUImage/3a90ecf0f7edc036ecbdad9149776a5d463f5a50/GPUImageFilter-10/GPUImageFilter/3.jpg -------------------------------------------------------------------------------- /GPUImageFilter-10/GPUImageFilter/AppDelegate.h: -------------------------------------------------------------------------------- 1 | // 2 | // AppDelegate.h 3 | // GPUImageFilter 4 | // 5 | // Created by mac on 17/2/4. 6 | // Copyright © 2017年 Qinmin. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface AppDelegate : UIResponder 12 | 13 | @property (strong, nonatomic) UIWindow *window; 14 | 15 | 16 | @end 17 | 18 | -------------------------------------------------------------------------------- /GPUImageFilter-10/GPUImageFilter/ViewController.h: -------------------------------------------------------------------------------- 1 | // 2 | // ViewController.h 3 | // GPUImageFilter 4 | // 5 | // Created by mac on 17/2/4. 6 | // Copyright © 2017年 Qinmin. All rights reserved. 7 | // 8 | 9 | #import 10 | #import 11 | 12 | @interface ViewController : UIViewController 13 | @property (weak, nonatomic) IBOutlet GPUImageView *imageView; 14 | @end 15 | 16 | -------------------------------------------------------------------------------- /GPUImageFilter-10/framework/GPUImage.xcodeproj/project.xcworkspace/contents.xcworkspacedata: -------------------------------------------------------------------------------- 1 | 2 | 4 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /GPUImageFilter-10/framework/GPUImage.xcodeproj/project.xcworkspace/xcuserdata/mac.xcuserdatad/UserInterfaceState.xcuserstate: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/QinminiOS/GPUImage/3a90ecf0f7edc036ecbdad9149776a5d463f5a50/GPUImageFilter-10/framework/GPUImage.xcodeproj/project.xcworkspace/xcuserdata/mac.xcuserdatad/UserInterfaceState.xcuserstate -------------------------------------------------------------------------------- /GPUImageFilter-10/framework/GPUImage.xcodeproj/project.xcworkspace/xcuserdata/mac.xcuserdatad/WorkspaceSettings.xcsettings: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | BuildLocationStyle 6 | UseTargetSettings 7 | 8 | 9 | -------------------------------------------------------------------------------- /GPUImageFilter-10/framework/Resources/lookup.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/QinminiOS/GPUImage/3a90ecf0f7edc036ecbdad9149776a5d463f5a50/GPUImageFilter-10/framework/Resources/lookup.jpg -------------------------------------------------------------------------------- /GPUImageFilter-10/framework/Resources/lookup.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/QinminiOS/GPUImage/3a90ecf0f7edc036ecbdad9149776a5d463f5a50/GPUImageFilter-10/framework/Resources/lookup.png -------------------------------------------------------------------------------- /GPUImageFilter-10/framework/Resources/lookup1.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/QinminiOS/GPUImage/3a90ecf0f7edc036ecbdad9149776a5d463f5a50/GPUImageFilter-10/framework/Resources/lookup1.jpg -------------------------------------------------------------------------------- /GPUImageFilter-10/framework/Resources/lookup1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/QinminiOS/GPUImage/3a90ecf0f7edc036ecbdad9149776a5d463f5a50/GPUImageFilter-10/framework/Resources/lookup1.png -------------------------------------------------------------------------------- /GPUImageFilter-10/framework/Resources/lookup_amatorka.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/QinminiOS/GPUImage/3a90ecf0f7edc036ecbdad9149776a5d463f5a50/GPUImageFilter-10/framework/Resources/lookup_amatorka.png -------------------------------------------------------------------------------- /GPUImageFilter-10/framework/Resources/lookup_miss_etikate.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/QinminiOS/GPUImage/3a90ecf0f7edc036ecbdad9149776a5d463f5a50/GPUImageFilter-10/framework/Resources/lookup_miss_etikate.png -------------------------------------------------------------------------------- /GPUImageFilter-10/framework/Resources/lookup_soft_elegance_1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/QinminiOS/GPUImage/3a90ecf0f7edc036ecbdad9149776a5d463f5a50/GPUImageFilter-10/framework/Resources/lookup_soft_elegance_1.png -------------------------------------------------------------------------------- /GPUImageFilter-10/framework/Resources/lookup_soft_elegance_2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/QinminiOS/GPUImage/3a90ecf0f7edc036ecbdad9149776a5d463f5a50/GPUImageFilter-10/framework/Resources/lookup_soft_elegance_2.png -------------------------------------------------------------------------------- /GPUImageFilter-10/framework/Source/GPUImageAdaptiveThresholdFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageFilterGroup.h" 2 | 3 | @interface GPUImageAdaptiveThresholdFilter : GPUImageFilterGroup 4 | 5 | /** A multiplier for the background averaging blur radius in pixels, with a default of 4 6 | */ 7 | @property(readwrite, nonatomic) CGFloat blurRadiusInPixels; 8 | 9 | @end 10 | -------------------------------------------------------------------------------- /GPUImageFilter-10/framework/Source/GPUImageAddBlendFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageTwoInputFilter.h" 2 | 3 | @interface GPUImageAddBlendFilter : GPUImageTwoInputFilter 4 | 5 | @end 6 | -------------------------------------------------------------------------------- /GPUImageFilter-10/framework/Source/GPUImageAlphaBlendFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageTwoInputFilter.h" 2 | 3 | @interface GPUImageAlphaBlendFilter : GPUImageTwoInputFilter 4 | { 5 | GLint mixUniform; 6 | } 7 | 8 | // Mix ranges from 0.0 (only image 1) to 1.0 (only image 2), with 1.0 as the normal level 9 | @property(readwrite, nonatomic) CGFloat mix; 10 | 11 | @end 12 | -------------------------------------------------------------------------------- /GPUImageFilter-10/framework/Source/GPUImageAverageLuminanceThresholdFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageFilterGroup.h" 2 | 3 | @interface GPUImageAverageLuminanceThresholdFilter : GPUImageFilterGroup 4 | 5 | // This is multiplied by the continually calculated average image luminosity to arrive at the final threshold. Default is 1.0. 6 | @property(readwrite, nonatomic) CGFloat thresholdMultiplier; 7 | 8 | @end 9 | -------------------------------------------------------------------------------- /GPUImageFilter-10/framework/Source/GPUImageBoxBlurFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageGaussianBlurFilter.h" 2 | 3 | /** A hardware-accelerated box blur of an image 4 | */ 5 | @interface GPUImageBoxBlurFilter : GPUImageGaussianBlurFilter 6 | 7 | @end 8 | -------------------------------------------------------------------------------- /GPUImageFilter-10/framework/Source/GPUImageBrightnessFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageFilter.h" 2 | 3 | @interface GPUImageBrightnessFilter : GPUImageFilter 4 | { 5 | GLint brightnessUniform; 6 | } 7 | 8 | // Brightness ranges from -1.0 to 1.0, with 0.0 as the normal level 9 | @property(readwrite, nonatomic) CGFloat brightness; 10 | 11 | @end 12 | -------------------------------------------------------------------------------- /GPUImageFilter-10/framework/Source/GPUImageBuffer.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageFilter.h" 2 | 3 | @interface GPUImageBuffer : GPUImageFilter 4 | { 5 | NSMutableArray *bufferedFramebuffers; 6 | } 7 | 8 | @property(readwrite, nonatomic) NSUInteger bufferSize; 9 | 10 | @end 11 | -------------------------------------------------------------------------------- /GPUImageFilter-10/framework/Source/GPUImageCGAColorspaceFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageFilter.h" 2 | 3 | @interface GPUImageCGAColorspaceFilter : GPUImageFilter 4 | 5 | @end 6 | -------------------------------------------------------------------------------- /GPUImageFilter-10/framework/Source/GPUImageColorBlendFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageTwoInputFilter.h" 2 | 3 | @interface GPUImageColorBlendFilter : GPUImageTwoInputFilter 4 | 5 | @end 6 | -------------------------------------------------------------------------------- /GPUImageFilter-10/framework/Source/GPUImageColorBurnBlendFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageTwoInputFilter.h" 2 | 3 | /** Applies a color burn blend of two images 4 | */ 5 | @interface GPUImageColorBurnBlendFilter : GPUImageTwoInputFilter 6 | { 7 | } 8 | 9 | @end 10 | -------------------------------------------------------------------------------- /GPUImageFilter-10/framework/Source/GPUImageColorDodgeBlendFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageTwoInputFilter.h" 2 | 3 | /** Applies a color dodge blend of two images 4 | */ 5 | @interface GPUImageColorDodgeBlendFilter : GPUImageTwoInputFilter 6 | { 7 | } 8 | 9 | @end 10 | -------------------------------------------------------------------------------- /GPUImageFilter-10/framework/Source/GPUImageColorInvertFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageFilter.h" 2 | 3 | @interface GPUImageColorInvertFilter : GPUImageFilter 4 | { 5 | } 6 | 7 | @end 8 | -------------------------------------------------------------------------------- /GPUImageFilter-10/framework/Source/GPUImageColorLocalBinaryPatternFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImage3x3TextureSamplingFilter.h" 2 | 3 | @interface GPUImageColorLocalBinaryPatternFilter : GPUImage3x3TextureSamplingFilter 4 | 5 | @end 6 | -------------------------------------------------------------------------------- /GPUImageFilter-10/framework/Source/GPUImageColorPackingFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageFilter.h" 2 | 3 | @interface GPUImageColorPackingFilter : GPUImageFilter 4 | { 5 | GLint texelWidthUniform, texelHeightUniform; 6 | 7 | CGFloat texelWidth, texelHeight; 8 | } 9 | 10 | @end 11 | -------------------------------------------------------------------------------- /GPUImageFilter-10/framework/Source/GPUImageDarkenBlendFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageTwoInputFilter.h" 2 | 3 | @interface GPUImageDarkenBlendFilter : GPUImageTwoInputFilter 4 | { 5 | } 6 | 7 | @end 8 | -------------------------------------------------------------------------------- /GPUImageFilter-10/framework/Source/GPUImageDifferenceBlendFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageTwoInputFilter.h" 2 | 3 | @interface GPUImageDifferenceBlendFilter : GPUImageTwoInputFilter 4 | { 5 | } 6 | 7 | @end 8 | -------------------------------------------------------------------------------- /GPUImageFilter-10/framework/Source/GPUImageDirectionalSobelEdgeDetectionFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImage3x3TextureSamplingFilter.h" 2 | 3 | @interface GPUImageDirectionalSobelEdgeDetectionFilter : GPUImage3x3TextureSamplingFilter 4 | 5 | @end 6 | -------------------------------------------------------------------------------- /GPUImageFilter-10/framework/Source/GPUImageDissolveBlendFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageTwoInputFilter.h" 2 | 3 | @interface GPUImageDissolveBlendFilter : GPUImageTwoInputFilter 4 | { 5 | GLint mixUniform; 6 | } 7 | 8 | // Mix ranges from 0.0 (only image 1) to 1.0 (only image 2), with 0.5 (half of either) as the normal level 9 | @property(readwrite, nonatomic) CGFloat mix; 10 | 11 | @end 12 | -------------------------------------------------------------------------------- /GPUImageFilter-10/framework/Source/GPUImageDivideBlendFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageTwoInputFilter.h" 2 | 3 | @interface GPUImageDivideBlendFilter : GPUImageTwoInputFilter 4 | 5 | @end 6 | -------------------------------------------------------------------------------- /GPUImageFilter-10/framework/Source/GPUImageEmbossFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImage3x3ConvolutionFilter.h" 2 | 3 | @interface GPUImageEmbossFilter : GPUImage3x3ConvolutionFilter 4 | 5 | // The strength of the embossing, from 0.0 to 4.0, with 1.0 as the normal level 6 | @property(readwrite, nonatomic) CGFloat intensity; 7 | 8 | @end 9 | -------------------------------------------------------------------------------- /GPUImageFilter-10/framework/Source/GPUImageExclusionBlendFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageTwoInputFilter.h" 2 | 3 | @interface GPUImageExclusionBlendFilter : GPUImageTwoInputFilter 4 | { 5 | } 6 | 7 | @end 8 | -------------------------------------------------------------------------------- /GPUImageFilter-10/framework/Source/GPUImageExposureFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageFilter.h" 2 | 3 | @interface GPUImageExposureFilter : GPUImageFilter 4 | { 5 | GLint exposureUniform; 6 | } 7 | 8 | // Exposure ranges from -10.0 to 10.0, with 0.0 as the normal level 9 | @property(readwrite, nonatomic) CGFloat exposure; 10 | 11 | @end 12 | -------------------------------------------------------------------------------- /GPUImageFilter-10/framework/Source/GPUImageGammaFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageFilter.h" 2 | 3 | @interface GPUImageGammaFilter : GPUImageFilter 4 | { 5 | GLint gammaUniform; 6 | } 7 | 8 | // Gamma ranges from 0.0 to 3.0, with 1.0 as the normal level 9 | @property(readwrite, nonatomic) CGFloat gamma; 10 | 11 | @end 12 | -------------------------------------------------------------------------------- /GPUImageFilter-10/framework/Source/GPUImageGlassSphereFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageSphereRefractionFilter.h" 2 | 3 | @interface GPUImageGlassSphereFilter : GPUImageSphereRefractionFilter 4 | 5 | @end 6 | -------------------------------------------------------------------------------- /GPUImageFilter-10/framework/Source/GPUImageGrayscaleFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageFilter.h" 2 | 3 | extern NSString *const kGPUImageLuminanceFragmentShaderString; 4 | 5 | /** Converts an image to grayscale (a slightly faster implementation of the saturation filter, without the ability to vary the color contribution) 6 | */ 7 | @interface GPUImageGrayscaleFilter : GPUImageFilter 8 | 9 | @end 10 | -------------------------------------------------------------------------------- /GPUImageFilter-10/framework/Source/GPUImageHalftoneFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImagePixellateFilter.h" 2 | 3 | @interface GPUImageHalftoneFilter : GPUImagePixellateFilter 4 | 5 | @end 6 | -------------------------------------------------------------------------------- /GPUImageFilter-10/framework/Source/GPUImageHardLightBlendFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageTwoInputFilter.h" 2 | 3 | @interface GPUImageHardLightBlendFilter : GPUImageTwoInputFilter 4 | { 5 | } 6 | 7 | @end 8 | -------------------------------------------------------------------------------- /GPUImageFilter-10/framework/Source/GPUImageHistogramGenerator.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageFilter.h" 2 | 3 | @interface GPUImageHistogramGenerator : GPUImageFilter 4 | { 5 | GLint backgroundColorUniform; 6 | } 7 | 8 | @end 9 | -------------------------------------------------------------------------------- /GPUImageFilter-10/framework/Source/GPUImageHueBlendFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageTwoInputFilter.h" 2 | 3 | @interface GPUImageHueBlendFilter : GPUImageTwoInputFilter 4 | 5 | @end 6 | -------------------------------------------------------------------------------- /GPUImageFilter-10/framework/Source/GPUImageHueFilter.h: -------------------------------------------------------------------------------- 1 | 2 | #import "GPUImageFilter.h" 3 | 4 | @interface GPUImageHueFilter : GPUImageFilter 5 | { 6 | GLint hueAdjustUniform; 7 | 8 | } 9 | @property (nonatomic, readwrite) CGFloat hue; 10 | 11 | @end 12 | -------------------------------------------------------------------------------- /GPUImageFilter-10/framework/Source/GPUImageKuwaharaRadius3Filter.h: -------------------------------------------------------------------------------- 1 | // 2 | // GPUImageKuwaharaRadius3Filter.h 3 | 4 | #import "GPUImageFilter.h" 5 | 6 | @interface GPUImageKuwaharaRadius3Filter : GPUImageFilter 7 | 8 | @end 9 | -------------------------------------------------------------------------------- /GPUImageFilter-10/framework/Source/GPUImageLanczosResamplingFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageTwoPassTextureSamplingFilter.h" 2 | 3 | @interface GPUImageLanczosResamplingFilter : GPUImageTwoPassTextureSamplingFilter 4 | 5 | @property(readwrite, nonatomic) CGSize originalImageSize; 6 | 7 | @end 8 | -------------------------------------------------------------------------------- /GPUImageFilter-10/framework/Source/GPUImageLaplacianFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImage3x3ConvolutionFilter.h" 2 | 3 | @interface GPUImageLaplacianFilter : GPUImage3x3ConvolutionFilter 4 | 5 | @end 6 | -------------------------------------------------------------------------------- /GPUImageFilter-10/framework/Source/GPUImageLightenBlendFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageTwoInputFilter.h" 2 | 3 | /// Blends two images by taking the maximum value of each color component between the images 4 | @interface GPUImageLightenBlendFilter : GPUImageTwoInputFilter 5 | { 6 | } 7 | 8 | @end 9 | -------------------------------------------------------------------------------- /GPUImageFilter-10/framework/Source/GPUImageLinearBurnBlendFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageTwoInputFilter.h" 2 | 3 | @interface GPUImageLinearBurnBlendFilter : GPUImageTwoInputFilter 4 | 5 | @end 6 | -------------------------------------------------------------------------------- /GPUImageFilter-10/framework/Source/GPUImageLocalBinaryPatternFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImage3x3TextureSamplingFilter.h" 2 | 3 | @interface GPUImageLocalBinaryPatternFilter : GPUImage3x3TextureSamplingFilter 4 | 5 | @end 6 | -------------------------------------------------------------------------------- /GPUImageFilter-10/framework/Source/GPUImageLuminanceRangeFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageFilter.h" 2 | 3 | @interface GPUImageLuminanceRangeFilter : GPUImageFilter 4 | { 5 | GLint rangeReductionUniform; 6 | } 7 | 8 | /** The degree to reduce the luminance range, from 0.0 to 1.0. Default is 0.6. 9 | */ 10 | @property(readwrite, nonatomic) CGFloat rangeReductionFactor; 11 | 12 | @end 13 | -------------------------------------------------------------------------------- /GPUImageFilter-10/framework/Source/GPUImageLuminosityBlendFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageTwoInputFilter.h" 2 | 3 | @interface GPUImageLuminosityBlendFilter : GPUImageTwoInputFilter 4 | 5 | @end 6 | -------------------------------------------------------------------------------- /GPUImageFilter-10/framework/Source/GPUImageMaskFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageTwoInputFilter.h" 2 | 3 | @interface GPUImageMaskFilter : GPUImageTwoInputFilter 4 | 5 | @end 6 | -------------------------------------------------------------------------------- /GPUImageFilter-10/framework/Source/GPUImageMedianFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImage3x3TextureSamplingFilter.h" 2 | 3 | @interface GPUImageMedianFilter : GPUImage3x3TextureSamplingFilter 4 | 5 | @end 6 | -------------------------------------------------------------------------------- /GPUImageFilter-10/framework/Source/GPUImageMultiplyBlendFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageTwoInputFilter.h" 2 | 3 | @interface GPUImageMultiplyBlendFilter : GPUImageTwoInputFilter 4 | { 5 | } 6 | 7 | @end 8 | -------------------------------------------------------------------------------- /GPUImageFilter-10/framework/Source/GPUImageNonMaximumSuppressionFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImage3x3TextureSamplingFilter.h" 2 | 3 | @interface GPUImageNonMaximumSuppressionFilter : GPUImage3x3TextureSamplingFilter 4 | 5 | @end 6 | -------------------------------------------------------------------------------- /GPUImageFilter-10/framework/Source/GPUImageNormalBlendFilter.h: -------------------------------------------------------------------------------- 1 | // Created by Jorge Garcia on 9/5/12. 2 | // 3 | 4 | #import "GPUImageTwoInputFilter.h" 5 | 6 | @interface GPUImageNormalBlendFilter : GPUImageTwoInputFilter 7 | 8 | @end 9 | -------------------------------------------------------------------------------- /GPUImageFilter-10/framework/Source/GPUImageOpacityFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageFilter.h" 2 | 3 | @interface GPUImageOpacityFilter : GPUImageFilter 4 | { 5 | GLint opacityUniform; 6 | } 7 | 8 | // Opacity ranges from 0.0 to 1.0, with 1.0 as the normal setting 9 | @property(readwrite, nonatomic) CGFloat opacity; 10 | 11 | @end 12 | -------------------------------------------------------------------------------- /GPUImageFilter-10/framework/Source/GPUImageOverlayBlendFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageTwoInputFilter.h" 2 | 3 | @interface GPUImageOverlayBlendFilter : GPUImageTwoInputFilter 4 | 5 | @end 6 | -------------------------------------------------------------------------------- /GPUImageFilter-10/framework/Source/GPUImagePolkaDotFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImagePixellateFilter.h" 2 | 3 | @interface GPUImagePolkaDotFilter : GPUImagePixellateFilter 4 | { 5 | GLint dotScalingUniform; 6 | } 7 | 8 | @property(readwrite, nonatomic) CGFloat dotScaling; 9 | 10 | @end 11 | -------------------------------------------------------------------------------- /GPUImageFilter-10/framework/Source/GPUImagePrewittEdgeDetectionFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageSobelEdgeDetectionFilter.h" 2 | 3 | @interface GPUImagePrewittEdgeDetectionFilter : GPUImageSobelEdgeDetectionFilter 4 | 5 | @end 6 | -------------------------------------------------------------------------------- /GPUImageFilter-10/framework/Source/GPUImageSaturationBlendFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageTwoInputFilter.h" 2 | 3 | @interface GPUImageSaturationBlendFilter : GPUImageTwoInputFilter 4 | 5 | @end 6 | -------------------------------------------------------------------------------- /GPUImageFilter-10/framework/Source/GPUImageScreenBlendFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageTwoInputFilter.h" 2 | 3 | @interface GPUImageScreenBlendFilter : GPUImageTwoInputFilter 4 | { 5 | } 6 | 7 | @end 8 | -------------------------------------------------------------------------------- /GPUImageFilter-10/framework/Source/GPUImageSepiaFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageColorMatrixFilter.h" 2 | 3 | /// Simple sepia tone filter 4 | @interface GPUImageSepiaFilter : GPUImageColorMatrixFilter 5 | 6 | @end 7 | -------------------------------------------------------------------------------- /GPUImageFilter-10/framework/Source/GPUImageSharpenFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageFilter.h" 2 | 3 | @interface GPUImageSharpenFilter : GPUImageFilter 4 | { 5 | GLint sharpnessUniform; 6 | GLint imageWidthFactorUniform, imageHeightFactorUniform; 7 | } 8 | 9 | // Sharpness ranges from -4.0 to 4.0, with 0.0 as the normal level 10 | @property(readwrite, nonatomic) CGFloat sharpness; 11 | 12 | @end 13 | -------------------------------------------------------------------------------- /GPUImageFilter-10/framework/Source/GPUImageSingleComponentGaussianBlurFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageGaussianBlurFilter.h" 2 | 3 | // This filter merely performs the standard Gaussian blur on the red color channel (assuming a luminance image) 4 | 5 | @interface GPUImageSingleComponentGaussianBlurFilter : GPUImageGaussianBlurFilter 6 | 7 | @end 8 | -------------------------------------------------------------------------------- /GPUImageFilter-10/framework/Source/GPUImageSketchFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageSobelEdgeDetectionFilter.h" 2 | 3 | /** Converts video to look like a sketch. 4 | 5 | This is just the Sobel edge detection filter with the colors inverted. 6 | */ 7 | @interface GPUImageSketchFilter : GPUImageSobelEdgeDetectionFilter 8 | { 9 | } 10 | 11 | @end 12 | -------------------------------------------------------------------------------- /GPUImageFilter-10/framework/Source/GPUImageSoftLightBlendFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageTwoInputFilter.h" 2 | 3 | @interface GPUImageSoftLightBlendFilter : GPUImageTwoInputFilter 4 | { 5 | } 6 | 7 | @end 8 | -------------------------------------------------------------------------------- /GPUImageFilter-10/framework/Source/GPUImageSourceOverBlendFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageTwoInputFilter.h" 2 | 3 | @interface GPUImageSourceOverBlendFilter : GPUImageTwoInputFilter 4 | 5 | @end 6 | -------------------------------------------------------------------------------- /GPUImageFilter-10/framework/Source/GPUImageSubtractBlendFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageTwoInputFilter.h" 2 | 3 | @interface GPUImageSubtractBlendFilter : GPUImageTwoInputFilter 4 | 5 | @end 6 | -------------------------------------------------------------------------------- /GPUImageFilter-10/framework/Source/GPUImageThresholdSketchFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageThresholdEdgeDetectionFilter.h" 2 | 3 | @interface GPUImageThresholdSketchFilter : GPUImageThresholdEdgeDetectionFilter 4 | 5 | @end 6 | -------------------------------------------------------------------------------- /GPUImageFilter-10/framework/Source/GPUImageVoronoiConsumerFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageTwoInputFilter.h" 2 | 3 | @interface GPUImageVoronoiConsumerFilter : GPUImageTwoInputFilter 4 | { 5 | GLint sizeUniform; 6 | } 7 | 8 | @property (nonatomic, readwrite) CGSize sizeInPixels; 9 | 10 | @end 11 | -------------------------------------------------------------------------------- /GPUImageFilter-10/framework/Source/GPUImageWeakPixelInclusionFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImage3x3TextureSamplingFilter.h" 2 | 3 | @interface GPUImageWeakPixelInclusionFilter : GPUImage3x3TextureSamplingFilter 4 | 5 | @end 6 | -------------------------------------------------------------------------------- /GPUImageFilter-10/framework/Source/GPUImageXYDerivativeFilter.h: -------------------------------------------------------------------------------- 1 | #import "GPUImageSobelEdgeDetectionFilter.h" 2 | 3 | @interface GPUImageXYDerivativeFilter : GPUImageSobelEdgeDetectionFilter 4 | 5 | @end 6 | -------------------------------------------------------------------------------- /GPUImageFilter-10/framework/Source/Mac/GPUImageMac-Prefix.pch: -------------------------------------------------------------------------------- 1 | // 2 | // Prefix header for all source files of the 'GPUImageMac' target in the 'GPUImageMac' project 3 | // 4 | 5 | #ifdef __OBJC__ 6 | #import 7 | #endif 8 | -------------------------------------------------------------------------------- /GPUImageFilter-10/framework/Source/Mac/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /GPUImageFilter-10/framework/Source/iOS/Framework/module.modulemap: -------------------------------------------------------------------------------- 1 | framework module GPUImage { 2 | umbrella header "GPUImageFramework.h" 3 | 4 | export * 5 | module * { export * } 6 | } 7 | -------------------------------------------------------------------------------- /GPUImageFilter-10/framework/Source/iOS/GPUImage-Prefix.pch: -------------------------------------------------------------------------------- 1 | // 2 | // Prefix header for all source files of the 'GPUImage' target in the 'GPUImage' project 3 | // 4 | 5 | #ifdef __OBJC__ 6 | #import 7 | #endif 8 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # GPUImage源码阅读系列 2 | 3 | GPUImage是一个著名的图像处理开源库,它让你能够在图片、视频、相机上使用GPU加速的滤镜和其它特效。与CoreImage框架相比,可以根据GPUImage提供的接口,使用自定义的滤镜。项目地址:https://github.com/BradLarson/GPUImage 4 | 5 | 阅读GPUImage源码需要一定的知识储备,在这里我列出了需要的一些基础知识:OpenGL ES 2.0、AVFoundation、CoreGraphics。如果对以上框架不熟悉,可以学习一下相关的知识。在之前我写了一些 OpenGL专题 http://www.jianshu.com/c/30e2e76bc140 相关的专题系列,大家也可以去学习下。 6 | 7 | 系列博客地址:http://www.jianshu.com/u/fff74d0ebed7 8 | -------------------------------------------------------------------------------- /UIImage+/UIImage+Blur.h: -------------------------------------------------------------------------------- 1 | // 2 | // UIImage+Blur.h 3 | // 4 | // Created by qinmin on 2016/4/13. 5 | // Copyright © 2016年 qinmin. All rights reserved. 6 | // 7 | 8 | #import 9 | 10 | @interface UIImage (Blur) 11 | 12 | - (UIImage *)gaussianBlurImageWithLevel:(CGFloat)blur; 13 | 14 | @end 15 | -------------------------------------------------------------------------------- /UIImage+/UIImage+BoxBlur.h: -------------------------------------------------------------------------------- 1 | // 2 | // UIImage+BoxBlur.h 3 | // 4 | // Created by qinmin on 2016/4/13. 5 | // Copyright © 2016年 qinmin. All rights reserved. 6 | // 7 | 8 | #import 9 | 10 | @interface UIImage (BoxBlur) 11 | 12 | // Level in 0 ~ 1.0 13 | + (UIImage *)boxBlurImage:(UIImage *)image withLevel:(CGFloat)level; 14 | @end 15 | -------------------------------------------------------------------------------- /UIImage+/UIImage+Corner.h: -------------------------------------------------------------------------------- 1 | // 2 | // UIImage+Corner.h 3 | // 4 | // Created by qinmin on 2016/4/13. 5 | // Copyright © 2016年 qinmin. All rights reserved. 6 | // 7 | 8 | #import 9 | 10 | @interface UIImage (Corner) 11 | 12 | // 圆角绘制 13 | - (UIImage*)imageWithConrnerWithRadius:(CGFloat)radius sizeToFit:(CGSize)size; 14 | 15 | @end 16 | --------------------------------------------------------------------------------