├── CommonResource
├── abc.aac
├── abc.m4a
├── abc.mp3
├── abc.mp4
├── abc.pcm
├── test.mov
└── test.pcm
├── README.md
├── Tutorial01-Encode.h264
├── LearnVideoToolBox.xcodeproj
│ ├── project.pbxproj
│ ├── project.xcworkspace
│ │ ├── contents.xcworkspacedata
│ │ └── xcuserdata
│ │ │ └── loyinglin.xcuserdatad
│ │ │ └── UserInterfaceState.xcuserstate
│ └── xcuserdata
│ │ └── loyinglin.xcuserdatad
│ │ ├── xcdebugger
│ │ └── Breakpoints_v2.xcbkptlist
│ │ └── xcschemes
│ │ ├── LearnVideoToolBox.xcscheme
│ │ └── xcschememanagement.plist
├── LearnVideoToolBox
│ ├── AppDelegate.h
│ ├── AppDelegate.m
│ ├── Assets.xcassets
│ │ └── AppIcon.appiconset
│ │ │ └── Contents.json
│ ├── Base.lproj
│ │ ├── LaunchScreen.storyboard
│ │ └── Main.storyboard
│ ├── Info.plist
│ ├── ViewController.h
│ ├── ViewController.m
│ └── main.m
└── LearnVideoToolBoxTests
│ ├── Info.plist
│ └── LearnVideoToolBoxTests.m
├── Tutorial02-Decode.h264
├── LearnVideoToolBox.xcodeproj
│ ├── project.pbxproj
│ ├── project.xcworkspace
│ │ └── contents.xcworkspacedata
│ └── xcuserdata
│ │ └── loyinglin.xcuserdatad
│ │ ├── xcdebugger
│ │ └── Breakpoints_v2.xcbkptlist
│ │ └── xcschemes
│ │ ├── LearnVideoToolBox.xcscheme
│ │ └── xcschememanagement.plist
├── LearnVideoToolBox
│ ├── AppDelegate.h
│ ├── AppDelegate.m
│ ├── Assets.xcassets
│ │ └── AppIcon.appiconset
│ │ │ └── Contents.json
│ ├── Base.lproj
│ │ ├── LaunchScreen.storyboard
│ │ └── Main.storyboard
│ ├── Info.plist
│ ├── LYOpenGLView.h
│ ├── LYOpenGLView.m
│ ├── Shader.fsh
│ ├── Shader.vsh
│ ├── ViewController.h
│ ├── ViewController.m
│ ├── abc.h264
│ ├── main.m
│ └── qwe.h264
└── LearnVideoToolBoxTests
│ ├── Info.plist
│ └── LearnVideoToolBoxTests.m
├── Tutorial03-EncodeAAC.AAC
├── LearnVideoToolBox.xcodeproj
│ ├── project.pbxproj
│ ├── project.xcworkspace
│ │ └── contents.xcworkspacedata
│ └── xcuserdata
│ │ └── loyinglin.xcuserdatad
│ │ ├── xcdebugger
│ │ └── Breakpoints_v2.xcbkptlist
│ │ └── xcschemes
│ │ ├── LearnVideoToolBox.xcscheme
│ │ └── xcschememanagement.plist
├── LearnVideoToolBox
│ ├── AACEncoder.h
│ ├── AACEncoder.m
│ ├── AppDelegate.h
│ ├── AppDelegate.m
│ ├── Assets.xcassets
│ │ └── AppIcon.appiconset
│ │ │ └── Contents.json
│ ├── Base.lproj
│ │ ├── LaunchScreen.storyboard
│ │ └── Main.storyboard
│ ├── Info.plist
│ ├── ViewController.h
│ ├── ViewController.m
│ └── main.m
└── LearnVideoToolBoxTests
│ ├── Info.plist
│ └── LearnVideoToolBoxTests.m
├── Tutorial04-DecodeAAC.AAC
├── LearnVideoToolBox.xcodeproj
│ ├── project.pbxproj
│ ├── project.xcworkspace
│ │ └── contents.xcworkspacedata
│ └── xcuserdata
│ │ └── loyinglin.xcuserdatad
│ │ ├── xcdebugger
│ │ └── Breakpoints_v2.xcbkptlist
│ │ └── xcschemes
│ │ ├── LearnVideoToolBox.xcscheme
│ │ └── xcschememanagement.plist
├── LearnVideoToolBox
│ ├── AACPlayer.h
│ ├── AACPlayer.m
│ ├── AppDelegate.h
│ ├── AppDelegate.m
│ ├── Assets.xcassets
│ │ └── AppIcon.appiconset
│ │ │ └── Contents.json
│ ├── Base.lproj
│ │ ├── LaunchScreen.storyboard
│ │ └── Main.storyboard
│ ├── Info.plist
│ ├── ViewController.h
│ ├── ViewController.m
│ ├── abc.aac
│ └── main.m
└── LearnVideoToolBoxTests
│ ├── Info.plist
│ └── LearnVideoToolBoxTests.m
├── Tutorial05-LiveSample
└── LearnLIVE
│ ├── LearnLIVE.xcodeproj
│ ├── project.pbxproj
│ ├── project.xcworkspace
│ │ └── contents.xcworkspacedata
│ └── xcuserdata
│ │ └── loyinglin.xcuserdatad
│ │ └── xcschemes
│ │ ├── LearnLIVE.xcscheme
│ │ └── xcschememanagement.plist
│ ├── LearnLIVE.xcworkspace
│ ├── contents.xcworkspacedata
│ └── xcuserdata
│ │ └── loyinglin.xcuserdatad
│ │ └── xcdebugger
│ │ └── Breakpoints_v2.xcbkptlist
│ ├── LearnLIVE
│ ├── AppDelegate.h
│ ├── AppDelegate.m
│ ├── Assets.xcassets
│ │ └── AppIcon.appiconset
│ │ │ └── Contents.json
│ ├── Base.lproj
│ │ ├── LaunchScreen.storyboard
│ │ └── Main.storyboard
│ ├── Info.plist
│ ├── ViewController.h
│ ├── ViewController.m
│ └── main.m
│ ├── LearnLIVETests
│ ├── Info.plist
│ └── LearnLIVETests.m
│ ├── Podfile
│ ├── Podfile.lock
│ └── Pods
│ ├── Headers
│ ├── Private
│ │ └── LFLiveKit
│ │ │ ├── GLProgram.h
│ │ │ ├── GPUImage.h
│ │ │ ├── GPUImage3x3ConvolutionFilter.h
│ │ │ ├── GPUImage3x3TextureSamplingFilter.h
│ │ │ ├── GPUImageAdaptiveThresholdFilter.h
│ │ │ ├── GPUImageAddBlendFilter.h
│ │ │ ├── GPUImageAlphaBlendFilter.h
│ │ │ ├── GPUImageAmatorkaFilter.h
│ │ │ ├── GPUImageAverageColor.h
│ │ │ ├── GPUImageAverageLuminanceThresholdFilter.h
│ │ │ ├── GPUImageBilateralFilter.h
│ │ │ ├── GPUImageBoxBlurFilter.h
│ │ │ ├── GPUImageBrightnessFilter.h
│ │ │ ├── GPUImageBuffer.h
│ │ │ ├── GPUImageBulgeDistortionFilter.h
│ │ │ ├── GPUImageCGAColorspaceFilter.h
│ │ │ ├── GPUImageCannyEdgeDetectionFilter.h
│ │ │ ├── GPUImageChromaKeyBlendFilter.h
│ │ │ ├── GPUImageChromaKeyFilter.h
│ │ │ ├── GPUImageClosingFilter.h
│ │ │ ├── GPUImageColorBlendFilter.h
│ │ │ ├── GPUImageColorBurnBlendFilter.h
│ │ │ ├── GPUImageColorConversion.h
│ │ │ ├── GPUImageColorDodgeBlendFilter.h
│ │ │ ├── GPUImageColorInvertFilter.h
│ │ │ ├── GPUImageColorLocalBinaryPatternFilter.h
│ │ │ ├── GPUImageColorMatrixFilter.h
│ │ │ ├── GPUImageColorPackingFilter.h
│ │ │ ├── GPUImageColourFASTFeatureDetector.h
│ │ │ ├── GPUImageColourFASTSamplingOperation.h
│ │ │ ├── GPUImageContext.h
│ │ │ ├── GPUImageContrastFilter.h
│ │ │ ├── GPUImageCropFilter.h
│ │ │ ├── GPUImageCrosshairGenerator.h
│ │ │ ├── GPUImageCrosshatchFilter.h
│ │ │ ├── GPUImageDarkenBlendFilter.h
│ │ │ ├── GPUImageDifferenceBlendFilter.h
│ │ │ ├── GPUImageDilationFilter.h
│ │ │ ├── GPUImageDirectionalNonMaximumSuppressionFilter.h
│ │ │ ├── GPUImageDirectionalSobelEdgeDetectionFilter.h
│ │ │ ├── GPUImageDissolveBlendFilter.h
│ │ │ ├── GPUImageDivideBlendFilter.h
│ │ │ ├── GPUImageEmbossFilter.h
│ │ │ ├── GPUImageErosionFilter.h
│ │ │ ├── GPUImageExclusionBlendFilter.h
│ │ │ ├── GPUImageExposureFilter.h
│ │ │ ├── GPUImageFASTCornerDetectionFilter.h
│ │ │ ├── GPUImageFalseColorFilter.h
│ │ │ ├── GPUImageFilter.h
│ │ │ ├── GPUImageFilterGroup.h
│ │ │ ├── GPUImageFilterPipeline.h
│ │ │ ├── GPUImageFourInputFilter.h
│ │ │ ├── GPUImageFramebuffer.h
│ │ │ ├── GPUImageFramebufferCache.h
│ │ │ ├── GPUImageFramework.h
│ │ │ ├── GPUImageGammaFilter.h
│ │ │ ├── GPUImageGaussianBlurFilter.h
│ │ │ ├── GPUImageGaussianBlurPositionFilter.h
│ │ │ ├── GPUImageGaussianSelectiveBlurFilter.h
│ │ │ ├── GPUImageGlassSphereFilter.h
│ │ │ ├── GPUImageGrayscaleFilter.h
│ │ │ ├── GPUImageHSBFilter.h
│ │ │ ├── GPUImageHalftoneFilter.h
│ │ │ ├── GPUImageHardLightBlendFilter.h
│ │ │ ├── GPUImageHarrisCornerDetectionFilter.h
│ │ │ ├── GPUImageHazeFilter.h
│ │ │ ├── GPUImageHighPassFilter.h
│ │ │ ├── GPUImageHighlightShadowFilter.h
│ │ │ ├── GPUImageHighlightShadowTintFilter.h
│ │ │ ├── GPUImageHistogramEqualizationFilter.h
│ │ │ ├── GPUImageHistogramFilter.h
│ │ │ ├── GPUImageHistogramGenerator.h
│ │ │ ├── GPUImageHoughTransformLineDetector.h
│ │ │ ├── GPUImageHueBlendFilter.h
│ │ │ ├── GPUImageHueFilter.h
│ │ │ ├── GPUImageJFAVoronoiFilter.h
│ │ │ ├── GPUImageKuwaharaFilter.h
│ │ │ ├── GPUImageKuwaharaRadius3Filter.h
│ │ │ ├── GPUImageLanczosResamplingFilter.h
│ │ │ ├── GPUImageLaplacianFilter.h
│ │ │ ├── GPUImageLevelsFilter.h
│ │ │ ├── GPUImageLightenBlendFilter.h
│ │ │ ├── GPUImageLineGenerator.h
│ │ │ ├── GPUImageLinearBurnBlendFilter.h
│ │ │ ├── GPUImageLocalBinaryPatternFilter.h
│ │ │ ├── GPUImageLookupFilter.h
│ │ │ ├── GPUImageLowPassFilter.h
│ │ │ ├── GPUImageLuminanceRangeFilter.h
│ │ │ ├── GPUImageLuminanceThresholdFilter.h
│ │ │ ├── GPUImageLuminosity.h
│ │ │ ├── GPUImageLuminosityBlendFilter.h
│ │ │ ├── GPUImageMaskFilter.h
│ │ │ ├── GPUImageMedianFilter.h
│ │ │ ├── GPUImageMissEtikateFilter.h
│ │ │ ├── GPUImageMonochromeFilter.h
│ │ │ ├── GPUImageMosaicFilter.h
│ │ │ ├── GPUImageMotionBlurFilter.h
│ │ │ ├── GPUImageMotionDetector.h
│ │ │ ├── GPUImageMovie.h
│ │ │ ├── GPUImageMovieComposition.h
│ │ │ ├── GPUImageMovieWriter.h
│ │ │ ├── GPUImageMultiplyBlendFilter.h
│ │ │ ├── GPUImageNobleCornerDetectionFilter.h
│ │ │ ├── GPUImageNonMaximumSuppressionFilter.h
│ │ │ ├── GPUImageNormalBlendFilter.h
│ │ │ ├── GPUImageOpacityFilter.h
│ │ │ ├── GPUImageOpeningFilter.h
│ │ │ ├── GPUImageOutput.h
│ │ │ ├── GPUImageOverlayBlendFilter.h
│ │ │ ├── GPUImageParallelCoordinateLineTransformFilter.h
│ │ │ ├── GPUImagePerlinNoiseFilter.h
│ │ │ ├── GPUImagePicture+TextureSubimage.h
│ │ │ ├── GPUImagePicture.h
│ │ │ ├── GPUImagePinchDistortionFilter.h
│ │ │ ├── GPUImagePixellateFilter.h
│ │ │ ├── GPUImagePixellatePositionFilter.h
│ │ │ ├── GPUImagePoissonBlendFilter.h
│ │ │ ├── GPUImagePolarPixellateFilter.h
│ │ │ ├── GPUImagePolkaDotFilter.h
│ │ │ ├── GPUImagePosterizeFilter.h
│ │ │ ├── GPUImagePrewittEdgeDetectionFilter.h
│ │ │ ├── GPUImageRGBClosingFilter.h
│ │ │ ├── GPUImageRGBDilationFilter.h
│ │ │ ├── GPUImageRGBErosionFilter.h
│ │ │ ├── GPUImageRGBFilter.h
│ │ │ ├── GPUImageRGBOpeningFilter.h
│ │ │ ├── GPUImageRawDataInput.h
│ │ │ ├── GPUImageRawDataOutput.h
│ │ │ ├── GPUImageSaturationBlendFilter.h
│ │ │ ├── GPUImageSaturationFilter.h
│ │ │ ├── GPUImageScreenBlendFilter.h
│ │ │ ├── GPUImageSepiaFilter.h
│ │ │ ├── GPUImageSharpenFilter.h
│ │ │ ├── GPUImageShiTomasiFeatureDetectionFilter.h
│ │ │ ├── GPUImageSingleComponentGaussianBlurFilter.h
│ │ │ ├── GPUImageSketchFilter.h
│ │ │ ├── GPUImageSkinToneFilter.h
│ │ │ ├── GPUImageSmoothToonFilter.h
│ │ │ ├── GPUImageSobelEdgeDetectionFilter.h
│ │ │ ├── GPUImageSoftEleganceFilter.h
│ │ │ ├── GPUImageSoftLightBlendFilter.h
│ │ │ ├── GPUImageSolarizeFilter.h
│ │ │ ├── GPUImageSolidColorGenerator.h
│ │ │ ├── GPUImageSourceOverBlendFilter.h
│ │ │ ├── GPUImageSphereRefractionFilter.h
│ │ │ ├── GPUImageStillCamera.h
│ │ │ ├── GPUImageStretchDistortionFilter.h
│ │ │ ├── GPUImageSubtractBlendFilter.h
│ │ │ ├── GPUImageSwirlFilter.h
│ │ │ ├── GPUImageTextureInput.h
│ │ │ ├── GPUImageTextureOutput.h
│ │ │ ├── GPUImageThreeInputFilter.h
│ │ │ ├── GPUImageThresholdEdgeDetectionFilter.h
│ │ │ ├── GPUImageThresholdSketchFilter.h
│ │ │ ├── GPUImageThresholdedNonMaximumSuppressionFilter.h
│ │ │ ├── GPUImageTiltShiftFilter.h
│ │ │ ├── GPUImageToneCurveFilter.h
│ │ │ ├── GPUImageToonFilter.h
│ │ │ ├── GPUImageTransformFilter.h
│ │ │ ├── GPUImageTwoInputCrossTextureSamplingFilter.h
│ │ │ ├── GPUImageTwoInputFilter.h
│ │ │ ├── GPUImageTwoPassFilter.h
│ │ │ ├── GPUImageTwoPassTextureSamplingFilter.h
│ │ │ ├── GPUImageUIElement.h
│ │ │ ├── GPUImageUnsharpMaskFilter.h
│ │ │ ├── GPUImageVideoCamera.h
│ │ │ ├── GPUImageView.h
│ │ │ ├── GPUImageVignetteFilter.h
│ │ │ ├── GPUImageVoronoiConsumerFilter.h
│ │ │ ├── GPUImageWeakPixelInclusionFilter.h
│ │ │ ├── GPUImageWhiteBalanceFilter.h
│ │ │ ├── GPUImageXYDerivativeFilter.h
│ │ │ ├── GPUImageZoomBlurFilter.h
│ │ │ ├── GPUImageiOSBlurFilter.h
│ │ │ ├── LFAVEncoder.h
│ │ │ ├── LFAudioCapture.h
│ │ │ ├── LFAudioEncoding.h
│ │ │ ├── LFAudioFrame.h
│ │ │ ├── LFFrame.h
│ │ │ ├── LFGPUImageBeautyFilter.h
│ │ │ ├── LFGPUImageEmptyFilter.h
│ │ │ ├── LFH264VideoEncoder.h
│ │ │ ├── LFHardwareAudioEncoder.h
│ │ │ ├── LFHardwareVideoEncoder.h
│ │ │ ├── LFLiveAudioConfiguration.h
│ │ │ ├── LFLiveDebug.h
│ │ │ ├── LFLiveKit.h
│ │ │ ├── LFLiveSession.h
│ │ │ ├── LFLiveStreamInfo.h
│ │ │ ├── LFLiveVideoConfiguration.h
│ │ │ ├── LFMP4Atom.h
│ │ │ ├── LFNALUnit.h
│ │ │ ├── LFStreamRTMPSocket.h
│ │ │ ├── LFStreamSocket.h
│ │ │ ├── LFStreamingBuffer.h
│ │ │ ├── LFVideoCapture.h
│ │ │ ├── LFVideoEncoder.h
│ │ │ ├── LFVideoEncoding.h
│ │ │ ├── LFVideoFrame.h
│ │ │ ├── NSMutableArray+LFAdd.h
│ │ │ ├── amf.h
│ │ │ ├── bytes.h
│ │ │ ├── dh.h
│ │ │ ├── dhgroups.h
│ │ │ ├── error.h
│ │ │ ├── handshake.h
│ │ │ ├── http.h
│ │ │ ├── log.h
│ │ │ ├── rtmp.h
│ │ │ └── rtmp_sys.h
│ └── Public
│ │ └── LFLiveKit
│ │ ├── LFAudioFrame.h
│ │ ├── LFFrame.h
│ │ ├── LFLiveAudioConfiguration.h
│ │ ├── LFLiveDebug.h
│ │ ├── LFLiveKit.h
│ │ ├── LFLiveSession.h
│ │ ├── LFLiveStreamInfo.h
│ │ ├── LFLiveVideoConfiguration.h
│ │ └── LFVideoFrame.h
│ ├── LFLiveKit
│ ├── LFLiveKit
│ │ ├── LFLiveKit.h
│ │ ├── LFLiveSession.h
│ │ ├── LFLiveSession.m
│ │ ├── Vendor
│ │ │ ├── GPUImage
│ │ │ │ ├── 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
│ │ │ │ ├── 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
│ │ │ │ └── iOS
│ │ │ │ │ ├── Framework
│ │ │ │ │ └── GPUImageFramework.h
│ │ │ │ │ ├── GPUImageContext.h
│ │ │ │ │ ├── GPUImageContext.m
│ │ │ │ │ ├── GPUImageMovieWriter.h
│ │ │ │ │ ├── GPUImageMovieWriter.m
│ │ │ │ │ ├── GPUImagePicture+TextureSubimage.h
│ │ │ │ │ ├── GPUImagePicture+TextureSubimage.m
│ │ │ │ │ ├── GPUImagePicture.h
│ │ │ │ │ ├── GPUImagePicture.m
│ │ │ │ │ ├── GPUImageView.h
│ │ │ │ │ └── GPUImageView.m
│ │ │ └── pili-librtmp
│ │ │ │ ├── amf.c
│ │ │ │ ├── amf.h
│ │ │ │ ├── bytes.h
│ │ │ │ ├── dh.h
│ │ │ │ ├── dhgroups.h
│ │ │ │ ├── error.c
│ │ │ │ ├── error.h
│ │ │ │ ├── handshake.h
│ │ │ │ ├── hashswf.c
│ │ │ │ ├── http.h
│ │ │ │ ├── log.c
│ │ │ │ ├── log.h
│ │ │ │ ├── parseurl.c
│ │ │ │ ├── rtmp.c
│ │ │ │ ├── rtmp.h
│ │ │ │ └── rtmp_sys.h
│ │ ├── capture
│ │ │ ├── LFAudioCapture.h
│ │ │ ├── LFAudioCapture.m
│ │ │ ├── LFVideoCapture.h
│ │ │ └── LFVideoCapture.m
│ │ ├── coder
│ │ │ ├── H264
│ │ │ │ ├── LFAVEncoder.h
│ │ │ │ ├── LFAVEncoder.mm
│ │ │ │ ├── LFMP4Atom.h
│ │ │ │ ├── LFMP4Atom.m
│ │ │ │ ├── LFNALUnit.cpp
│ │ │ │ ├── LFNALUnit.h
│ │ │ │ ├── LFVideoEncoder.h
│ │ │ │ └── LFVideoEncoder.m
│ │ │ ├── LFAudioEncoding.h
│ │ │ ├── LFH264VideoEncoder.h
│ │ │ ├── LFH264VideoEncoder.mm
│ │ │ ├── LFHardwareAudioEncoder.h
│ │ │ ├── LFHardwareAudioEncoder.m
│ │ │ ├── LFHardwareVideoEncoder.h
│ │ │ ├── LFHardwareVideoEncoder.m
│ │ │ └── LFVideoEncoding.h
│ │ ├── configuration
│ │ │ ├── LFLiveAudioConfiguration.h
│ │ │ ├── LFLiveAudioConfiguration.m
│ │ │ ├── LFLiveVideoConfiguration.h
│ │ │ └── LFLiveVideoConfiguration.m
│ │ ├── filter
│ │ │ ├── LFGPUImageBeautyFilter.h
│ │ │ ├── LFGPUImageBeautyFilter.m
│ │ │ ├── LFGPUImageEmptyFilter.h
│ │ │ └── LFGPUImageEmptyFilter.m
│ │ ├── objects
│ │ │ ├── LFAudioFrame.h
│ │ │ ├── LFAudioFrame.m
│ │ │ ├── LFFrame.h
│ │ │ ├── LFFrame.m
│ │ │ ├── LFLiveDebug.h
│ │ │ ├── LFLiveDebug.m
│ │ │ ├── LFLiveStreamInfo.h
│ │ │ ├── LFLiveStreamInfo.m
│ │ │ ├── LFVideoFrame.h
│ │ │ └── LFVideoFrame.m
│ │ └── publish
│ │ │ ├── LFStreamRTMPSocket.h
│ │ │ ├── LFStreamRTMPSocket.m
│ │ │ ├── LFStreamSocket.h
│ │ │ ├── LFStreamingBuffer.h
│ │ │ ├── LFStreamingBuffer.m
│ │ │ ├── NSMutableArray+LFAdd.h
│ │ │ └── NSMutableArray+LFAdd.m
│ ├── LICENSE
│ └── README.md
│ ├── Manifest.lock
│ ├── Pods.xcodeproj
│ ├── project.pbxproj
│ ├── project.xcworkspace
│ │ ├── contents.xcworkspacedata
│ │ └── xcuserdata
│ │ │ └── loyinglin.xcuserdatad
│ │ │ └── WorkspaceSettings.xcsettings
│ └── xcuserdata
│ │ └── loyinglin.xcuserdatad
│ │ └── xcschemes
│ │ ├── LFLiveKit.xcscheme
│ │ ├── Pods.xcscheme
│ │ └── xcschememanagement.plist
│ └── Target Support Files
│ ├── LFLiveKit
│ ├── LFLiveKit-dummy.m
│ ├── LFLiveKit-prefix.pch
│ └── LFLiveKit.xcconfig
│ └── Pods
│ ├── Pods-acknowledgements.markdown
│ ├── Pods-acknowledgements.plist
│ ├── Pods-dummy.m
│ ├── Pods-frameworks.sh
│ ├── Pods-resources.sh
│ ├── Pods.debug.xcconfig
│ └── Pods.release.xcconfig
├── Tutorial06-Stream
├── client
│ ├── LearnVideoToolBox.xcodeproj
│ │ ├── project.pbxproj
│ │ ├── project.xcworkspace
│ │ │ ├── contents.xcworkspacedata
│ │ │ └── xcuserdata
│ │ │ │ └── loyinglin.xcuserdatad
│ │ │ │ └── UserInterfaceState.xcuserstate
│ │ └── xcuserdata
│ │ │ └── loyinglin.xcuserdatad
│ │ │ ├── xcdebugger
│ │ │ └── Breakpoints_v2.xcbkptlist
│ │ │ └── xcschemes
│ │ │ ├── LearnVideoToolBox.xcscheme
│ │ │ └── xcschememanagement.plist
│ ├── LearnVideoToolBox
│ │ ├── AppDelegate.h
│ │ ├── AppDelegate.m
│ │ ├── Assets.xcassets
│ │ │ └── AppIcon.appiconset
│ │ │ │ └── Contents.json
│ │ ├── Base.lproj
│ │ │ ├── LaunchScreen.storyboard
│ │ │ └── Main.storyboard
│ │ ├── Info.plist
│ │ ├── ViewController.h
│ │ ├── ViewController.m
│ │ └── main.m
│ └── LearnVideoToolBoxTests
│ │ ├── Info.plist
│ │ └── LearnVideoToolBoxTests.m
├── server-app
│ └── AudioStreamServer
│ │ ├── AudioStreamServer.xcodeproj
│ │ ├── project.pbxproj
│ │ ├── project.xcworkspace
│ │ │ ├── contents.xcworkspacedata
│ │ │ └── xcuserdata
│ │ │ │ └── loyinglin.xcuserdatad
│ │ │ │ └── UserInterfaceState.xcuserstate
│ │ └── xcuserdata
│ │ │ └── loyinglin.xcuserdatad
│ │ │ ├── xcdebugger
│ │ │ └── Breakpoints_v2.xcbkptlist
│ │ │ └── xcschemes
│ │ │ ├── AudioStreamServer.xcscheme
│ │ │ └── xcschememanagement.plist
│ │ └── AudioStreamServer
│ │ ├── AppDelegate.h
│ │ ├── AppDelegate.m
│ │ ├── Assets.xcassets
│ │ └── AppIcon.appiconset
│ │ │ └── Contents.json
│ │ ├── Base.lproj
│ │ └── Main.storyboard
│ │ ├── Info.plist
│ │ ├── ViewController.h
│ │ ├── ViewController.m
│ │ └── main.m
└── server-binary
│ └── AudioServer
│ ├── AudioServer.xcodeproj
│ ├── project.pbxproj
│ ├── project.xcworkspace
│ │ └── contents.xcworkspacedata
│ └── xcuserdata
│ │ └── loyinglin.xcuserdatad
│ │ ├── xcdebugger
│ │ └── Breakpoints_v2.xcbkptlist
│ │ └── xcschemes
│ │ ├── AudioServer.xcscheme
│ │ └── xcschememanagement.plist
│ └── AudioServer
│ ├── chenli.mp3
│ └── main.cpp
├── Tutorial07-AudioUnitPlayPCM
├── LeanAudioUnit.xcodeproj
│ ├── project.pbxproj
│ ├── project.xcworkspace
│ │ ├── contents.xcworkspacedata
│ │ └── xcuserdata
│ │ │ └── loyinglin.xcuserdatad
│ │ │ └── UserInterfaceState.xcuserstate
│ └── xcuserdata
│ │ └── loyinglin.xcuserdatad
│ │ ├── xcdebugger
│ │ └── Breakpoints_v2.xcbkptlist
│ │ └── xcschemes
│ │ ├── LeanAudioUnit.xcscheme
│ │ └── xcschememanagement.plist
└── LeanAudioUnit
│ ├── AppDelegate.h
│ ├── AppDelegate.m
│ ├── Assets.xcassets
│ └── AppIcon.appiconset
│ │ └── Contents.json
│ ├── Base.lproj
│ ├── LaunchScreen.storyboard
│ └── Main.storyboard
│ ├── Info.plist
│ ├── LYPlayer.h
│ ├── LYPlayer.m
│ ├── ViewController.h
│ ├── ViewController.m
│ └── main.m
├── Tutorial08-AudioUnitRecordAndPlay
├── LearnAudioUnit.xcodeproj
│ ├── project.pbxproj
│ ├── project.xcworkspace
│ │ ├── contents.xcworkspacedata
│ │ └── xcuserdata
│ │ │ └── loyinglin.xcuserdatad
│ │ │ └── UserInterfaceState.xcuserstate
│ └── xcuserdata
│ │ └── loyinglin.xcuserdatad
│ │ ├── xcdebugger
│ │ └── Breakpoints_v2.xcbkptlist
│ │ └── xcschemes
│ │ ├── LearnAudioUnit.xcscheme
│ │ └── xcschememanagement.plist
└── LearnAudioUnit
│ ├── AppDelegate.h
│ ├── AppDelegate.m
│ ├── Assets.xcassets
│ └── AppIcon.appiconset
│ │ └── Contents.json
│ ├── Base.lproj
│ ├── LaunchScreen.storyboard
│ └── Main.storyboard
│ ├── Info.plist
│ ├── ViewController.h
│ ├── ViewController.m
│ └── main.m
├── Tutorial09-AudioUnitAndConverter
└── LeanAudioUnit
│ ├── LeanAudioUnit.xcodeproj
│ ├── project.pbxproj
│ ├── project.xcworkspace
│ │ ├── contents.xcworkspacedata
│ │ └── xcuserdata
│ │ │ └── loyinglin.xcuserdatad
│ │ │ └── UserInterfaceState.xcuserstate
│ └── xcuserdata
│ │ └── loyinglin.xcuserdatad
│ │ ├── xcdebugger
│ │ └── Breakpoints_v2.xcbkptlist
│ │ └── xcschemes
│ │ ├── LeanAudioUnit.xcscheme
│ │ └── xcschememanagement.plist
│ └── LeanAudioUnit
│ ├── AppDelegate.h
│ ├── AppDelegate.m
│ ├── Assets.xcassets
│ └── AppIcon.appiconset
│ │ └── Contents.json
│ ├── Base.lproj
│ ├── LaunchScreen.storyboard
│ └── Main.storyboard
│ ├── Info.plist
│ ├── LYPlayer.h
│ ├── LYPlayer.m
│ ├── ViewController.h
│ ├── ViewController.m
│ └── main.m
├── Tutorial10-AudioUnitAndExConverter
└── LeanAudioUnit
│ ├── LeanAudioUnit.xcodeproj
│ ├── project.pbxproj
│ ├── project.xcworkspace
│ │ ├── contents.xcworkspacedata
│ │ └── xcuserdata
│ │ │ └── loyinglin.xcuserdatad
│ │ │ └── UserInterfaceState.xcuserstate
│ └── xcuserdata
│ │ └── loyinglin.xcuserdatad
│ │ ├── xcdebugger
│ │ └── Breakpoints_v2.xcbkptlist
│ │ └── xcschemes
│ │ ├── LeanAudioUnit.xcscheme
│ │ └── xcschememanagement.plist
│ └── LeanAudioUnit
│ ├── AppDelegate.h
│ ├── AppDelegate.m
│ ├── Assets.xcassets
│ └── AppIcon.appiconset
│ │ └── Contents.json
│ ├── Base.lproj
│ ├── LaunchScreen.storyboard
│ └── Main.storyboard
│ ├── Info.plist
│ ├── LYPlayer.h
│ ├── LYPlayer.m
│ ├── ViewController.h
│ ├── ViewController.m
│ └── main.m
├── Tutorial11-AUGraph
├── LearnAudioUnit.xcodeproj
│ ├── project.pbxproj
│ ├── project.xcworkspace
│ │ ├── contents.xcworkspacedata
│ │ └── xcuserdata
│ │ │ └── loyinglin.xcuserdatad
│ │ │ └── UserInterfaceState.xcuserstate
│ └── xcuserdata
│ │ └── loyinglin.xcuserdatad
│ │ ├── xcdebugger
│ │ └── Breakpoints_v2.xcbkptlist
│ │ └── xcschemes
│ │ ├── LearnAudioUnit.xcscheme
│ │ └── xcschememanagement.plist
└── LearnAudioUnit
│ ├── AppDelegate.h
│ ├── AppDelegate.m
│ ├── Assets.xcassets
│ └── AppIcon.appiconset
│ │ └── Contents.json
│ ├── Base.lproj
│ ├── LaunchScreen.storyboard
│ └── Main.storyboard
│ ├── Info.plist
│ ├── ViewController.h
│ ├── ViewController.m
│ └── main.m
├── Tutorial12-AudioUnitWithCMSampleBuffer
└── LearnAudioUnit
│ ├── LearnAudioUnit.xcodeproj
│ ├── project.pbxproj
│ ├── project.xcworkspace
│ │ └── contents.xcworkspacedata
│ └── xcuserdata
│ │ └── loyinglin.xcuserdatad
│ │ ├── xcdebugger
│ │ └── Breakpoints_v2.xcbkptlist
│ │ └── xcschemes
│ │ └── xcschememanagement.plist
│ └── LearnAudioUnit
│ ├── AppDelegate.h
│ ├── AppDelegate.m
│ ├── Assets.xcassets
│ └── AppIcon.appiconset
│ │ └── Contents.json
│ ├── Base.lproj
│ ├── LaunchScreen.storyboard
│ └── Main.storyboard
│ ├── GL
│ ├── LYOpenGLView.h
│ ├── LYOpenGLView.m
│ ├── Shader.fsh
│ └── Shader.vsh
│ ├── Info.plist
│ ├── LYPlayer.h
│ ├── LYPlayer.m
│ ├── ViewController.h
│ ├── ViewController.m
│ └── main.m
├── Tutorialtmp-FFmpeg
├── FFmpeg.pages
└── LearnAudioUnit
│ ├── LearnAudioUnit.xcodeproj
│ ├── project.pbxproj
│ ├── project.xcworkspace
│ │ ├── contents.xcworkspacedata
│ │ ├── xcshareddata
│ │ │ └── IDEWorkspaceChecks.plist
│ │ └── xcuserdata
│ │ │ └── loyinglin.xcuserdatad
│ │ │ └── UserInterfaceState.xcuserstate
│ └── xcuserdata
│ │ └── loyinglin.xcuserdatad
│ │ ├── xcdebugger
│ │ └── Breakpoints_v2.xcbkptlist
│ │ └── xcschemes
│ │ └── xcschememanagement.plist
│ ├── LearnAudioUnit
│ ├── AppDelegate.h
│ ├── AppDelegate.m
│ ├── Assets.xcassets
│ │ └── AppIcon.appiconset
│ │ │ └── Contents.json
│ ├── Base.lproj
│ │ ├── LaunchScreen.storyboard
│ │ └── Main.storyboard
│ ├── GL
│ │ ├── LYOpenGLView.h
│ │ ├── LYOpenGLView.m
│ │ ├── Shader.fsh
│ │ └── Shader.vsh
│ ├── Info.plist
│ ├── LYPlayer.h
│ ├── LYPlayer.m
│ ├── ViewController.h
│ ├── ViewController.m
│ ├── XYQMovieObject.h
│ ├── XYQMovieObject.m
│ └── main.m
│ └── readme.md
└── pdf
├── AAC
├── AAC解码算法原理详解.doc
└── AAC解码算法原理详解.pdf
└── H264
└── H.264标准详细图解.pdf
/CommonResource/abc.aac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/loyinglin/LearnVideoToolBox/5c294d7c9ff50af89060d01399ea2d4cd38c31d8/CommonResource/abc.aac
--------------------------------------------------------------------------------
/CommonResource/abc.m4a:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/loyinglin/LearnVideoToolBox/5c294d7c9ff50af89060d01399ea2d4cd38c31d8/CommonResource/abc.m4a
--------------------------------------------------------------------------------
/CommonResource/abc.mp3:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/loyinglin/LearnVideoToolBox/5c294d7c9ff50af89060d01399ea2d4cd38c31d8/CommonResource/abc.mp3
--------------------------------------------------------------------------------
/CommonResource/abc.mp4:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/loyinglin/LearnVideoToolBox/5c294d7c9ff50af89060d01399ea2d4cd38c31d8/CommonResource/abc.mp4
--------------------------------------------------------------------------------
/CommonResource/abc.pcm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/loyinglin/LearnVideoToolBox/5c294d7c9ff50af89060d01399ea2d4cd38c31d8/CommonResource/abc.pcm
--------------------------------------------------------------------------------
/CommonResource/test.mov:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/loyinglin/LearnVideoToolBox/5c294d7c9ff50af89060d01399ea2d4cd38c31d8/CommonResource/test.mov
--------------------------------------------------------------------------------
/CommonResource/test.pcm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/loyinglin/LearnVideoToolBox/5c294d7c9ff50af89060d01399ea2d4cd38c31d8/CommonResource/test.pcm
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | # LearnVideoToolBox
2 | 技术预研,实践某些想法。
3 |
4 |
5 | # 教程在[这里](http://www.jianshu.com/notebooks/5037333/latest)
6 |
7 |
8 | 目前就职于字节跳动,如果你或者身边的朋友想来字节跳动(北京/上海/深圳/广州/武汉/杭州),可以邮箱联系 loying@foxmail.com
9 |
10 | 或者微信联系(备注GitHub内推),微信号loyinglin
--------------------------------------------------------------------------------
/Tutorial01-Encode.h264/LearnVideoToolBox.xcodeproj/project.xcworkspace/contents.xcworkspacedata:
--------------------------------------------------------------------------------
1 |
2 |
4 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/Tutorial01-Encode.h264/LearnVideoToolBox.xcodeproj/project.xcworkspace/xcuserdata/loyinglin.xcuserdatad/UserInterfaceState.xcuserstate:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/loyinglin/LearnVideoToolBox/5c294d7c9ff50af89060d01399ea2d4cd38c31d8/Tutorial01-Encode.h264/LearnVideoToolBox.xcodeproj/project.xcworkspace/xcuserdata/loyinglin.xcuserdatad/UserInterfaceState.xcuserstate
--------------------------------------------------------------------------------
/Tutorial01-Encode.h264/LearnVideoToolBox.xcodeproj/xcuserdata/loyinglin.xcuserdatad/xcdebugger/Breakpoints_v2.xcbkptlist:
--------------------------------------------------------------------------------
1 |
2 |
5 |
6 |
--------------------------------------------------------------------------------
/Tutorial01-Encode.h264/LearnVideoToolBox.xcodeproj/xcuserdata/loyinglin.xcuserdatad/xcschemes/xcschememanagement.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | SchemeUserState
6 |
7 | LearnVideoToolBox.xcscheme
8 |
9 | orderHint
10 | 0
11 |
12 |
13 | SuppressBuildableAutocreation
14 |
15 | FD315B7E1D77F89E000CC96D
16 |
17 | primary
18 |
19 |
20 | FD315B971D77F89E000CC96D
21 |
22 | primary
23 |
24 |
25 |
26 |
27 |
28 |
--------------------------------------------------------------------------------
/Tutorial01-Encode.h264/LearnVideoToolBox/AppDelegate.h:
--------------------------------------------------------------------------------
1 | //
2 | // AppDelegate.h
3 | // LearnVideoToolBox
4 | //
5 | // Created by loyinglin on 16/9/1.
6 | // Copyright © 2016年 loyinglin. 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 |
--------------------------------------------------------------------------------
/Tutorial01-Encode.h264/LearnVideoToolBox/Assets.xcassets/AppIcon.appiconset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "idiom" : "iphone",
5 | "size" : "29x29",
6 | "scale" : "2x"
7 | },
8 | {
9 | "idiom" : "iphone",
10 | "size" : "29x29",
11 | "scale" : "3x"
12 | },
13 | {
14 | "idiom" : "iphone",
15 | "size" : "40x40",
16 | "scale" : "2x"
17 | },
18 | {
19 | "idiom" : "iphone",
20 | "size" : "40x40",
21 | "scale" : "3x"
22 | },
23 | {
24 | "idiom" : "iphone",
25 | "size" : "60x60",
26 | "scale" : "2x"
27 | },
28 | {
29 | "idiom" : "iphone",
30 | "size" : "60x60",
31 | "scale" : "3x"
32 | }
33 | ],
34 | "info" : {
35 | "version" : 1,
36 | "author" : "xcode"
37 | }
38 | }
--------------------------------------------------------------------------------
/Tutorial01-Encode.h264/LearnVideoToolBox/ViewController.h:
--------------------------------------------------------------------------------
1 | //
2 | // ViewController.h
3 | // LearnVideoToolBox
4 | //
5 | // Created by loyinglin on 16/9/1.
6 | // Copyright © 2016年 loyinglin. All rights reserved.
7 | //
8 |
9 | #import
10 |
11 | @interface ViewController : UIViewController
12 |
13 |
14 | @end
15 |
16 |
--------------------------------------------------------------------------------
/Tutorial01-Encode.h264/LearnVideoToolBox/main.m:
--------------------------------------------------------------------------------
1 | //
2 | // main.m
3 | // LearnVideoToolBox
4 | //
5 | // Created by loyinglin on 16/9/1.
6 | // Copyright © 2016年 loyinglin. All rights reserved.
7 | //
8 |
9 | #import
10 | #import "AppDelegate.h"
11 |
12 | int main(int argc, char * argv[]) {
13 | @autoreleasepool {
14 | return UIApplicationMain(argc, argv, nil, NSStringFromClass([AppDelegate class]));
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/Tutorial02-Decode.h264/LearnVideoToolBox.xcodeproj/project.xcworkspace/contents.xcworkspacedata:
--------------------------------------------------------------------------------
1 |
2 |
4 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/Tutorial02-Decode.h264/LearnVideoToolBox.xcodeproj/xcuserdata/loyinglin.xcuserdatad/xcdebugger/Breakpoints_v2.xcbkptlist:
--------------------------------------------------------------------------------
1 |
2 |
5 |
6 |
--------------------------------------------------------------------------------
/Tutorial02-Decode.h264/LearnVideoToolBox.xcodeproj/xcuserdata/loyinglin.xcuserdatad/xcschemes/xcschememanagement.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | SchemeUserState
6 |
7 | LearnVideoToolBox.xcscheme
8 |
9 | orderHint
10 | 0
11 |
12 |
13 | SuppressBuildableAutocreation
14 |
15 | FD315B7E1D77F89E000CC96D
16 |
17 | primary
18 |
19 |
20 | FD315B971D77F89E000CC96D
21 |
22 | primary
23 |
24 |
25 |
26 |
27 |
28 |
--------------------------------------------------------------------------------
/Tutorial02-Decode.h264/LearnVideoToolBox/AppDelegate.h:
--------------------------------------------------------------------------------
1 | //
2 | // AppDelegate.h
3 | // LearnVideoToolBox
4 | //
5 | // Created by loyinglin on 16/9/1.
6 | // Copyright © 2016年 loyinglin. 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 |
--------------------------------------------------------------------------------
/Tutorial02-Decode.h264/LearnVideoToolBox/Assets.xcassets/AppIcon.appiconset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "idiom" : "iphone",
5 | "size" : "29x29",
6 | "scale" : "2x"
7 | },
8 | {
9 | "idiom" : "iphone",
10 | "size" : "29x29",
11 | "scale" : "3x"
12 | },
13 | {
14 | "idiom" : "iphone",
15 | "size" : "40x40",
16 | "scale" : "2x"
17 | },
18 | {
19 | "idiom" : "iphone",
20 | "size" : "40x40",
21 | "scale" : "3x"
22 | },
23 | {
24 | "idiom" : "iphone",
25 | "size" : "60x60",
26 | "scale" : "2x"
27 | },
28 | {
29 | "idiom" : "iphone",
30 | "size" : "60x60",
31 | "scale" : "3x"
32 | }
33 | ],
34 | "info" : {
35 | "version" : 1,
36 | "author" : "xcode"
37 | }
38 | }
--------------------------------------------------------------------------------
/Tutorial02-Decode.h264/LearnVideoToolBox/LYOpenGLView.h:
--------------------------------------------------------------------------------
1 | //
2 | // ViewController.m
3 | // LearnOpenGLESWithGPUImage
4 | //
5 | // Created by loyinglin on 16/5/10.
6 | // Copyright © 2016年 loyinglin. All rights reserved.
7 | //
8 |
9 | #import
10 | #import
11 | #import
12 |
13 | @interface LYOpenGLView : UIView
14 |
15 | - (void)setupGL;
16 | - (void)displayPixelBuffer:(CVPixelBufferRef)pixelBuffer;
17 |
18 | @end
19 |
--------------------------------------------------------------------------------
/Tutorial02-Decode.h264/LearnVideoToolBox/Shader.fsh:
--------------------------------------------------------------------------------
1 | //
2 | // ViewController.m
3 | // LearnOpenGLESWithGPUImage
4 | //
5 | // Created by loyinglin on 16/5/10.
6 | // Copyright © 2016年 loyinglin. All rights reserved.
7 | //
8 |
9 | varying highp vec2 texCoordVarying;
10 | precision mediump float;
11 |
12 | uniform sampler2D SamplerY;
13 | uniform sampler2D SamplerUV;
14 | uniform mat3 colorConversionMatrix;
15 |
16 | void main()
17 | {
18 | mediump vec3 yuv;
19 | lowp vec3 rgb;
20 |
21 | // Subtract constants to map the video range start at 0
22 | yuv.x = (texture2D(SamplerY, texCoordVarying).r);// - (16.0/255.0));
23 | yuv.yz = (texture2D(SamplerUV, texCoordVarying).ra - vec2(0.5, 0.5));
24 |
25 | rgb = colorConversionMatrix * yuv;
26 |
27 | gl_FragColor = vec4(rgb,1);
28 | // gl_FragColor = vec4(1, 0, 0, 1);
29 | }
--------------------------------------------------------------------------------
/Tutorial02-Decode.h264/LearnVideoToolBox/Shader.vsh:
--------------------------------------------------------------------------------
1 | //
2 | // ViewController.m
3 | // LearnOpenGLESWithGPUImage
4 | //
5 | // Created by loyinglin on 16/5/10.
6 | // Copyright © 2016年 loyinglin. All rights reserved.
7 | //
8 |
9 | attribute vec4 position;
10 | attribute vec2 texCoord;
11 |
12 | varying vec2 texCoordVarying;
13 |
14 | void main()
15 | {
16 | float preferredRotation = 3.14;
17 | mat4 rotationMatrix = mat4( cos(preferredRotation), -sin(preferredRotation), 0.0, 0.0,
18 | sin(preferredRotation), cos(preferredRotation), 0.0, 0.0,
19 | 0.0, 0.0, 1.0, 0.0,
20 | 0.0, 0.0, 0.0, 1.0);
21 | gl_Position = rotationMatrix * position;
22 | texCoordVarying = texCoord;
23 | }
24 |
25 |
--------------------------------------------------------------------------------
/Tutorial02-Decode.h264/LearnVideoToolBox/ViewController.h:
--------------------------------------------------------------------------------
1 | //
2 | // ViewController.h
3 | // LearnVideoToolBox
4 | //
5 | // Created by loyinglin on 16/9/1.
6 | // Copyright © 2016年 loyinglin. All rights reserved.
7 | //
8 |
9 | #import
10 |
11 | @interface ViewController : UIViewController
12 |
13 |
14 | @end
15 |
16 |
--------------------------------------------------------------------------------
/Tutorial02-Decode.h264/LearnVideoToolBox/abc.h264:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/loyinglin/LearnVideoToolBox/5c294d7c9ff50af89060d01399ea2d4cd38c31d8/Tutorial02-Decode.h264/LearnVideoToolBox/abc.h264
--------------------------------------------------------------------------------
/Tutorial02-Decode.h264/LearnVideoToolBox/main.m:
--------------------------------------------------------------------------------
1 | //
2 | // main.m
3 | // LearnVideoToolBox
4 | //
5 | // Created by loyinglin on 16/9/1.
6 | // Copyright © 2016年 loyinglin. All rights reserved.
7 | //
8 |
9 | #import
10 | #import "AppDelegate.h"
11 |
12 | int main(int argc, char * argv[]) {
13 | @autoreleasepool {
14 | return UIApplicationMain(argc, argv, nil, NSStringFromClass([AppDelegate class]));
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/Tutorial02-Decode.h264/LearnVideoToolBox/qwe.h264:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/loyinglin/LearnVideoToolBox/5c294d7c9ff50af89060d01399ea2d4cd38c31d8/Tutorial02-Decode.h264/LearnVideoToolBox/qwe.h264
--------------------------------------------------------------------------------
/Tutorial03-EncodeAAC.AAC/LearnVideoToolBox.xcodeproj/project.xcworkspace/contents.xcworkspacedata:
--------------------------------------------------------------------------------
1 |
2 |
4 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/Tutorial03-EncodeAAC.AAC/LearnVideoToolBox.xcodeproj/xcuserdata/loyinglin.xcuserdatad/xcdebugger/Breakpoints_v2.xcbkptlist:
--------------------------------------------------------------------------------
1 |
2 |
5 |
6 |
--------------------------------------------------------------------------------
/Tutorial03-EncodeAAC.AAC/LearnVideoToolBox.xcodeproj/xcuserdata/loyinglin.xcuserdatad/xcschemes/xcschememanagement.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | SchemeUserState
6 |
7 | LearnVideoToolBox.xcscheme
8 |
9 | orderHint
10 | 0
11 |
12 |
13 | SuppressBuildableAutocreation
14 |
15 | FD315B7E1D77F89E000CC96D
16 |
17 | primary
18 |
19 |
20 | FD315B971D77F89E000CC96D
21 |
22 | primary
23 |
24 |
25 |
26 |
27 |
28 |
--------------------------------------------------------------------------------
/Tutorial03-EncodeAAC.AAC/LearnVideoToolBox/AACEncoder.h:
--------------------------------------------------------------------------------
1 | //
2 | //
3 | //
4 | // LearnVideoToolBox
5 | //
6 | // Created by loyinglin on 16/9/1.
7 | // Copyright © 2016年 loyinglin. All rights reserved.
8 | //
9 |
10 | #import
11 | #import
12 | #import
13 |
14 | @interface AACEncoder : NSObject
15 |
16 | @property (nonatomic) dispatch_queue_t encoderQueue;
17 | @property (nonatomic) dispatch_queue_t callbackQueue;
18 |
19 | - (void) encodeSampleBuffer:(CMSampleBufferRef)sampleBuffer completionBlock:(void (^)(NSData *encodedData, NSError* error))completionBlock;
20 |
21 |
22 | @end
23 |
--------------------------------------------------------------------------------
/Tutorial03-EncodeAAC.AAC/LearnVideoToolBox/AppDelegate.h:
--------------------------------------------------------------------------------
1 | //
2 | // AppDelegate.h
3 | // LearnVideoToolBox
4 | //
5 | // Created by loyinglin on 16/9/1.
6 | // Copyright © 2016年 loyinglin. 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 |
--------------------------------------------------------------------------------
/Tutorial03-EncodeAAC.AAC/LearnVideoToolBox/ViewController.h:
--------------------------------------------------------------------------------
1 | //
2 | // ViewController.h
3 | // LearnVideoToolBox
4 | //
5 | // Created by loyinglin on 16/9/1.
6 | // Copyright © 2016年 loyinglin. All rights reserved.
7 | //
8 |
9 | #import
10 |
11 | @interface ViewController : UIViewController
12 |
13 |
14 | @end
15 |
16 |
--------------------------------------------------------------------------------
/Tutorial03-EncodeAAC.AAC/LearnVideoToolBox/main.m:
--------------------------------------------------------------------------------
1 | //
2 | // main.m
3 | // LearnVideoToolBox
4 | //
5 | // Created by loyinglin on 16/9/1.
6 | // Copyright © 2016年 loyinglin. All rights reserved.
7 | //
8 |
9 | #import
10 | #import "AppDelegate.h"
11 |
12 | int main(int argc, char * argv[]) {
13 | @autoreleasepool {
14 | return UIApplicationMain(argc, argv, nil, NSStringFromClass([AppDelegate class]));
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/Tutorial04-DecodeAAC.AAC/LearnVideoToolBox.xcodeproj/project.xcworkspace/contents.xcworkspacedata:
--------------------------------------------------------------------------------
1 |
2 |
4 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/Tutorial04-DecodeAAC.AAC/LearnVideoToolBox.xcodeproj/xcuserdata/loyinglin.xcuserdatad/xcschemes/xcschememanagement.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | SchemeUserState
6 |
7 | LearnVideoToolBox.xcscheme
8 |
9 | orderHint
10 | 0
11 |
12 |
13 | SuppressBuildableAutocreation
14 |
15 | FD315B7E1D77F89E000CC96D
16 |
17 | primary
18 |
19 |
20 | FD315B971D77F89E000CC96D
21 |
22 | primary
23 |
24 |
25 |
26 |
27 |
28 |
--------------------------------------------------------------------------------
/Tutorial04-DecodeAAC.AAC/LearnVideoToolBox/AACPlayer.h:
--------------------------------------------------------------------------------
1 | //
2 | // AACPlayer.h
3 | // LearnVideoToolBox
4 | //
5 | // Created by loyinglin on 16/9/9.
6 | // Copyright © 2016年 loyinglin. All rights reserved.
7 | //
8 |
9 | #import
10 | #import
11 |
12 | @interface AACPlayer : NSObject
13 |
14 | - (void)play;
15 |
16 | - (double)getCurrentTime;
17 |
18 |
19 | @end
20 |
--------------------------------------------------------------------------------
/Tutorial04-DecodeAAC.AAC/LearnVideoToolBox/AppDelegate.h:
--------------------------------------------------------------------------------
1 | //
2 | // AppDelegate.h
3 | // LearnVideoToolBox
4 | //
5 | // Created by loyinglin on 16/9/1.
6 | // Copyright © 2016年 loyinglin. 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 |
--------------------------------------------------------------------------------
/Tutorial04-DecodeAAC.AAC/LearnVideoToolBox/ViewController.h:
--------------------------------------------------------------------------------
1 | //
2 | // ViewController.h
3 | // LearnVideoToolBox
4 | //
5 | // Created by loyinglin on 16/9/1.
6 | // Copyright © 2016年 loyinglin. All rights reserved.
7 | //
8 |
9 | #import
10 |
11 | @interface ViewController : UIViewController
12 |
13 |
14 | @end
15 |
16 |
--------------------------------------------------------------------------------
/Tutorial04-DecodeAAC.AAC/LearnVideoToolBox/abc.aac:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/loyinglin/LearnVideoToolBox/5c294d7c9ff50af89060d01399ea2d4cd38c31d8/Tutorial04-DecodeAAC.AAC/LearnVideoToolBox/abc.aac
--------------------------------------------------------------------------------
/Tutorial04-DecodeAAC.AAC/LearnVideoToolBox/main.m:
--------------------------------------------------------------------------------
1 | //
2 | // main.m
3 | // LearnVideoToolBox
4 | //
5 | // Created by loyinglin on 16/9/1.
6 | // Copyright © 2016年 loyinglin. All rights reserved.
7 | //
8 |
9 | #import
10 | #import "AppDelegate.h"
11 |
12 | int main(int argc, char * argv[]) {
13 | @autoreleasepool {
14 | return UIApplicationMain(argc, argv, nil, NSStringFromClass([AppDelegate class]));
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/LearnLIVE.xcodeproj/project.xcworkspace/contents.xcworkspacedata:
--------------------------------------------------------------------------------
1 |
2 |
4 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/LearnLIVE.xcodeproj/xcuserdata/loyinglin.xcuserdatad/xcschemes/xcschememanagement.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | SchemeUserState
6 |
7 | LearnLIVE.xcscheme
8 |
9 | orderHint
10 | 0
11 |
12 |
13 | SuppressBuildableAutocreation
14 |
15 | FD22D6F61D93FED300FAC48A
16 |
17 | primary
18 |
19 |
20 | FD22D70F1D93FED300FAC48A
21 |
22 | primary
23 |
24 |
25 |
26 |
27 |
28 |
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/LearnLIVE.xcworkspace/contents.xcworkspacedata:
--------------------------------------------------------------------------------
1 |
2 |
4 |
6 |
7 |
9 |
10 |
11 |
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/LearnLIVE.xcworkspace/xcuserdata/loyinglin.xcuserdatad/xcdebugger/Breakpoints_v2.xcbkptlist:
--------------------------------------------------------------------------------
1 |
2 |
5 |
6 |
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/LearnLIVE/AppDelegate.h:
--------------------------------------------------------------------------------
1 | //
2 | // AppDelegate.h
3 | // LearnLIVE
4 | //
5 | // Created by loyinglin on 16/9/22.
6 | // Copyright © 2016年 loyinglin. 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 |
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/LearnLIVE/ViewController.h:
--------------------------------------------------------------------------------
1 | //
2 | // ViewController.h
3 | // LearnLIVE
4 | //
5 | // Created by loyinglin on 16/9/22.
6 | // Copyright © 2016年 loyinglin. All rights reserved.
7 | //
8 |
9 | #import
10 |
11 | @interface ViewController : UIViewController
12 |
13 |
14 | @end
15 |
16 |
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/LearnLIVE/main.m:
--------------------------------------------------------------------------------
1 | //
2 | // main.m
3 | // LearnLIVE
4 | //
5 | // Created by loyinglin on 16/9/22.
6 | // Copyright © 2016年 loyinglin. All rights reserved.
7 | //
8 |
9 | #import
10 | #import "AppDelegate.h"
11 |
12 | int main(int argc, char * argv[]) {
13 | @autoreleasepool {
14 | return UIApplicationMain(argc, argv, nil, NSStringFromClass([AppDelegate class]));
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Podfile:
--------------------------------------------------------------------------------
1 | pod 'LFLiveKit'
2 |
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Podfile.lock:
--------------------------------------------------------------------------------
1 | PODS:
2 | - LFLiveKit (2.1)
3 |
4 | DEPENDENCIES:
5 | - LFLiveKit
6 |
7 | SPEC CHECKSUMS:
8 | LFLiveKit: f9a0cb5941e4ab892a7d9522348ae370b19e67e7
9 |
10 | COCOAPODS: 0.39.0
11 |
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/GLProgram.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/Vendor/GPUImage/GLProgram.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/GPUImage.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImage.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/GPUImage3x3ConvolutionFilter.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImage3x3ConvolutionFilter.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/GPUImage3x3TextureSamplingFilter.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImage3x3TextureSamplingFilter.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/GPUImageAdaptiveThresholdFilter.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageAdaptiveThresholdFilter.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/GPUImageAddBlendFilter.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageAddBlendFilter.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/GPUImageAlphaBlendFilter.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageAlphaBlendFilter.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/GPUImageAmatorkaFilter.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageAmatorkaFilter.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/GPUImageAverageColor.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageAverageColor.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/GPUImageAverageLuminanceThresholdFilter.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageAverageLuminanceThresholdFilter.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/GPUImageBilateralFilter.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageBilateralFilter.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/GPUImageBoxBlurFilter.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageBoxBlurFilter.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/GPUImageBrightnessFilter.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageBrightnessFilter.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/GPUImageBuffer.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageBuffer.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/GPUImageBulgeDistortionFilter.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageBulgeDistortionFilter.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/GPUImageCGAColorspaceFilter.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageCGAColorspaceFilter.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/GPUImageCannyEdgeDetectionFilter.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageCannyEdgeDetectionFilter.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/GPUImageChromaKeyBlendFilter.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageChromaKeyBlendFilter.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/GPUImageChromaKeyFilter.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageChromaKeyFilter.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/GPUImageClosingFilter.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageClosingFilter.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/GPUImageColorBlendFilter.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageColorBlendFilter.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/GPUImageColorBurnBlendFilter.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageColorBurnBlendFilter.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/GPUImageColorConversion.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageColorConversion.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/GPUImageColorDodgeBlendFilter.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageColorDodgeBlendFilter.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/GPUImageColorInvertFilter.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageColorInvertFilter.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/GPUImageColorLocalBinaryPatternFilter.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageColorLocalBinaryPatternFilter.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/GPUImageColorMatrixFilter.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageColorMatrixFilter.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/GPUImageColorPackingFilter.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageColorPackingFilter.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/GPUImageColourFASTFeatureDetector.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageColourFASTFeatureDetector.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/GPUImageColourFASTSamplingOperation.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageColourFASTSamplingOperation.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/GPUImageContext.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/Vendor/GPUImage/iOS/GPUImageContext.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/GPUImageContrastFilter.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageContrastFilter.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/GPUImageCropFilter.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageCropFilter.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/GPUImageCrosshairGenerator.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageCrosshairGenerator.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/GPUImageCrosshatchFilter.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageCrosshatchFilter.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/GPUImageDarkenBlendFilter.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageDarkenBlendFilter.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/GPUImageDifferenceBlendFilter.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageDifferenceBlendFilter.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/GPUImageDilationFilter.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageDilationFilter.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/GPUImageDirectionalNonMaximumSuppressionFilter.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageDirectionalNonMaximumSuppressionFilter.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/GPUImageDirectionalSobelEdgeDetectionFilter.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageDirectionalSobelEdgeDetectionFilter.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/GPUImageDissolveBlendFilter.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageDissolveBlendFilter.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/GPUImageDivideBlendFilter.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageDivideBlendFilter.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/GPUImageEmbossFilter.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageEmbossFilter.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/GPUImageErosionFilter.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageErosionFilter.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/GPUImageExclusionBlendFilter.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageExclusionBlendFilter.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/GPUImageExposureFilter.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageExposureFilter.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/GPUImageFASTCornerDetectionFilter.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageFASTCornerDetectionFilter.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/GPUImageFalseColorFilter.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageFalseColorFilter.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/GPUImageFilter.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageFilter.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/GPUImageFilterGroup.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageFilterGroup.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/GPUImageFilterPipeline.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageFilterPipeline.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/GPUImageFourInputFilter.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageFourInputFilter.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/GPUImageFramebuffer.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageFramebuffer.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/GPUImageFramebufferCache.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageFramebufferCache.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/GPUImageFramework.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/Vendor/GPUImage/iOS/Framework/GPUImageFramework.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/GPUImageGammaFilter.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageGammaFilter.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/GPUImageGaussianBlurFilter.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageGaussianBlurFilter.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/GPUImageGaussianBlurPositionFilter.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageGaussianBlurPositionFilter.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/GPUImageGaussianSelectiveBlurFilter.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageGaussianSelectiveBlurFilter.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/GPUImageGlassSphereFilter.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageGlassSphereFilter.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/GPUImageGrayscaleFilter.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageGrayscaleFilter.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/GPUImageHSBFilter.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageHSBFilter.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/GPUImageHalftoneFilter.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageHalftoneFilter.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/GPUImageHardLightBlendFilter.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageHardLightBlendFilter.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/GPUImageHarrisCornerDetectionFilter.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageHarrisCornerDetectionFilter.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/GPUImageHazeFilter.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageHazeFilter.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/GPUImageHighPassFilter.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageHighPassFilter.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/GPUImageHighlightShadowFilter.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageHighlightShadowFilter.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/GPUImageHighlightShadowTintFilter.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageHighlightShadowTintFilter.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/GPUImageHistogramEqualizationFilter.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageHistogramEqualizationFilter.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/GPUImageHistogramFilter.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageHistogramFilter.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/GPUImageHistogramGenerator.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageHistogramGenerator.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/GPUImageHoughTransformLineDetector.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageHoughTransformLineDetector.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/GPUImageHueBlendFilter.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageHueBlendFilter.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/GPUImageHueFilter.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageHueFilter.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/GPUImageJFAVoronoiFilter.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageJFAVoronoiFilter.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/GPUImageKuwaharaFilter.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageKuwaharaFilter.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/GPUImageKuwaharaRadius3Filter.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageKuwaharaRadius3Filter.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/GPUImageLanczosResamplingFilter.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageLanczosResamplingFilter.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/GPUImageLaplacianFilter.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageLaplacianFilter.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/GPUImageLevelsFilter.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageLevelsFilter.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/GPUImageLightenBlendFilter.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageLightenBlendFilter.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/GPUImageLineGenerator.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageLineGenerator.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/GPUImageLinearBurnBlendFilter.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageLinearBurnBlendFilter.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/GPUImageLocalBinaryPatternFilter.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageLocalBinaryPatternFilter.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/GPUImageLookupFilter.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageLookupFilter.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/GPUImageLowPassFilter.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageLowPassFilter.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/GPUImageLuminanceRangeFilter.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageLuminanceRangeFilter.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/GPUImageLuminanceThresholdFilter.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageLuminanceThresholdFilter.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/GPUImageLuminosity.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageLuminosity.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/GPUImageLuminosityBlendFilter.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageLuminosityBlendFilter.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/GPUImageMaskFilter.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageMaskFilter.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/GPUImageMedianFilter.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageMedianFilter.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/GPUImageMissEtikateFilter.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageMissEtikateFilter.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/GPUImageMonochromeFilter.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageMonochromeFilter.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/GPUImageMosaicFilter.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageMosaicFilter.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/GPUImageMotionBlurFilter.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageMotionBlurFilter.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/GPUImageMotionDetector.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageMotionDetector.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/GPUImageMovie.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageMovie.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/GPUImageMovieComposition.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageMovieComposition.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/GPUImageMovieWriter.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/Vendor/GPUImage/iOS/GPUImageMovieWriter.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/GPUImageMultiplyBlendFilter.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageMultiplyBlendFilter.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/GPUImageNobleCornerDetectionFilter.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageNobleCornerDetectionFilter.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/GPUImageNonMaximumSuppressionFilter.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageNonMaximumSuppressionFilter.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/GPUImageNormalBlendFilter.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageNormalBlendFilter.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/GPUImageOpacityFilter.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageOpacityFilter.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/GPUImageOpeningFilter.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageOpeningFilter.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/GPUImageOutput.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageOutput.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/GPUImageOverlayBlendFilter.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageOverlayBlendFilter.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/GPUImageParallelCoordinateLineTransformFilter.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageParallelCoordinateLineTransformFilter.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/GPUImagePerlinNoiseFilter.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImagePerlinNoiseFilter.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/GPUImagePicture+TextureSubimage.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/Vendor/GPUImage/iOS/GPUImagePicture+TextureSubimage.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/GPUImagePicture.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/Vendor/GPUImage/iOS/GPUImagePicture.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/GPUImagePinchDistortionFilter.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImagePinchDistortionFilter.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/GPUImagePixellateFilter.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImagePixellateFilter.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/GPUImagePixellatePositionFilter.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImagePixellatePositionFilter.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/GPUImagePoissonBlendFilter.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImagePoissonBlendFilter.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/GPUImagePolarPixellateFilter.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImagePolarPixellateFilter.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/GPUImagePolkaDotFilter.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImagePolkaDotFilter.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/GPUImagePosterizeFilter.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImagePosterizeFilter.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/GPUImagePrewittEdgeDetectionFilter.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImagePrewittEdgeDetectionFilter.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/GPUImageRGBClosingFilter.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageRGBClosingFilter.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/GPUImageRGBDilationFilter.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageRGBDilationFilter.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/GPUImageRGBErosionFilter.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageRGBErosionFilter.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/GPUImageRGBFilter.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageRGBFilter.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/GPUImageRGBOpeningFilter.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageRGBOpeningFilter.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/GPUImageRawDataInput.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageRawDataInput.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/GPUImageRawDataOutput.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageRawDataOutput.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/GPUImageSaturationBlendFilter.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageSaturationBlendFilter.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/GPUImageSaturationFilter.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageSaturationFilter.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/GPUImageScreenBlendFilter.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageScreenBlendFilter.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/GPUImageSepiaFilter.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageSepiaFilter.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/GPUImageSharpenFilter.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageSharpenFilter.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/GPUImageShiTomasiFeatureDetectionFilter.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageShiTomasiFeatureDetectionFilter.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/GPUImageSingleComponentGaussianBlurFilter.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageSingleComponentGaussianBlurFilter.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/GPUImageSketchFilter.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageSketchFilter.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/GPUImageSkinToneFilter.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageSkinToneFilter.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/GPUImageSmoothToonFilter.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageSmoothToonFilter.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/GPUImageSobelEdgeDetectionFilter.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageSobelEdgeDetectionFilter.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/GPUImageSoftEleganceFilter.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageSoftEleganceFilter.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/GPUImageSoftLightBlendFilter.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageSoftLightBlendFilter.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/GPUImageSolarizeFilter.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageSolarizeFilter.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/GPUImageSolidColorGenerator.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageSolidColorGenerator.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/GPUImageSourceOverBlendFilter.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageSourceOverBlendFilter.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/GPUImageSphereRefractionFilter.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageSphereRefractionFilter.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/GPUImageStillCamera.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageStillCamera.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/GPUImageStretchDistortionFilter.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageStretchDistortionFilter.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/GPUImageSubtractBlendFilter.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageSubtractBlendFilter.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/GPUImageSwirlFilter.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageSwirlFilter.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/GPUImageTextureInput.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageTextureInput.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/GPUImageTextureOutput.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageTextureOutput.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/GPUImageThreeInputFilter.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageThreeInputFilter.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/GPUImageThresholdEdgeDetectionFilter.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageThresholdEdgeDetectionFilter.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/GPUImageThresholdSketchFilter.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageThresholdSketchFilter.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/GPUImageThresholdedNonMaximumSuppressionFilter.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageThresholdedNonMaximumSuppressionFilter.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/GPUImageTiltShiftFilter.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageTiltShiftFilter.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/GPUImageToneCurveFilter.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageToneCurveFilter.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/GPUImageToonFilter.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageToonFilter.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/GPUImageTransformFilter.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageTransformFilter.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/GPUImageTwoInputCrossTextureSamplingFilter.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageTwoInputCrossTextureSamplingFilter.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/GPUImageTwoInputFilter.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageTwoInputFilter.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/GPUImageTwoPassFilter.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageTwoPassFilter.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/GPUImageTwoPassTextureSamplingFilter.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageTwoPassTextureSamplingFilter.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/GPUImageUIElement.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageUIElement.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/GPUImageUnsharpMaskFilter.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageUnsharpMaskFilter.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/GPUImageVideoCamera.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageVideoCamera.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/GPUImageView.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/Vendor/GPUImage/iOS/GPUImageView.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/GPUImageVignetteFilter.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageVignetteFilter.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/GPUImageVoronoiConsumerFilter.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageVoronoiConsumerFilter.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/GPUImageWeakPixelInclusionFilter.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageWeakPixelInclusionFilter.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/GPUImageWhiteBalanceFilter.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageWhiteBalanceFilter.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/GPUImageXYDerivativeFilter.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageXYDerivativeFilter.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/GPUImageZoomBlurFilter.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageZoomBlurFilter.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/GPUImageiOSBlurFilter.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageiOSBlurFilter.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/LFAVEncoder.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/coder/H264/LFAVEncoder.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/LFAudioCapture.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/capture/LFAudioCapture.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/LFAudioEncoding.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/coder/LFAudioEncoding.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/LFAudioFrame.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/objects/LFAudioFrame.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/LFFrame.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/objects/LFFrame.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/LFGPUImageBeautyFilter.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/filter/LFGPUImageBeautyFilter.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/LFGPUImageEmptyFilter.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/filter/LFGPUImageEmptyFilter.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/LFH264VideoEncoder.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/coder/LFH264VideoEncoder.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/LFHardwareAudioEncoder.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/coder/LFHardwareAudioEncoder.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/LFHardwareVideoEncoder.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/coder/LFHardwareVideoEncoder.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/LFLiveAudioConfiguration.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/configuration/LFLiveAudioConfiguration.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/LFLiveDebug.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/objects/LFLiveDebug.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/LFLiveKit.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/LFLiveKit.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/LFLiveSession.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/LFLiveSession.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/LFLiveStreamInfo.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/objects/LFLiveStreamInfo.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/LFLiveVideoConfiguration.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/configuration/LFLiveVideoConfiguration.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/LFMP4Atom.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/coder/H264/LFMP4Atom.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/LFNALUnit.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/coder/H264/LFNALUnit.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/LFStreamRTMPSocket.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/publish/LFStreamRTMPSocket.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/LFStreamSocket.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/publish/LFStreamSocket.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/LFStreamingBuffer.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/publish/LFStreamingBuffer.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/LFVideoCapture.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/capture/LFVideoCapture.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/LFVideoEncoder.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/coder/H264/LFVideoEncoder.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/LFVideoEncoding.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/coder/LFVideoEncoding.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/LFVideoFrame.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/objects/LFVideoFrame.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/NSMutableArray+LFAdd.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/publish/NSMutableArray+LFAdd.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/amf.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/Vendor/pili-librtmp/amf.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/bytes.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/Vendor/pili-librtmp/bytes.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/dh.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/Vendor/pili-librtmp/dh.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/dhgroups.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/Vendor/pili-librtmp/dhgroups.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/error.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/Vendor/pili-librtmp/error.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/handshake.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/Vendor/pili-librtmp/handshake.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/http.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/Vendor/pili-librtmp/http.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/log.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/Vendor/pili-librtmp/log.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/rtmp.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/Vendor/pili-librtmp/rtmp.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Private/LFLiveKit/rtmp_sys.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/Vendor/pili-librtmp/rtmp_sys.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Public/LFLiveKit/LFAudioFrame.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/objects/LFAudioFrame.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Public/LFLiveKit/LFFrame.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/objects/LFFrame.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Public/LFLiveKit/LFLiveAudioConfiguration.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/configuration/LFLiveAudioConfiguration.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Public/LFLiveKit/LFLiveDebug.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/objects/LFLiveDebug.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Public/LFLiveKit/LFLiveKit.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/LFLiveKit.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Public/LFLiveKit/LFLiveSession.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/LFLiveSession.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Public/LFLiveKit/LFLiveStreamInfo.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/objects/LFLiveStreamInfo.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Public/LFLiveKit/LFLiveVideoConfiguration.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/configuration/LFLiveVideoConfiguration.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Headers/Public/LFLiveKit/LFVideoFrame.h:
--------------------------------------------------------------------------------
1 | ../../../LFLiveKit/LFLiveKit/objects/LFVideoFrame.h
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/LFLiveKit/LFLiveKit/LFLiveKit.h:
--------------------------------------------------------------------------------
1 | //
2 | // LFLiveKit.h
3 | // LFLiveKit
4 | //
5 | // Created by admin on 16/5/24.
6 | // Copyright © 2016年 admin. All rights reserved.
7 | //
8 |
9 | #import "LFLiveSession.h"
10 | #import "LFLiveAudioConfiguration.h"
11 | #import "LFLiveVideoConfiguration.h"
12 | #import "LFAudioFrame.h"
13 | #import "LFFrame.h"
14 | #import "LFLiveStreamInfo.h"
15 | #import "LFVideoFrame.h"
16 |
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImage3x3ConvolutionFilter.h:
--------------------------------------------------------------------------------
1 | #import "GPUImage3x3TextureSamplingFilter.h"
2 |
3 | /** Runs a 3x3 convolution kernel against the image
4 | */
5 | @interface GPUImage3x3ConvolutionFilter : GPUImage3x3TextureSamplingFilter
6 | {
7 | GLint convolutionMatrixUniform;
8 | }
9 |
10 | /** Convolution kernel to run against the image
11 |
12 | The convolution kernel is a 3x3 matrix of values to apply to the pixel and its 8 surrounding pixels.
13 | The matrix is specified in row-major order, with the top left pixel being one.one and the bottom right three.three
14 | If the values in the matrix don't add up to 1.0, the image could be brightened or darkened.
15 | */
16 | @property(readwrite, nonatomic) GPUMatrix3x3 convolutionKernel;
17 |
18 | @end
19 |
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImage3x3TextureSamplingFilter.h:
--------------------------------------------------------------------------------
1 | #import "GPUImageFilter.h"
2 |
3 | extern NSString *const kGPUImageNearbyTexelSamplingVertexShaderString;
4 |
5 | @interface GPUImage3x3TextureSamplingFilter : GPUImageFilter
6 | {
7 | GLint texelWidthUniform, texelHeightUniform;
8 |
9 | CGFloat texelWidth, texelHeight;
10 | BOOL hasOverriddenImageSizeFactor;
11 | }
12 |
13 | // The texel width and height determines how far out to sample from this texel. By default, this is the normalized width of a pixel, but this can be overridden for different effects.
14 | @property(readwrite, nonatomic) CGFloat texelWidth;
15 | @property(readwrite, nonatomic) CGFloat texelHeight;
16 |
17 |
18 | @end
19 |
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/LFLiveKit/LFLiveKit/Vendor/GPUImage/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 |
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageAddBlendFilter.h:
--------------------------------------------------------------------------------
1 | #import "GPUImageTwoInputFilter.h"
2 |
3 | @interface GPUImageAddBlendFilter : GPUImageTwoInputFilter
4 |
5 | @end
6 |
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/LFLiveKit/LFLiveKit/Vendor/GPUImage/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 |
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageAmatorkaFilter.h:
--------------------------------------------------------------------------------
1 | #import "GPUImageFilterGroup.h"
2 |
3 | @class GPUImagePicture;
4 |
5 | /** A photo filter based on Photoshop action by Amatorka
6 | http://amatorka.deviantart.com/art/Amatorka-Action-2-121069631
7 | */
8 |
9 | // Note: If you want to use this effect you have to add lookup_amatorka.png
10 | // from Resources folder to your application bundle.
11 |
12 | @interface GPUImageAmatorkaFilter : GPUImageFilterGroup
13 | {
14 | GPUImagePicture *lookupImageSource;
15 | }
16 |
17 | @end
18 |
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageAverageColor.h:
--------------------------------------------------------------------------------
1 | #import "GPUImageFilter.h"
2 |
3 | extern NSString *const kGPUImageColorAveragingVertexShaderString;
4 |
5 | @interface GPUImageAverageColor : GPUImageFilter
6 | {
7 | GLint texelWidthUniform, texelHeightUniform;
8 |
9 | NSUInteger numberOfStages;
10 |
11 | GLubyte *rawImagePixels;
12 | CGSize finalStageSize;
13 | }
14 |
15 | // This block is called on the completion of color averaging for a frame
16 | @property(nonatomic, copy) void(^colorAverageProcessingFinishedBlock)(CGFloat redComponent, CGFloat greenComponent, CGFloat blueComponent, CGFloat alphaComponent, CMTime frameTime);
17 |
18 | - (void)extractAverageColorAtFrameTime:(CMTime)frameTime;
19 |
20 | @end
21 |
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/LFLiveKit/LFLiveKit/Vendor/GPUImage/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 |
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageBilateralFilter.h:
--------------------------------------------------------------------------------
1 | #import "GPUImageGaussianBlurFilter.h"
2 |
3 | @interface GPUImageBilateralFilter : GPUImageGaussianBlurFilter
4 | {
5 | CGFloat firstDistanceNormalizationFactorUniform;
6 | CGFloat secondDistanceNormalizationFactorUniform;
7 | }
8 | // A normalization factor for the distance between central color and sample color.
9 | @property(nonatomic, readwrite) CGFloat distanceNormalizationFactor;
10 | @end
11 |
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/LFLiveKit/LFLiveKit/Vendor/GPUImage/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 |
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/LFLiveKit/LFLiveKit/Vendor/GPUImage/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 |
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/LFLiveKit/LFLiveKit/Vendor/GPUImage/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 |
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageBulgeDistortionFilter.h:
--------------------------------------------------------------------------------
1 | #import "GPUImageFilter.h"
2 |
3 | /// Creates a bulge distortion on the image
4 | @interface GPUImageBulgeDistortionFilter : GPUImageFilter
5 | {
6 | GLint aspectRatioUniform, radiusUniform, centerUniform, scaleUniform;
7 | }
8 |
9 | /// The center about which to apply the distortion, with a default of (0.5, 0.5)
10 | @property(readwrite, nonatomic) CGPoint center;
11 | /// The radius of the distortion, ranging from 0.0 to 1.0, with a default of 0.25
12 | @property(readwrite, nonatomic) CGFloat radius;
13 | /// The amount of distortion to apply, from -1.0 to 1.0, with a default of 0.5
14 | @property(readwrite, nonatomic) CGFloat scale;
15 |
16 | @end
17 |
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageCGAColorspaceFilter.h:
--------------------------------------------------------------------------------
1 | #import "GPUImageFilter.h"
2 |
3 | @interface GPUImageCGAColorspaceFilter : GPUImageFilter
4 |
5 | @end
6 |
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageClosingFilter.h:
--------------------------------------------------------------------------------
1 | #import "GPUImageFilterGroup.h"
2 |
3 | @class GPUImageErosionFilter;
4 | @class GPUImageDilationFilter;
5 |
6 | // A filter that first performs a dilation on the red channel of an image, followed by an erosion of the same radius.
7 | // This helps to filter out smaller dark elements.
8 |
9 | @interface GPUImageClosingFilter : GPUImageFilterGroup
10 | {
11 | GPUImageErosionFilter *erosionFilter;
12 | GPUImageDilationFilter *dilationFilter;
13 | }
14 |
15 | @property(readwrite, nonatomic) CGFloat verticalTexelSpacing, horizontalTexelSpacing;
16 |
17 | - (id)initWithRadius:(NSUInteger)radius;
18 |
19 | @end
20 |
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageColorBlendFilter.h:
--------------------------------------------------------------------------------
1 | #import "GPUImageTwoInputFilter.h"
2 |
3 | @interface GPUImageColorBlendFilter : GPUImageTwoInputFilter
4 |
5 | @end
6 |
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/LFLiveKit/LFLiveKit/Vendor/GPUImage/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 |
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageColorConversion.h:
--------------------------------------------------------------------------------
1 | #ifndef GPUImageColorConversion_h
2 | #define GPUImageColorConversion_h
3 |
4 | extern GLfloat *kColorConversion601;
5 | extern GLfloat *kColorConversion601FullRange;
6 | extern GLfloat *kColorConversion709;
7 | extern NSString *const kGPUImageYUVVideoRangeConversionForRGFragmentShaderString;
8 | extern NSString *const kGPUImageYUVFullRangeConversionForLAFragmentShaderString;
9 | extern NSString *const kGPUImageYUVVideoRangeConversionForLAFragmentShaderString;
10 |
11 |
12 | #endif /* GPUImageColorConversion_h */
13 |
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/LFLiveKit/LFLiveKit/Vendor/GPUImage/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 |
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageColorInvertFilter.h:
--------------------------------------------------------------------------------
1 | #import "GPUImageFilter.h"
2 |
3 | @interface GPUImageColorInvertFilter : GPUImageFilter
4 | {
5 | }
6 |
7 | @end
8 |
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageColorLocalBinaryPatternFilter.h:
--------------------------------------------------------------------------------
1 | #import "GPUImage3x3TextureSamplingFilter.h"
2 |
3 | @interface GPUImageColorLocalBinaryPatternFilter : GPUImage3x3TextureSamplingFilter
4 |
5 | @end
6 |
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageColorMatrixFilter.h:
--------------------------------------------------------------------------------
1 | #import "GPUImageFilter.h"
2 |
3 | /** Transforms the colors of an image by applying a matrix to them
4 | */
5 | @interface GPUImageColorMatrixFilter : GPUImageFilter
6 | {
7 | GLint colorMatrixUniform;
8 | GLint intensityUniform;
9 | }
10 |
11 | /** A 4x4 matrix used to transform each color in an image
12 | */
13 | @property(readwrite, nonatomic) GPUMatrix4x4 colorMatrix;
14 |
15 | /** The degree to which the new transformed color replaces the original color for each pixel
16 | */
17 | @property(readwrite, nonatomic) CGFloat intensity;
18 |
19 | @end
20 |
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/LFLiveKit/LFLiveKit/Vendor/GPUImage/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 |
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageContrastFilter.h:
--------------------------------------------------------------------------------
1 | #import "GPUImageFilter.h"
2 |
3 | /** Adjusts the contrast of the image
4 | */
5 | @interface GPUImageContrastFilter : GPUImageFilter
6 | {
7 | GLint contrastUniform;
8 | }
9 |
10 | /** Contrast ranges from 0.0 to 4.0 (max contrast), with 1.0 as the normal level
11 | */
12 | @property(readwrite, nonatomic) CGFloat contrast;
13 |
14 | @end
15 |
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageCropFilter.h:
--------------------------------------------------------------------------------
1 | #import "GPUImageFilter.h"
2 |
3 | @interface GPUImageCropFilter : GPUImageFilter
4 | {
5 | GLfloat cropTextureCoordinates[8];
6 | }
7 |
8 | // The crop region is the rectangle within the image to crop. It is normalized to a coordinate space from 0.0 to 1.0, with 0.0, 0.0 being the upper left corner of the image
9 | @property(readwrite, nonatomic) CGRect cropRegion;
10 |
11 | // Initialization and teardown
12 | - (id)initWithCropRegion:(CGRect)newCropRegion;
13 |
14 | @end
15 |
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageCrosshatchFilter.h:
--------------------------------------------------------------------------------
1 | #import "GPUImageFilter.h"
2 |
3 | @interface GPUImageCrosshatchFilter : GPUImageFilter
4 | {
5 | GLint crossHatchSpacingUniform, lineWidthUniform;
6 | }
7 | // The fractional width of the image to use as the spacing for the crosshatch. The default is 0.03.
8 | @property(readwrite, nonatomic) CGFloat crossHatchSpacing;
9 |
10 | // A relative width for the crosshatch lines. The default is 0.003.
11 | @property(readwrite, nonatomic) CGFloat lineWidth;
12 |
13 | @end
14 |
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageDarkenBlendFilter.h:
--------------------------------------------------------------------------------
1 | #import "GPUImageTwoInputFilter.h"
2 |
3 | @interface GPUImageDarkenBlendFilter : GPUImageTwoInputFilter
4 | {
5 | }
6 |
7 | @end
8 |
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageDifferenceBlendFilter.h:
--------------------------------------------------------------------------------
1 | #import "GPUImageTwoInputFilter.h"
2 |
3 | @interface GPUImageDifferenceBlendFilter : GPUImageTwoInputFilter
4 | {
5 | }
6 |
7 | @end
8 |
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageDirectionalSobelEdgeDetectionFilter.h:
--------------------------------------------------------------------------------
1 | #import "GPUImage3x3TextureSamplingFilter.h"
2 |
3 | @interface GPUImageDirectionalSobelEdgeDetectionFilter : GPUImage3x3TextureSamplingFilter
4 |
5 | @end
6 |
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/LFLiveKit/LFLiveKit/Vendor/GPUImage/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 |
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageDivideBlendFilter.h:
--------------------------------------------------------------------------------
1 | #import "GPUImageTwoInputFilter.h"
2 |
3 | @interface GPUImageDivideBlendFilter : GPUImageTwoInputFilter
4 |
5 | @end
6 |
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/LFLiveKit/LFLiveKit/Vendor/GPUImage/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 |
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageErosionFilter.h:
--------------------------------------------------------------------------------
1 | #import "GPUImageTwoPassTextureSamplingFilter.h"
2 |
3 | // For each pixel, this sets it to the minimum value of the red channel in a rectangular neighborhood extending out dilationRadius pixels from the center.
4 | // This extends out dark features, and is most commonly used with black-and-white thresholded images.
5 |
6 | @interface GPUImageErosionFilter : GPUImageTwoPassTextureSamplingFilter
7 |
8 | // Acceptable values for erosionRadius, which sets the distance in pixels to sample out from the center, are 1, 2, 3, and 4.
9 | - (id)initWithRadius:(NSUInteger)erosionRadius;
10 |
11 | @end
12 |
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageExclusionBlendFilter.h:
--------------------------------------------------------------------------------
1 | #import "GPUImageTwoInputFilter.h"
2 |
3 | @interface GPUImageExclusionBlendFilter : GPUImageTwoInputFilter
4 | {
5 | }
6 |
7 | @end
8 |
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/LFLiveKit/LFLiveKit/Vendor/GPUImage/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 |
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageFalseColorFilter.h:
--------------------------------------------------------------------------------
1 | #import "GPUImageFilter.h"
2 |
3 | @interface GPUImageFalseColorFilter : GPUImageFilter
4 | {
5 | GLint firstColorUniform, secondColorUniform;
6 | }
7 |
8 | // The first and second colors specify what colors replace the dark and light areas of the image, respectively. The defaults are (0.0, 0.0, 0.5) amd (1.0, 0.0, 0.0).
9 | @property(readwrite, nonatomic) GPUVector4 firstColor;
10 | @property(readwrite, nonatomic) GPUVector4 secondColor;
11 |
12 | - (void)setFirstColorRed:(GLfloat)redComponent green:(GLfloat)greenComponent blue:(GLfloat)blueComponent;
13 | - (void)setSecondColorRed:(GLfloat)redComponent green:(GLfloat)greenComponent blue:(GLfloat)blueComponent;
14 |
15 | @end
16 |
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageFilterGroup.h:
--------------------------------------------------------------------------------
1 | #import "GPUImageOutput.h"
2 | #import "GPUImageFilter.h"
3 |
4 | @interface GPUImageFilterGroup : GPUImageOutput
5 | {
6 | NSMutableArray *filters;
7 | BOOL isEndProcessing;
8 | }
9 |
10 | @property(readwrite, nonatomic, strong) GPUImageOutput *terminalFilter;
11 | @property(readwrite, nonatomic, strong) NSArray *initialFilters;
12 | @property(readwrite, nonatomic, strong) GPUImageOutput *inputFilterToIgnoreForUpdates;
13 |
14 | // Filter management
15 | - (void)addFilter:(GPUImageOutput *)newFilter;
16 | - (GPUImageOutput *)filterAtIndex:(NSUInteger)filterIndex;
17 | - (NSUInteger)filterCount;
18 |
19 | @end
20 |
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageFourInputFilter.h:
--------------------------------------------------------------------------------
1 | #import "GPUImageThreeInputFilter.h"
2 |
3 | extern NSString *const kGPUImageFourInputTextureVertexShaderString;
4 |
5 | @interface GPUImageFourInputFilter : GPUImageThreeInputFilter
6 | {
7 | GPUImageFramebuffer *fourthInputFramebuffer;
8 |
9 | GLint filterFourthTextureCoordinateAttribute;
10 | GLint filterInputTextureUniform4;
11 | GPUImageRotationMode inputRotation4;
12 | GLuint filterSourceTexture4;
13 | CMTime fourthFrameTime;
14 |
15 | BOOL hasSetThirdTexture, hasReceivedFourthFrame, fourthFrameWasVideo;
16 | BOOL fourthFrameCheckDisabled;
17 | }
18 |
19 | - (void)disableFourthFrameCheck;
20 |
21 | @end
22 |
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/LFLiveKit/LFLiveKit/Vendor/GPUImage/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 |
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageGaussianBlurPositionFilter.h:
--------------------------------------------------------------------------------
1 | #import "GPUImageTwoPassTextureSamplingFilter.h"
2 |
3 | /** A more generalized 9x9 Gaussian blur filter
4 | */
5 | @interface GPUImageGaussianBlurPositionFilter : GPUImageTwoPassTextureSamplingFilter
6 | {
7 | GLint blurCenterUniform, blurRadiusUniform, aspectRatioUniform;
8 | }
9 |
10 | /** A multiplier for the blur size, ranging from 0.0 on up, with a default of 1.0
11 | */
12 | @property (readwrite, nonatomic) CGFloat blurSize;
13 |
14 | /** Center for the blur, defaults to 0.5, 0.5
15 | */
16 | @property (readwrite, nonatomic) CGPoint blurCenter;
17 |
18 | /** Radius for the blur, defaults to 1.0
19 | */
20 | @property (readwrite, nonatomic) CGFloat blurRadius;
21 |
22 | @end
23 |
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageGlassSphereFilter.h:
--------------------------------------------------------------------------------
1 | #import "GPUImageSphereRefractionFilter.h"
2 |
3 | @interface GPUImageGlassSphereFilter : GPUImageSphereRefractionFilter
4 |
5 | @end
6 |
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/LFLiveKit/LFLiveKit/Vendor/GPUImage/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 |
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageHalftoneFilter.h:
--------------------------------------------------------------------------------
1 | #import "GPUImagePixellateFilter.h"
2 |
3 | @interface GPUImageHalftoneFilter : GPUImagePixellateFilter
4 |
5 | @end
6 |
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageHardLightBlendFilter.h:
--------------------------------------------------------------------------------
1 | #import "GPUImageTwoInputFilter.h"
2 |
3 | @interface GPUImageHardLightBlendFilter : GPUImageTwoInputFilter
4 | {
5 | }
6 |
7 | @end
8 |
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageHighPassFilter.h:
--------------------------------------------------------------------------------
1 | #import "GPUImageFilterGroup.h"
2 | #import "GPUImageLowPassFilter.h"
3 | #import "GPUImageDifferenceBlendFilter.h"
4 |
5 | @interface GPUImageHighPassFilter : GPUImageFilterGroup
6 | {
7 | GPUImageLowPassFilter *lowPassFilter;
8 | GPUImageDifferenceBlendFilter *differenceBlendFilter;
9 | }
10 |
11 | // This controls the degree by which the previous accumulated frames are blended and then subtracted from the current one. This ranges from 0.0 to 1.0, with a default of 0.5.
12 | @property(readwrite, nonatomic) CGFloat filterStrength;
13 |
14 | @end
15 |
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageHighlightShadowFilter.h:
--------------------------------------------------------------------------------
1 | #import "GPUImageFilter.h"
2 |
3 | @interface GPUImageHighlightShadowFilter : GPUImageFilter
4 | {
5 | GLint shadowsUniform, highlightsUniform;
6 | }
7 |
8 | /**
9 | * 0 - 1, increase to lighten shadows.
10 | * @default 0
11 | */
12 | @property(readwrite, nonatomic) CGFloat shadows;
13 |
14 | /**
15 | * 0 - 1, decrease to darken highlights.
16 | * @default 1
17 | */
18 | @property(readwrite, nonatomic) CGFloat highlights;
19 |
20 | @end
21 |
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageHistogramGenerator.h:
--------------------------------------------------------------------------------
1 | #import "GPUImageFilter.h"
2 |
3 | @interface GPUImageHistogramGenerator : GPUImageFilter
4 | {
5 | GLint backgroundColorUniform;
6 | }
7 |
8 | @end
9 |
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageHueBlendFilter.h:
--------------------------------------------------------------------------------
1 | #import "GPUImageTwoInputFilter.h"
2 |
3 | @interface GPUImageHueBlendFilter : GPUImageTwoInputFilter
4 |
5 | @end
6 |
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/LFLiveKit/LFLiveKit/Vendor/GPUImage/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 |
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageJFAVoronoiFilter.h:
--------------------------------------------------------------------------------
1 | #import "GPUImageFilter.h"
2 |
3 | @interface GPUImageJFAVoronoiFilter : GPUImageFilter
4 | {
5 | GLuint secondFilterOutputTexture;
6 | GLuint secondFilterFramebuffer;
7 |
8 |
9 | GLint sampleStepUniform;
10 | GLint sizeUniform;
11 | NSUInteger numPasses;
12 |
13 | }
14 |
15 | @property (nonatomic, readwrite) CGSize sizeInPixels;
16 |
17 | @end
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageKuwaharaFilter.h:
--------------------------------------------------------------------------------
1 | #import "GPUImageFilter.h"
2 |
3 | /** Kuwahara image abstraction, drawn from the work of Kyprianidis, et. al. in their publication "Anisotropic Kuwahara Filtering on the GPU" within the GPU Pro collection. This produces an oil-painting-like image, but it is extremely computationally expensive, so it can take seconds to render a frame on an iPad 2. This might be best used for still images.
4 | */
5 | @interface GPUImageKuwaharaFilter : GPUImageFilter
6 | {
7 | GLint radiusUniform;
8 | }
9 |
10 | /// The radius to sample from when creating the brush-stroke effect, with a default of 3. The larger the radius, the slower the filter.
11 | @property(readwrite, nonatomic) NSUInteger radius;
12 |
13 | @end
14 |
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageKuwaharaRadius3Filter.h:
--------------------------------------------------------------------------------
1 | //
2 | // GPUImageKuwaharaRadius3Filter.h
3 |
4 | #import "GPUImageFilter.h"
5 |
6 | @interface GPUImageKuwaharaRadius3Filter : GPUImageFilter
7 |
8 | @end
9 |
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageLanczosResamplingFilter.h:
--------------------------------------------------------------------------------
1 | #import "GPUImageTwoPassTextureSamplingFilter.h"
2 |
3 | @interface GPUImageLanczosResamplingFilter : GPUImageTwoPassTextureSamplingFilter
4 |
5 | @property(readwrite, nonatomic) CGSize originalImageSize;
6 |
7 | @end
8 |
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageLaplacianFilter.h:
--------------------------------------------------------------------------------
1 | #import "GPUImage3x3ConvolutionFilter.h"
2 |
3 | @interface GPUImageLaplacianFilter : GPUImage3x3ConvolutionFilter
4 |
5 | @end
6 |
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/LFLiveKit/LFLiveKit/Vendor/GPUImage/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 |
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageLinearBurnBlendFilter.h:
--------------------------------------------------------------------------------
1 | #import "GPUImageTwoInputFilter.h"
2 |
3 | @interface GPUImageLinearBurnBlendFilter : GPUImageTwoInputFilter
4 |
5 | @end
6 |
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageLocalBinaryPatternFilter.h:
--------------------------------------------------------------------------------
1 | #import "GPUImage3x3TextureSamplingFilter.h"
2 |
3 | @interface GPUImageLocalBinaryPatternFilter : GPUImage3x3TextureSamplingFilter
4 |
5 | @end
6 |
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageLowPassFilter.h:
--------------------------------------------------------------------------------
1 | #import "GPUImageFilterGroup.h"
2 | #import "GPUImageBuffer.h"
3 | #import "GPUImageDissolveBlendFilter.h"
4 |
5 | @interface GPUImageLowPassFilter : GPUImageFilterGroup
6 | {
7 | GPUImageBuffer *bufferFilter;
8 | GPUImageDissolveBlendFilter *dissolveBlendFilter;
9 | }
10 |
11 | // This controls the degree by which the previous accumulated frames are blended with the current one. This ranges from 0.0 to 1.0, with a default of 0.5.
12 | @property(readwrite, nonatomic) CGFloat filterStrength;
13 |
14 | @end
15 |
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/LFLiveKit/LFLiveKit/Vendor/GPUImage/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 |
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageLuminanceThresholdFilter.h:
--------------------------------------------------------------------------------
1 | #import "GPUImageFilter.h"
2 |
3 | /** Pixels with a luminance above the threshold will appear white, and those below will be black
4 | */
5 | @interface GPUImageLuminanceThresholdFilter : GPUImageFilter
6 | {
7 | GLint thresholdUniform;
8 | }
9 |
10 | /** Anything above this luminance will be white, and anything below black. Ranges from 0.0 to 1.0, with 0.5 as the default
11 | */
12 | @property(readwrite, nonatomic) CGFloat threshold;
13 |
14 | @end
15 |
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageLuminosity.h:
--------------------------------------------------------------------------------
1 | #import "GPUImageAverageColor.h"
2 |
3 | @interface GPUImageLuminosity : GPUImageAverageColor
4 | {
5 | GLProgram *secondFilterProgram;
6 | GLint secondFilterPositionAttribute, secondFilterTextureCoordinateAttribute;
7 | GLint secondFilterInputTextureUniform, secondFilterInputTextureUniform2;
8 | GLint secondFilterTexelWidthUniform, secondFilterTexelHeightUniform;
9 | }
10 |
11 | // This block is called on the completion of color averaging for a frame
12 | @property(nonatomic, copy) void(^luminosityProcessingFinishedBlock)(CGFloat luminosity, CMTime frameTime);
13 |
14 | - (void)extractLuminosityAtFrameTime:(CMTime)frameTime;
15 | - (void)initializeSecondaryAttributes;
16 |
17 | @end
18 |
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageLuminosityBlendFilter.h:
--------------------------------------------------------------------------------
1 | #import "GPUImageTwoInputFilter.h"
2 |
3 | @interface GPUImageLuminosityBlendFilter : GPUImageTwoInputFilter
4 |
5 | @end
6 |
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageMaskFilter.h:
--------------------------------------------------------------------------------
1 | #import "GPUImageTwoInputFilter.h"
2 |
3 | @interface GPUImageMaskFilter : GPUImageTwoInputFilter
4 |
5 | @end
6 |
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageMedianFilter.h:
--------------------------------------------------------------------------------
1 | #import "GPUImage3x3TextureSamplingFilter.h"
2 |
3 | @interface GPUImageMedianFilter : GPUImage3x3TextureSamplingFilter
4 |
5 | @end
6 |
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageMissEtikateFilter.h:
--------------------------------------------------------------------------------
1 | #import "GPUImageFilterGroup.h"
2 |
3 | @class GPUImagePicture;
4 |
5 | /** A photo filter based on Photoshop action by Miss Etikate:
6 | http://miss-etikate.deviantart.com/art/Photoshop-Action-15-120151961
7 | */
8 |
9 | // Note: If you want to use this effect you have to add lookup_miss_etikate.png
10 | // from Resources folder to your application bundle.
11 |
12 | @interface GPUImageMissEtikateFilter : GPUImageFilterGroup
13 | {
14 | GPUImagePicture *lookupImageSource;
15 | }
16 |
17 | @end
18 |
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageMonochromeFilter.h:
--------------------------------------------------------------------------------
1 | #import "GPUImageFilter.h"
2 |
3 | @interface GPUImageMonochromeFilter : GPUImageFilter
4 | {
5 | GLint intensityUniform, filterColorUniform;
6 | }
7 |
8 | @property(readwrite, nonatomic) CGFloat intensity;
9 | @property(readwrite, nonatomic) GPUVector4 color;
10 |
11 | - (void)setColorRed:(GLfloat)redComponent green:(GLfloat)greenComponent blue:(GLfloat)blueComponent;
12 |
13 | @end
14 |
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageMotionBlurFilter.h:
--------------------------------------------------------------------------------
1 | #import "GPUImageFilter.h"
2 |
3 | @interface GPUImageMotionBlurFilter : GPUImageFilter
4 |
5 | /** A multiplier for the blur size, ranging from 0.0 on up, with a default of 1.0
6 | */
7 | @property (readwrite, nonatomic) CGFloat blurSize;
8 |
9 | /** The angular direction of the blur, in degrees. 0 degrees by default
10 | */
11 | @property (readwrite, nonatomic) CGFloat blurAngle;
12 |
13 | @end
14 |
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageMovieComposition.h:
--------------------------------------------------------------------------------
1 | //
2 | // GPUImageMovieComposition.h
3 | // Givit
4 | //
5 | // Created by Sean Meiners on 2013/01/25.
6 | //
7 | //
8 |
9 | #import "GPUImageMovie.h"
10 |
11 | @interface GPUImageMovieComposition : GPUImageMovie
12 |
13 | @property (readwrite, retain) AVComposition *compositon;
14 | @property (readwrite, retain) AVVideoComposition *videoComposition;
15 | @property (readwrite, retain) AVAudioMix *audioMix;
16 |
17 | - (id)initWithComposition:(AVComposition*)compositon
18 | andVideoComposition:(AVVideoComposition*)videoComposition
19 | andAudioMix:(AVAudioMix*)audioMix;
20 |
21 | @end
22 |
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageMultiplyBlendFilter.h:
--------------------------------------------------------------------------------
1 | #import "GPUImageTwoInputFilter.h"
2 |
3 | @interface GPUImageMultiplyBlendFilter : GPUImageTwoInputFilter
4 | {
5 | }
6 |
7 | @end
8 |
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageNobleCornerDetectionFilter.h:
--------------------------------------------------------------------------------
1 | #import "GPUImageHarrisCornerDetectionFilter.h"
2 |
3 | /** Noble corner detector
4 |
5 | This is the Noble variant on the Harris detector, from
6 | Alison Noble, "Descriptions of Image Surfaces", PhD thesis, Department of Engineering Science, Oxford University 1989, p45.
7 | */
8 |
9 |
10 | @interface GPUImageNobleCornerDetectionFilter : GPUImageHarrisCornerDetectionFilter
11 |
12 | @end
13 |
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageNonMaximumSuppressionFilter.h:
--------------------------------------------------------------------------------
1 | #import "GPUImage3x3TextureSamplingFilter.h"
2 |
3 | @interface GPUImageNonMaximumSuppressionFilter : GPUImage3x3TextureSamplingFilter
4 |
5 | @end
6 |
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/LFLiveKit/LFLiveKit/Vendor/GPUImage/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 |
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/LFLiveKit/LFLiveKit/Vendor/GPUImage/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 |
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageOpeningFilter.h:
--------------------------------------------------------------------------------
1 | #import "GPUImageFilterGroup.h"
2 |
3 | @class GPUImageErosionFilter;
4 | @class GPUImageDilationFilter;
5 |
6 | // A filter that first performs an erosion on the red channel of an image, followed by a dilation of the same radius.
7 | // This helps to filter out smaller bright elements.
8 |
9 | @interface GPUImageOpeningFilter : GPUImageFilterGroup
10 | {
11 | GPUImageErosionFilter *erosionFilter;
12 | GPUImageDilationFilter *dilationFilter;
13 | }
14 |
15 | @property(readwrite, nonatomic) CGFloat verticalTexelSpacing, horizontalTexelSpacing;
16 |
17 | - (id)initWithRadius:(NSUInteger)radius;
18 |
19 | @end
20 |
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageOverlayBlendFilter.h:
--------------------------------------------------------------------------------
1 | #import "GPUImageTwoInputFilter.h"
2 |
3 | @interface GPUImageOverlayBlendFilter : GPUImageTwoInputFilter
4 |
5 | @end
6 |
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImagePerlinNoiseFilter.h:
--------------------------------------------------------------------------------
1 | #import "GPUImageFilter.h"
2 |
3 | @interface GPUImagePerlinNoiseFilter : GPUImageFilter
4 | {
5 | GLint scaleUniform, colorStartUniform, colorFinishUniform;
6 | }
7 |
8 | @property (readwrite, nonatomic) GPUVector4 colorStart;
9 | @property (readwrite, nonatomic) GPUVector4 colorFinish;
10 |
11 | @property (readwrite, nonatomic) float scale;
12 |
13 | @end
14 |
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImagePinchDistortionFilter.h:
--------------------------------------------------------------------------------
1 | #import "GPUImageFilter.h"
2 |
3 | /** Creates a pinch distortion of the image
4 | */
5 | @interface GPUImagePinchDistortionFilter : GPUImageFilter
6 | {
7 | GLint aspectRatioUniform, radiusUniform, centerUniform, scaleUniform;
8 | }
9 |
10 | /** The center about which to apply the distortion, with a default of (0.5, 0.5)
11 | */
12 | @property(readwrite, nonatomic) CGPoint center;
13 | /** The radius of the distortion, ranging from 0.0 to 2.0, with a default of 1.0
14 | */
15 | @property(readwrite, nonatomic) CGFloat radius;
16 | /** The amount of distortion to apply, from -2.0 to 2.0, with a default of 0.5
17 | */
18 | @property(readwrite, nonatomic) CGFloat scale;
19 |
20 | @end
21 |
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImagePixellateFilter.h:
--------------------------------------------------------------------------------
1 | #import "GPUImageFilter.h"
2 |
3 | @interface GPUImagePixellateFilter : GPUImageFilter
4 | {
5 | GLint fractionalWidthOfAPixelUniform, aspectRatioUniform;
6 | }
7 |
8 | // The fractional width of the image to use as a size for the pixels in the resulting image. Values below one pixel width in the source image are ignored.
9 | @property(readwrite, nonatomic) CGFloat fractionalWidthOfAPixel;
10 |
11 |
12 | @end
13 |
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImagePixellatePositionFilter.h:
--------------------------------------------------------------------------------
1 | #import "GPUImageFilter.h"
2 |
3 | @interface GPUImagePixellatePositionFilter : GPUImageFilter
4 | {
5 | GLint fractionalWidthOfAPixelUniform, aspectRatioUniform, centerUniform, radiusUniform;
6 | }
7 |
8 | // The fractional width of the image to use as a size for the pixels in the resulting image. Values below one pixel width in the source image are ignored.
9 | @property(readwrite, nonatomic) CGFloat fractionalWidthOfAPixel;
10 |
11 | // the center point to start pixelation in texture coordinates, default 0.5, 0.5
12 | @property(readwrite, nonatomic) CGPoint center;
13 |
14 | // the radius (0.0 - 1.0) in which to pixelate, default 1.0
15 | @property(readwrite, nonatomic) CGFloat radius;
16 |
17 | @end
18 |
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImagePoissonBlendFilter.h:
--------------------------------------------------------------------------------
1 | #import "GPUImageTwoInputCrossTextureSamplingFilter.h"
2 | #import "GPUImageFilterGroup.h"
3 |
4 | @interface GPUImagePoissonBlendFilter : GPUImageTwoInputCrossTextureSamplingFilter
5 | {
6 | GLint mixUniform;
7 |
8 | GPUImageFramebuffer *secondOutputFramebuffer;
9 | }
10 |
11 | // Mix ranges from 0.0 (only image 1) to 1.0 (only image 2 gradients), with 1.0 as the normal level
12 | @property(readwrite, nonatomic) CGFloat mix;
13 |
14 | // The number of times to propagate the gradients.
15 | // Crank this up to 100 or even 1000 if you want to get anywhere near convergence. Yes, this will be slow.
16 | @property(readwrite, nonatomic) NSUInteger numIterations;
17 |
18 | @end
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImagePolarPixellateFilter.h:
--------------------------------------------------------------------------------
1 | #import "GPUImageFilter.h"
2 |
3 | @interface GPUImagePolarPixellateFilter : GPUImageFilter {
4 | GLint centerUniform, pixelSizeUniform;
5 | }
6 |
7 | // The center about which to apply the distortion, with a default of (0.5, 0.5)
8 | @property(readwrite, nonatomic) CGPoint center;
9 | // The amount of distortion to apply, from (-2.0, -2.0) to (2.0, 2.0), with a default of (0.05, 0.05)
10 | @property(readwrite, nonatomic) CGSize pixelSize;
11 |
12 |
13 | @end
14 |
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/LFLiveKit/LFLiveKit/Vendor/GPUImage/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 |
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImagePosterizeFilter.h:
--------------------------------------------------------------------------------
1 | #import "GPUImageFilter.h"
2 |
3 | /** This reduces the color dynamic range into the number of steps specified, leading to a cartoon-like simple shading of the image.
4 | */
5 | @interface GPUImagePosterizeFilter : GPUImageFilter
6 | {
7 | GLint colorLevelsUniform;
8 | }
9 |
10 | /** The number of color levels to reduce the image space to. This ranges from 1 to 256, with a default of 10.
11 | */
12 | @property(readwrite, nonatomic) NSUInteger colorLevels;
13 |
14 | @end
15 |
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImagePrewittEdgeDetectionFilter.h:
--------------------------------------------------------------------------------
1 | #import "GPUImageSobelEdgeDetectionFilter.h"
2 |
3 | @interface GPUImagePrewittEdgeDetectionFilter : GPUImageSobelEdgeDetectionFilter
4 |
5 | @end
6 |
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageRGBClosingFilter.h:
--------------------------------------------------------------------------------
1 | #import "GPUImageFilterGroup.h"
2 |
3 | @class GPUImageRGBErosionFilter;
4 | @class GPUImageRGBDilationFilter;
5 |
6 | // A filter that first performs a dilation on each color channel of an image, followed by an erosion of the same radius.
7 | // This helps to filter out smaller dark elements.
8 |
9 | @interface GPUImageRGBClosingFilter : GPUImageFilterGroup
10 | {
11 | GPUImageRGBErosionFilter *erosionFilter;
12 | GPUImageRGBDilationFilter *dilationFilter;
13 | }
14 |
15 | - (id)initWithRadius:(NSUInteger)radius;
16 |
17 |
18 | @end
19 |
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageRGBDilationFilter.h:
--------------------------------------------------------------------------------
1 | #import "GPUImageTwoPassTextureSamplingFilter.h"
2 |
3 | // For each pixel, this sets it to the maximum value of each color channel in a rectangular neighborhood extending out dilationRadius pixels from the center.
4 | // This extends out brighter colors, and can be used for abstraction of color images.
5 |
6 | @interface GPUImageRGBDilationFilter : GPUImageTwoPassTextureSamplingFilter
7 |
8 | // Acceptable values for dilationRadius, which sets the distance in pixels to sample out from the center, are 1, 2, 3, and 4.
9 | - (id)initWithRadius:(NSUInteger)dilationRadius;
10 |
11 | @end
12 |
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageRGBErosionFilter.h:
--------------------------------------------------------------------------------
1 | #import "GPUImageTwoPassTextureSamplingFilter.h"
2 |
3 | // For each pixel, this sets it to the minimum value of each color channel in a rectangular neighborhood extending out dilationRadius pixels from the center.
4 | // This extends out dark features, and can be used for abstraction of color images.
5 |
6 | @interface GPUImageRGBErosionFilter : GPUImageTwoPassTextureSamplingFilter
7 |
8 | // Acceptable values for erosionRadius, which sets the distance in pixels to sample out from the center, are 1, 2, 3, and 4.
9 | - (id)initWithRadius:(NSUInteger)erosionRadius;
10 |
11 | @end
12 |
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageRGBFilter.h:
--------------------------------------------------------------------------------
1 | #import "GPUImageFilter.h"
2 |
3 | @interface GPUImageRGBFilter : GPUImageFilter
4 | {
5 | GLint redUniform;
6 | GLint greenUniform;
7 | GLint blueUniform;
8 | }
9 |
10 | // Normalized values by which each color channel is multiplied. The range is from 0.0 up, with 1.0 as the default.
11 | @property (readwrite, nonatomic) CGFloat red;
12 | @property (readwrite, nonatomic) CGFloat green;
13 | @property (readwrite, nonatomic) CGFloat blue;
14 |
15 | @end
16 |
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageRGBOpeningFilter.h:
--------------------------------------------------------------------------------
1 | #import "GPUImageFilterGroup.h"
2 |
3 | @class GPUImageRGBErosionFilter;
4 | @class GPUImageRGBDilationFilter;
5 |
6 | // A filter that first performs an erosion on each color channel of an image, followed by a dilation of the same radius.
7 | // This helps to filter out smaller bright elements.
8 |
9 | @interface GPUImageRGBOpeningFilter : GPUImageFilterGroup
10 | {
11 | GPUImageRGBErosionFilter *erosionFilter;
12 | GPUImageRGBDilationFilter *dilationFilter;
13 | }
14 |
15 | - (id)initWithRadius:(NSUInteger)radius;
16 |
17 | @end
18 |
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageSaturationBlendFilter.h:
--------------------------------------------------------------------------------
1 | #import "GPUImageTwoInputFilter.h"
2 |
3 | @interface GPUImageSaturationBlendFilter : GPUImageTwoInputFilter
4 |
5 | @end
6 |
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageSaturationFilter.h:
--------------------------------------------------------------------------------
1 | #import "GPUImageFilter.h"
2 |
3 | /** Adjusts the saturation of an image
4 | */
5 | @interface GPUImageSaturationFilter : GPUImageFilter
6 | {
7 | GLint saturationUniform;
8 | }
9 |
10 | /** Saturation ranges from 0.0 (fully desaturated) to 2.0 (max saturation), with 1.0 as the normal level
11 | */
12 | @property(readwrite, nonatomic) CGFloat saturation;
13 |
14 | @end
15 |
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageScreenBlendFilter.h:
--------------------------------------------------------------------------------
1 | #import "GPUImageTwoInputFilter.h"
2 |
3 | @interface GPUImageScreenBlendFilter : GPUImageTwoInputFilter
4 | {
5 | }
6 |
7 | @end
8 |
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageSepiaFilter.h:
--------------------------------------------------------------------------------
1 | #import "GPUImageColorMatrixFilter.h"
2 |
3 | /// Simple sepia tone filter
4 | @interface GPUImageSepiaFilter : GPUImageColorMatrixFilter
5 |
6 | @end
7 |
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageSepiaFilter.m:
--------------------------------------------------------------------------------
1 | #import "GPUImageSepiaFilter.h"
2 |
3 | @implementation GPUImageSepiaFilter
4 |
5 | - (id)init;
6 | {
7 | if (!(self = [super init]))
8 | {
9 | return nil;
10 | }
11 |
12 | self.intensity = 1.0;
13 | self.colorMatrix = (GPUMatrix4x4){
14 | {0.3588, 0.7044, 0.1368, 0.0},
15 | {0.2990, 0.5870, 0.1140, 0.0},
16 | {0.2392, 0.4696, 0.0912 ,0.0},
17 | {0,0,0,1.0},
18 | };
19 |
20 | return self;
21 | }
22 |
23 | @end
24 |
25 |
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/LFLiveKit/LFLiveKit/Vendor/GPUImage/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 |
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageShiTomasiFeatureDetectionFilter.h:
--------------------------------------------------------------------------------
1 | #import "GPUImageHarrisCornerDetectionFilter.h"
2 |
3 | /** Shi-Tomasi feature detector
4 |
5 | This is the Shi-Tomasi feature detector, as described in
6 | J. Shi and C. Tomasi. Good features to track. Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition, pages 593-600, June 1994.
7 | */
8 |
9 | @interface GPUImageShiTomasiFeatureDetectionFilter : GPUImageHarrisCornerDetectionFilter
10 |
11 | // Compared to the Harris corner detector, the default sensitivity value for this detector is set to 1.5
12 |
13 | @end
14 |
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/LFLiveKit/LFLiveKit/Vendor/GPUImage/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 |
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/LFLiveKit/LFLiveKit/Vendor/GPUImage/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 |
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageSoftEleganceFilter.h:
--------------------------------------------------------------------------------
1 | #import "GPUImageFilterGroup.h"
2 |
3 | @class GPUImagePicture;
4 |
5 | /** A photo filter based on Soft Elegance Photoshop action
6 | http://h-d-stock.deviantart.com/art/H-D-A-soft-elegance-70107603
7 | */
8 |
9 | // Note: If you want to use this effect you have to add
10 | // lookup_soft_elegance_1.png and lookup_soft_elegance_2.png
11 | // from Resources folder to your application bundle.
12 |
13 | @interface GPUImageSoftEleganceFilter : GPUImageFilterGroup
14 | {
15 | GPUImagePicture *lookupImageSource1;
16 | GPUImagePicture *lookupImageSource2;
17 | }
18 |
19 | @end
20 |
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageSoftLightBlendFilter.h:
--------------------------------------------------------------------------------
1 | #import "GPUImageTwoInputFilter.h"
2 |
3 | @interface GPUImageSoftLightBlendFilter : GPUImageTwoInputFilter
4 | {
5 | }
6 |
7 | @end
8 |
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageSolarizeFilter.h:
--------------------------------------------------------------------------------
1 | #import "GPUImageFilter.h"
2 |
3 | /** Pixels with a luminance above the threshold will invert their color
4 | */
5 | @interface GPUImageSolarizeFilter : GPUImageFilter
6 | {
7 | GLint thresholdUniform;
8 | }
9 |
10 | /** Anything above this luminance will be inverted, and anything below normal. Ranges from 0.0 to 1.0, with 0.5 as the default
11 | */
12 | @property(readwrite, nonatomic) CGFloat threshold;
13 |
14 | @end
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageSourceOverBlendFilter.h:
--------------------------------------------------------------------------------
1 | #import "GPUImageTwoInputFilter.h"
2 |
3 | @interface GPUImageSourceOverBlendFilter : GPUImageTwoInputFilter
4 |
5 | @end
6 |
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageSphereRefractionFilter.h:
--------------------------------------------------------------------------------
1 | #import "GPUImageFilter.h"
2 |
3 | @interface GPUImageSphereRefractionFilter : GPUImageFilter
4 | {
5 | GLint radiusUniform, centerUniform, aspectRatioUniform, refractiveIndexUniform;
6 | }
7 |
8 | /// The center about which to apply the distortion, with a default of (0.5, 0.5)
9 | @property(readwrite, nonatomic) CGPoint center;
10 | /// The radius of the distortion, ranging from 0.0 to 1.0, with a default of 0.25
11 | @property(readwrite, nonatomic) CGFloat radius;
12 | /// The index of refraction for the sphere, with a default of 0.71
13 | @property(readwrite, nonatomic) CGFloat refractiveIndex;
14 |
15 | @end
16 |
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageStretchDistortionFilter.h:
--------------------------------------------------------------------------------
1 | #import "GPUImageFilter.h"
2 |
3 | /** Creates a stretch distortion of the image
4 | */
5 | @interface GPUImageStretchDistortionFilter : GPUImageFilter {
6 | GLint centerUniform;
7 | }
8 |
9 | /** The center about which to apply the distortion, with a default of (0.5, 0.5)
10 | */
11 | @property(readwrite, nonatomic) CGPoint center;
12 |
13 | @end
14 |
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageSubtractBlendFilter.h:
--------------------------------------------------------------------------------
1 | #import "GPUImageTwoInputFilter.h"
2 |
3 | @interface GPUImageSubtractBlendFilter : GPUImageTwoInputFilter
4 |
5 | @end
6 |
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageSwirlFilter.h:
--------------------------------------------------------------------------------
1 | #import "GPUImageFilter.h"
2 |
3 | /** Creates a swirl distortion on the image
4 | */
5 | @interface GPUImageSwirlFilter : GPUImageFilter
6 | {
7 | GLint radiusUniform, centerUniform, angleUniform;
8 | }
9 |
10 | /// The center about which to apply the distortion, with a default of (0.5, 0.5)
11 | @property(readwrite, nonatomic) CGPoint center;
12 | /// The radius of the distortion, ranging from 0.0 to 1.0, with a default of 0.5
13 | @property(readwrite, nonatomic) CGFloat radius;
14 | /// The amount of distortion to apply, with a minimum of 0.0 and a default of 1.0
15 | @property(readwrite, nonatomic) CGFloat angle;
16 |
17 | @end
18 |
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/LFLiveKit/LFLiveKit/Vendor/GPUImage/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 |
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageTextureOutput.h:
--------------------------------------------------------------------------------
1 | #import
2 | #import "GPUImageContext.h"
3 |
4 | @protocol GPUImageTextureOutputDelegate;
5 |
6 | @interface GPUImageTextureOutput : NSObject
7 | {
8 | GPUImageFramebuffer *firstInputFramebuffer;
9 | }
10 |
11 | @property(readwrite, unsafe_unretained, nonatomic) id delegate;
12 | @property(readonly) GLuint texture;
13 | @property(nonatomic) BOOL enabled;
14 |
15 | - (void)doneWithTexture;
16 |
17 | @end
18 |
19 | @protocol GPUImageTextureOutputDelegate
20 | - (void)newFrameReadyFromTextureOutput:(GPUImageTextureOutput *)callbackTextureOutput;
21 | @end
22 |
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageThreeInputFilter.h:
--------------------------------------------------------------------------------
1 | #import "GPUImageTwoInputFilter.h"
2 |
3 | extern NSString *const kGPUImageThreeInputTextureVertexShaderString;
4 |
5 | @interface GPUImageThreeInputFilter : GPUImageTwoInputFilter
6 | {
7 | GPUImageFramebuffer *thirdInputFramebuffer;
8 |
9 | GLint filterThirdTextureCoordinateAttribute;
10 | GLint filterInputTextureUniform3;
11 | GPUImageRotationMode inputRotation3;
12 | GLuint filterSourceTexture3;
13 | CMTime thirdFrameTime;
14 |
15 | BOOL hasSetSecondTexture, hasReceivedThirdFrame, thirdFrameWasVideo;
16 | BOOL thirdFrameCheckDisabled;
17 | }
18 |
19 | - (void)disableThirdFrameCheck;
20 |
21 | @end
22 |
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageThresholdEdgeDetectionFilter.h:
--------------------------------------------------------------------------------
1 | #import "GPUImageSobelEdgeDetectionFilter.h"
2 |
3 | @interface GPUImageThresholdEdgeDetectionFilter : GPUImageSobelEdgeDetectionFilter
4 | {
5 | GLint thresholdUniform;
6 | }
7 |
8 | /** Any edge above this threshold will be black, and anything below white. Ranges from 0.0 to 1.0, with 0.8 as the default
9 | */
10 | @property(readwrite, nonatomic) CGFloat threshold;
11 |
12 | @end
13 |
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageThresholdSketchFilter.h:
--------------------------------------------------------------------------------
1 | #import "GPUImageThresholdEdgeDetectionFilter.h"
2 |
3 | @interface GPUImageThresholdSketchFilter : GPUImageThresholdEdgeDetectionFilter
4 |
5 | @end
6 |
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageThresholdedNonMaximumSuppressionFilter.h:
--------------------------------------------------------------------------------
1 | #import "GPUImage3x3TextureSamplingFilter.h"
2 |
3 | @interface GPUImageThresholdedNonMaximumSuppressionFilter : GPUImage3x3TextureSamplingFilter
4 | {
5 | GLint thresholdUniform;
6 | }
7 |
8 | /** Any local maximum above this threshold will be white, and anything below black. Ranges from 0.0 to 1.0, with 0.8 as the default
9 | */
10 | @property(readwrite, nonatomic) CGFloat threshold;
11 |
12 | - (id)initWithPackedColorspace:(BOOL)inputUsesPackedColorspace;
13 |
14 | @end
15 |
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageToonFilter.h:
--------------------------------------------------------------------------------
1 | #import "GPUImage3x3TextureSamplingFilter.h"
2 |
3 | /** This uses Sobel edge detection to place a black border around objects,
4 | and then it quantizes the colors present in the image to give a cartoon-like quality to the image.
5 | */
6 | @interface GPUImageToonFilter : GPUImage3x3TextureSamplingFilter
7 | {
8 | GLint thresholdUniform, quantizationLevelsUniform;
9 | }
10 |
11 | /** The threshold at which to apply the edges, default of 0.2
12 | */
13 | @property(readwrite, nonatomic) CGFloat threshold;
14 |
15 | /** The levels of quantization for the posterization of colors within the scene, with a default of 10.0
16 | */
17 | @property(readwrite, nonatomic) CGFloat quantizationLevels;
18 |
19 | @end
20 |
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageTwoInputCrossTextureSamplingFilter.h:
--------------------------------------------------------------------------------
1 | #import "GPUImageTwoInputFilter.h"
2 |
3 | @interface GPUImageTwoInputCrossTextureSamplingFilter : GPUImageTwoInputFilter
4 | {
5 | GLint texelWidthUniform, texelHeightUniform;
6 |
7 | CGFloat texelWidth, texelHeight;
8 | BOOL hasOverriddenImageSizeFactor;
9 | }
10 |
11 | // The texel width and height determines how far out to sample from this texel. By default, this is the normalized width of a pixel, but this can be overridden for different effects.
12 | @property(readwrite, nonatomic) CGFloat texelWidth;
13 | @property(readwrite, nonatomic) CGFloat texelHeight;
14 |
15 | @end
16 |
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageTwoInputFilter.h:
--------------------------------------------------------------------------------
1 | #import "GPUImageFilter.h"
2 |
3 | extern NSString *const kGPUImageTwoInputTextureVertexShaderString;
4 |
5 | @interface GPUImageTwoInputFilter : GPUImageFilter
6 | {
7 | GPUImageFramebuffer *secondInputFramebuffer;
8 |
9 | GLint filterSecondTextureCoordinateAttribute;
10 | GLint filterInputTextureUniform2;
11 | GPUImageRotationMode inputRotation2;
12 | CMTime firstFrameTime, secondFrameTime;
13 |
14 | BOOL hasSetFirstTexture, hasReceivedFirstFrame, hasReceivedSecondFrame, firstFrameWasVideo, secondFrameWasVideo;
15 | BOOL firstFrameCheckDisabled, secondFrameCheckDisabled;
16 | }
17 |
18 | - (void)disableFirstFrameCheck;
19 | - (void)disableSecondFrameCheck;
20 |
21 | @end
22 |
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageTwoPassTextureSamplingFilter.h:
--------------------------------------------------------------------------------
1 | #import "GPUImageTwoPassFilter.h"
2 |
3 | @interface GPUImageTwoPassTextureSamplingFilter : GPUImageTwoPassFilter
4 | {
5 | GLint verticalPassTexelWidthOffsetUniform, verticalPassTexelHeightOffsetUniform, horizontalPassTexelWidthOffsetUniform, horizontalPassTexelHeightOffsetUniform;
6 | GLfloat verticalPassTexelWidthOffset, verticalPassTexelHeightOffset, horizontalPassTexelWidthOffset, horizontalPassTexelHeightOffset;
7 | CGFloat _verticalTexelSpacing, _horizontalTexelSpacing;
8 | }
9 |
10 | // This sets the spacing between texels (in pixels) when sampling for the first. By default, this is 1.0
11 | @property(readwrite, nonatomic) CGFloat verticalTexelSpacing, horizontalTexelSpacing;
12 |
13 | @end
14 |
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageUIElement.h:
--------------------------------------------------------------------------------
1 | #import "GPUImageOutput.h"
2 |
3 | @interface GPUImageUIElement : GPUImageOutput
4 |
5 | // Initialization and teardown
6 | - (id)initWithView:(UIView *)inputView;
7 | - (id)initWithLayer:(CALayer *)inputLayer;
8 |
9 | // Layer management
10 | - (CGSize)layerSizeInPixels;
11 | - (void)update;
12 | - (void)updateUsingCurrentTime;
13 | - (void)updateWithTimestamp:(CMTime)frameTime;
14 |
15 | @end
16 |
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageUnsharpMaskFilter.h:
--------------------------------------------------------------------------------
1 | #import "GPUImageFilterGroup.h"
2 |
3 | @class GPUImageGaussianBlurFilter;
4 |
5 | @interface GPUImageUnsharpMaskFilter : GPUImageFilterGroup
6 | {
7 | GPUImageGaussianBlurFilter *blurFilter;
8 | GPUImageFilter *unsharpMaskFilter;
9 | }
10 | // The blur radius of the underlying Gaussian blur. The default is 4.0.
11 | @property (readwrite, nonatomic) CGFloat blurRadiusInPixels;
12 |
13 | // The strength of the sharpening, from 0.0 on up, with a default of 1.0
14 | @property(readwrite, nonatomic) CGFloat intensity;
15 |
16 | @end
17 |
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/LFLiveKit/LFLiveKit/Vendor/GPUImage/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 |
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageWeakPixelInclusionFilter.h:
--------------------------------------------------------------------------------
1 | #import "GPUImage3x3TextureSamplingFilter.h"
2 |
3 | @interface GPUImageWeakPixelInclusionFilter : GPUImage3x3TextureSamplingFilter
4 |
5 | @end
6 |
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageWhiteBalanceFilter.h:
--------------------------------------------------------------------------------
1 | #import "GPUImageFilter.h"
2 | /**
3 | * Created by Alaric Cole
4 | * Allows adjustment of color temperature in terms of what an image was effectively shot in. This means higher Kelvin values will warm the image, while lower values will cool it.
5 |
6 | */
7 | @interface GPUImageWhiteBalanceFilter : GPUImageFilter
8 | {
9 | GLint temperatureUniform, tintUniform;
10 | }
11 | //choose color temperature, in degrees Kelvin
12 | @property(readwrite, nonatomic) CGFloat temperature;
13 |
14 | //adjust tint to compensate
15 | @property(readwrite, nonatomic) CGFloat tint;
16 |
17 | @end
18 |
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageXYDerivativeFilter.h:
--------------------------------------------------------------------------------
1 | #import "GPUImageSobelEdgeDetectionFilter.h"
2 |
3 | @interface GPUImageXYDerivativeFilter : GPUImageSobelEdgeDetectionFilter
4 |
5 | @end
6 |
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/LFLiveKit/LFLiveKit/Vendor/GPUImage/GPUImageZoomBlurFilter.h:
--------------------------------------------------------------------------------
1 | #import "GPUImageFilter.h"
2 |
3 | @interface GPUImageZoomBlurFilter : GPUImageFilter
4 |
5 | /** A multiplier for the blur size, ranging from 0.0 on up, with a default of 1.0
6 | */
7 | @property (readwrite, nonatomic) CGFloat blurSize;
8 |
9 | /** The normalized center of the blur. (0.5, 0.5) by default
10 | */
11 | @property (readwrite, nonatomic) CGPoint blurCenter;
12 |
13 | @end
14 |
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/LFLiveKit/LFLiveKit/Vendor/GPUImage/iOS/GPUImagePicture+TextureSubimage.h:
--------------------------------------------------------------------------------
1 | //
2 | // GPUImagePicture+TextureSubimage.h
3 | // GPUImage
4 | //
5 | // Created by Jack Wu on 2014-05-28.
6 | // Copyright (c) 2014 Brad Larson. All rights reserved.
7 | //
8 |
9 | #import "GPUImagePicture.h"
10 |
11 | @interface GPUImagePicture (TextureSubimage)
12 |
13 | - (void)replaceTextureWithSubimage:(UIImage*)subimage;
14 | - (void)replaceTextureWithSubCGImage:(CGImageRef)subimageSource;
15 |
16 | - (void)replaceTextureWithSubimage:(UIImage*)subimage inRect:(CGRect)subRect;
17 | - (void)replaceTextureWithSubCGImage:(CGImageRef)subimageSource inRect:(CGRect)subRect;
18 |
19 | @end
20 |
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/LFLiveKit/LFLiveKit/Vendor/pili-librtmp/error.c:
--------------------------------------------------------------------------------
1 | #include "error.h"
2 | #include
3 | #include
4 |
5 | void RTMPError_Alloc(RTMPError *error, size_t msg_size) {
6 | RTMPError_Free(error);
7 |
8 | error->code = 0;
9 | error->message = (char *)malloc(msg_size + 1);
10 | memset(error->message, 0, msg_size);
11 | }
12 |
13 | void RTMPError_Free(RTMPError *error) {
14 | if (error) {
15 | if (error->message) {
16 | free(error->message);
17 | error->message = NULL;
18 | }
19 | }
20 | }
21 |
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/LFLiveKit/LFLiveKit/coder/LFH264VideoEncoder.h:
--------------------------------------------------------------------------------
1 | //
2 | // LFH264VideoEncoder
3 | // LFLiveKit
4 | //
5 | // Created by feng on 7/5/16.
6 | // Copyright (c) 2014 zhanqi.tv. All rights reserved.
7 | //
8 | #import "LFVideoEncoding.h"
9 |
10 | @interface LFH264VideoEncoder : NSObject {
11 |
12 | }
13 |
14 | - (void)shutdown;
15 |
16 | @end
17 |
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/LFLiveKit/LFLiveKit/coder/LFHardwareAudioEncoder.h:
--------------------------------------------------------------------------------
1 | //
2 | // LFHardwareAudioEncoder.h
3 | // LFLiveKit
4 | //
5 | // Created by 倾慕 on 16/5/2.
6 | // Copyright © 2016年 倾慕. All rights reserved.
7 | //
8 |
9 | #import "LFAudioEncoding.h"
10 |
11 | @interface LFHardwareAudioEncoder : NSObject
12 |
13 | #pragma mark - Initializer
14 | ///=============================================================================
15 | /// @name Initializer
16 | ///=============================================================================
17 | - (nullable instancetype)init UNAVAILABLE_ATTRIBUTE;
18 | + (nullable instancetype)new UNAVAILABLE_ATTRIBUTE;
19 |
20 | @end
21 |
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/LFLiveKit/LFLiveKit/coder/LFHardwareVideoEncoder.h:
--------------------------------------------------------------------------------
1 | //
2 | // LFHardwareVideoEncoder.h
3 | // LFLiveKit
4 | //
5 | // Created by 倾慕 on 16/5/2.
6 | // Copyright © 2016年 倾慕. All rights reserved.
7 | //
8 |
9 | #import "LFVideoEncoding.h"
10 |
11 | @interface LFHardwareVideoEncoder : NSObject
12 |
13 | #pragma mark - Initializer
14 | ///=============================================================================
15 | /// @name Initializer
16 | ///=============================================================================
17 | - (nullable instancetype)init UNAVAILABLE_ATTRIBUTE;
18 | + (nullable instancetype)new UNAVAILABLE_ATTRIBUTE;
19 |
20 | @end
21 |
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/LFLiveKit/LFLiveKit/filter/LFGPUImageBeautyFilter.h:
--------------------------------------------------------------------------------
1 | #import "GPUImageFilter.h"
2 |
3 | @interface LFGPUImageBeautyFilter : GPUImageFilter {
4 | }
5 |
6 | @property (nonatomic, assign) CGFloat beautyLevel;
7 | @property (nonatomic, assign) CGFloat brightLevel;
8 | @property (nonatomic, assign) CGFloat toneLevel;
9 | @end
10 |
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/LFLiveKit/LFLiveKit/filter/LFGPUImageEmptyFilter.h:
--------------------------------------------------------------------------------
1 | #import "GPUImageFilter.h"
2 |
3 | @interface LFGPUImageEmptyFilter : GPUImageFilter
4 | {
5 | }
6 |
7 | @end
8 |
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/LFLiveKit/LFLiveKit/objects/LFAudioFrame.h:
--------------------------------------------------------------------------------
1 | //
2 | // LFAudioFrame.h
3 | // LFLiveKit
4 | //
5 | // Created by 倾慕 on 16/5/2.
6 | // Copyright © 2016年 倾慕. All rights reserved.
7 | //
8 |
9 | #import "LFFrame.h"
10 |
11 | @interface LFAudioFrame : LFFrame
12 |
13 | /// flv打包中aac的header
14 | @property (nonatomic, strong) NSData *audioInfo;
15 |
16 | @end
17 |
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/LFLiveKit/LFLiveKit/objects/LFAudioFrame.m:
--------------------------------------------------------------------------------
1 | //
2 | // LFAudioFrame.m
3 | // LFLiveKit
4 | //
5 | // Created by 倾慕 on 16/5/2.
6 | // Copyright © 2016年 倾慕. All rights reserved.
7 | //
8 |
9 | #import "LFAudioFrame.h"
10 |
11 | @implementation LFAudioFrame
12 |
13 | @end
14 |
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/LFLiveKit/LFLiveKit/objects/LFFrame.h:
--------------------------------------------------------------------------------
1 | //
2 | // LFFrame.h
3 | // LFLiveKit
4 | //
5 | // Created by 倾慕 on 16/5/2.
6 | // Copyright © 2016年 倾慕. All rights reserved.
7 | //
8 |
9 | #import
10 |
11 | @interface LFFrame : NSObject
12 |
13 | @property (nonatomic, assign) uint64_t timestamp;
14 | @property (nonatomic, strong) NSData *data;
15 | ///< flv或者rtmp包头
16 | @property (nonatomic, strong) NSData *header;
17 |
18 | @end
19 |
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/LFLiveKit/LFLiveKit/objects/LFFrame.m:
--------------------------------------------------------------------------------
1 | //
2 | // LFFrame.m
3 | // LFLiveKit
4 | //
5 | // Created by 倾慕 on 16/5/2.
6 | // Copyright © 2016年 倾慕. All rights reserved.
7 | //
8 |
9 | #import "LFFrame.h"
10 |
11 | @implementation LFFrame
12 |
13 | @end
14 |
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/LFLiveKit/LFLiveKit/objects/LFLiveDebug.m:
--------------------------------------------------------------------------------
1 | //
2 | // LFLiveDebug.m
3 | // LaiFeng
4 | //
5 | // Created by admin on 16/5/19.
6 | // Copyright © 2016年 live Interactive. All rights reserved.
7 | //
8 |
9 | #import "LFLiveDebug.h"
10 |
11 | @implementation LFLiveDebug
12 |
13 |
14 | @end
15 |
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/LFLiveKit/LFLiveKit/objects/LFLiveStreamInfo.m:
--------------------------------------------------------------------------------
1 | //
2 | // LFLiveStreamInfo.m
3 | // LFLiveKit
4 | //
5 | // Created by 倾慕 on 16/5/2.
6 | // Copyright © 2016年 倾慕. All rights reserved.
7 | //
8 |
9 | #import "LFLiveStreamInfo.h"
10 |
11 | @implementation LFLiveStreamInfo
12 |
13 | @end
14 |
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/LFLiveKit/LFLiveKit/objects/LFVideoFrame.h:
--------------------------------------------------------------------------------
1 | //
2 | // LFVideoFrame.h
3 | // LFLiveKit
4 | //
5 | // Created by 倾慕 on 16/5/2.
6 | // Copyright © 2016年 倾慕. All rights reserved.
7 | //
8 |
9 | #import "LFFrame.h"
10 |
11 | @interface LFVideoFrame : LFFrame
12 |
13 | @property (nonatomic, assign) BOOL isKeyFrame;
14 | @property (nonatomic, strong) NSData *sps;
15 | @property (nonatomic, strong) NSData *pps;
16 |
17 | @end
18 |
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/LFLiveKit/LFLiveKit/objects/LFVideoFrame.m:
--------------------------------------------------------------------------------
1 | //
2 | // LFVideoFrame.m
3 | // LFLiveKit
4 | //
5 | // Created by 倾慕 on 16/5/2.
6 | // Copyright © 2016年 倾慕. All rights reserved.
7 | //
8 |
9 | #import "LFVideoFrame.h"
10 |
11 | @implementation LFVideoFrame
12 |
13 | @end
14 |
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/LFLiveKit/LFLiveKit/publish/LFStreamRTMPSocket.h:
--------------------------------------------------------------------------------
1 | //
2 | // LFStreamRTMPSocket.h
3 | // LaiFeng
4 | //
5 | // Created by admin on 16/5/18.
6 | // Copyright © 2016年 live Interactive. All rights reserved.
7 | //
8 |
9 | #import "LFStreamSocket.h"
10 |
11 | @interface LFStreamRTMPSocket : NSObject
12 |
13 | #pragma mark - Initializer
14 | ///=============================================================================
15 | /// @name Initializer
16 | ///=============================================================================
17 | - (nullable instancetype)init UNAVAILABLE_ATTRIBUTE;
18 | + (nullable instancetype)new UNAVAILABLE_ATTRIBUTE;
19 |
20 | @end
21 |
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/LFLiveKit/LFLiveKit/publish/NSMutableArray+LFAdd.h:
--------------------------------------------------------------------------------
1 | //
2 | // NSMutableArray+LFAdd.h
3 | // YYKit
4 | //
5 | // Created by admin on 16/5/20.
6 | // Copyright © 2016年 倾慕. All rights reserved.
7 | //
8 |
9 | #import
10 |
11 | @interface NSMutableArray (YYAdd)
12 |
13 | /**
14 | Removes and returns the object with the lowest-valued index in the array.
15 | If the array is empty, it just returns nil.
16 |
17 | @return The first object, or nil.
18 | */
19 | - (nullable id)lfPopFirstObject;
20 |
21 | @end
22 |
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/LFLiveKit/LFLiveKit/publish/NSMutableArray+LFAdd.m:
--------------------------------------------------------------------------------
1 | //
2 | // NSMutableArray+LFAdd.m
3 | // YYKit
4 | //
5 | // Created by admin on 16/5/20.
6 | // Copyright © 2016年 倾慕. All rights reserved.
7 | //
8 |
9 | #import "NSMutableArray+LFAdd.h"
10 |
11 | @implementation NSMutableArray (YYAdd)
12 |
13 | - (void)lfRemoveFirstObject {
14 | if (self.count) {
15 | [self removeObjectAtIndex:0];
16 | }
17 | }
18 |
19 | - (id)lfPopFirstObject {
20 | id obj = nil;
21 | if (self.count) {
22 | obj = self.firstObject;
23 | [self lfRemoveFirstObject];
24 | }
25 | return obj;
26 | }
27 |
28 | @end
29 |
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Manifest.lock:
--------------------------------------------------------------------------------
1 | PODS:
2 | - LFLiveKit (2.1)
3 |
4 | DEPENDENCIES:
5 | - LFLiveKit
6 |
7 | SPEC CHECKSUMS:
8 | LFLiveKit: f9a0cb5941e4ab892a7d9522348ae370b19e67e7
9 |
10 | COCOAPODS: 0.39.0
11 |
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Pods.xcodeproj/project.xcworkspace/contents.xcworkspacedata:
--------------------------------------------------------------------------------
1 |
2 |
4 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Pods.xcodeproj/project.xcworkspace/xcuserdata/loyinglin.xcuserdatad/WorkspaceSettings.xcsettings:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | BuildLocationStyle
6 | UseTargetSettings
7 |
8 |
9 |
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Target Support Files/LFLiveKit/LFLiveKit-dummy.m:
--------------------------------------------------------------------------------
1 | #import
2 | @interface PodsDummy_LFLiveKit : NSObject
3 | @end
4 | @implementation PodsDummy_LFLiveKit
5 | @end
6 |
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Target Support Files/LFLiveKit/LFLiveKit-prefix.pch:
--------------------------------------------------------------------------------
1 | #ifdef __OBJC__
2 | #import
3 | #endif
4 |
5 |
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Target Support Files/LFLiveKit/LFLiveKit.xcconfig:
--------------------------------------------------------------------------------
1 | GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1
2 | HEADER_SEARCH_PATHS = "${PODS_ROOT}/Headers/Private" "${PODS_ROOT}/Headers/Private/LFLiveKit" "${PODS_ROOT}/Headers/Public" "${PODS_ROOT}/Headers/Public/LFLiveKit"
3 | OTHER_LDFLAGS = -l"c++" -l"z" -framework "AVFoundation" -framework "AudioToolbox" -framework "Foundation" -framework "UIKit" -framework "VideoToolbox"
4 | PODS_ROOT = ${SRCROOT}
5 | SKIP_INSTALL = YES
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Target Support Files/Pods/Pods-dummy.m:
--------------------------------------------------------------------------------
1 | #import
2 | @interface PodsDummy_Pods : NSObject
3 | @end
4 | @implementation PodsDummy_Pods
5 | @end
6 |
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Target Support Files/Pods/Pods.debug.xcconfig:
--------------------------------------------------------------------------------
1 | GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1
2 | HEADER_SEARCH_PATHS = $(inherited) "${PODS_ROOT}/Headers/Public" "${PODS_ROOT}/Headers/Public/LFLiveKit"
3 | OTHER_CFLAGS = $(inherited) -isystem "${PODS_ROOT}/Headers/Public" -isystem "${PODS_ROOT}/Headers/Public/LFLiveKit"
4 | OTHER_LDFLAGS = $(inherited) -ObjC -l"LFLiveKit" -l"c++" -l"z" -framework "AVFoundation" -framework "AudioToolbox" -framework "Foundation" -framework "UIKit" -framework "VideoToolbox"
5 | PODS_ROOT = ${SRCROOT}/Pods
--------------------------------------------------------------------------------
/Tutorial05-LiveSample/LearnLIVE/Pods/Target Support Files/Pods/Pods.release.xcconfig:
--------------------------------------------------------------------------------
1 | GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1
2 | HEADER_SEARCH_PATHS = $(inherited) "${PODS_ROOT}/Headers/Public" "${PODS_ROOT}/Headers/Public/LFLiveKit"
3 | OTHER_CFLAGS = $(inherited) -isystem "${PODS_ROOT}/Headers/Public" -isystem "${PODS_ROOT}/Headers/Public/LFLiveKit"
4 | OTHER_LDFLAGS = $(inherited) -ObjC -l"LFLiveKit" -l"c++" -l"z" -framework "AVFoundation" -framework "AudioToolbox" -framework "Foundation" -framework "UIKit" -framework "VideoToolbox"
5 | PODS_ROOT = ${SRCROOT}/Pods
--------------------------------------------------------------------------------
/Tutorial06-Stream/client/LearnVideoToolBox.xcodeproj/project.xcworkspace/contents.xcworkspacedata:
--------------------------------------------------------------------------------
1 |
2 |
4 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/Tutorial06-Stream/client/LearnVideoToolBox.xcodeproj/project.xcworkspace/xcuserdata/loyinglin.xcuserdatad/UserInterfaceState.xcuserstate:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/loyinglin/LearnVideoToolBox/5c294d7c9ff50af89060d01399ea2d4cd38c31d8/Tutorial06-Stream/client/LearnVideoToolBox.xcodeproj/project.xcworkspace/xcuserdata/loyinglin.xcuserdatad/UserInterfaceState.xcuserstate
--------------------------------------------------------------------------------
/Tutorial06-Stream/client/LearnVideoToolBox.xcodeproj/xcuserdata/loyinglin.xcuserdatad/xcdebugger/Breakpoints_v2.xcbkptlist:
--------------------------------------------------------------------------------
1 |
2 |
5 |
6 |
--------------------------------------------------------------------------------
/Tutorial06-Stream/client/LearnVideoToolBox.xcodeproj/xcuserdata/loyinglin.xcuserdatad/xcschemes/xcschememanagement.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | SchemeUserState
6 |
7 | LearnVideoToolBox.xcscheme
8 |
9 | orderHint
10 | 0
11 |
12 |
13 | SuppressBuildableAutocreation
14 |
15 | FD315B7E1D77F89E000CC96D
16 |
17 | primary
18 |
19 |
20 | FD315B971D77F89E000CC96D
21 |
22 | primary
23 |
24 |
25 |
26 |
27 |
28 |
--------------------------------------------------------------------------------
/Tutorial06-Stream/client/LearnVideoToolBox/AppDelegate.h:
--------------------------------------------------------------------------------
1 | //
2 | // AppDelegate.h
3 | // LearnVideoToolBox
4 | //
5 | // Created by loyinglin on 16/9/1.
6 | // Copyright © 2016年 loyinglin. 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 |
--------------------------------------------------------------------------------
/Tutorial06-Stream/client/LearnVideoToolBox/ViewController.h:
--------------------------------------------------------------------------------
1 | //
2 | // ViewController.h
3 | // LearnVideoToolBox
4 | //
5 | // Created by loyinglin on 16/9/1.
6 | // Copyright © 2016年 loyinglin. All rights reserved.
7 | //
8 |
9 | #import
10 |
11 | @interface ViewController : UIViewController
12 |
13 |
14 | @end
15 |
16 |
--------------------------------------------------------------------------------
/Tutorial06-Stream/client/LearnVideoToolBox/main.m:
--------------------------------------------------------------------------------
1 | //
2 | // main.m
3 | // LearnVideoToolBox
4 | //
5 | // Created by loyinglin on 16/9/1.
6 | // Copyright © 2016年 loyinglin. All rights reserved.
7 | //
8 |
9 | #import
10 | #import "AppDelegate.h"
11 |
12 | int main(int argc, char * argv[]) {
13 | @autoreleasepool {
14 | return UIApplicationMain(argc, argv, nil, NSStringFromClass([AppDelegate class]));
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/Tutorial06-Stream/server-app/AudioStreamServer/AudioStreamServer.xcodeproj/project.xcworkspace/contents.xcworkspacedata:
--------------------------------------------------------------------------------
1 |
2 |
4 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/Tutorial06-Stream/server-app/AudioStreamServer/AudioStreamServer.xcodeproj/project.xcworkspace/xcuserdata/loyinglin.xcuserdatad/UserInterfaceState.xcuserstate:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/loyinglin/LearnVideoToolBox/5c294d7c9ff50af89060d01399ea2d4cd38c31d8/Tutorial06-Stream/server-app/AudioStreamServer/AudioStreamServer.xcodeproj/project.xcworkspace/xcuserdata/loyinglin.xcuserdatad/UserInterfaceState.xcuserstate
--------------------------------------------------------------------------------
/Tutorial06-Stream/server-app/AudioStreamServer/AudioStreamServer.xcodeproj/xcuserdata/loyinglin.xcuserdatad/xcdebugger/Breakpoints_v2.xcbkptlist:
--------------------------------------------------------------------------------
1 |
2 |
5 |
6 |
--------------------------------------------------------------------------------
/Tutorial06-Stream/server-app/AudioStreamServer/AudioStreamServer.xcodeproj/xcuserdata/loyinglin.xcuserdatad/xcschemes/xcschememanagement.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | SchemeUserState
6 |
7 | AudioStreamServer.xcscheme
8 |
9 | orderHint
10 | 0
11 |
12 |
13 | SuppressBuildableAutocreation
14 |
15 | FDDA853C1E8FCCFA009E7656
16 |
17 | primary
18 |
19 |
20 |
21 |
22 |
23 |
--------------------------------------------------------------------------------
/Tutorial06-Stream/server-app/AudioStreamServer/AudioStreamServer/AppDelegate.h:
--------------------------------------------------------------------------------
1 | //
2 | // AppDelegate.h
3 | // AudioStreamServer
4 | //
5 | // Created by loyinglin on 2017/4/1.
6 | // Copyright © 2017年 loying. All rights reserved.
7 | //
8 |
9 | #import
10 |
11 | @interface AppDelegate : NSObject
12 |
13 |
14 | @end
15 |
16 |
--------------------------------------------------------------------------------
/Tutorial06-Stream/server-app/AudioStreamServer/AudioStreamServer/AppDelegate.m:
--------------------------------------------------------------------------------
1 | //
2 | // AppDelegate.m
3 | // AudioStreamServer
4 | //
5 | // Created by loyinglin on 2017/4/1.
6 | // Copyright © 2017年 loying. All rights reserved.
7 | //
8 |
9 | #import "AppDelegate.h"
10 |
11 | @interface AppDelegate ()
12 |
13 | @end
14 |
15 | @implementation AppDelegate
16 |
17 | - (void)applicationDidFinishLaunching:(NSNotification *)aNotification {
18 | // Insert code here to initialize your application
19 | }
20 |
21 |
22 | - (void)applicationWillTerminate:(NSNotification *)aNotification {
23 | // Insert code here to tear down your application
24 | }
25 |
26 |
27 | @end
28 |
--------------------------------------------------------------------------------
/Tutorial06-Stream/server-app/AudioStreamServer/AudioStreamServer/ViewController.h:
--------------------------------------------------------------------------------
1 | //
2 | // ViewController.h
3 | // AudioStreamServer
4 | //
5 | // Created by loyinglin on 2017/4/1.
6 | // Copyright © 2017年 loying. All rights reserved.
7 | //
8 |
9 | #import
10 |
11 | @interface ViewController : NSViewController
12 |
13 |
14 | @end
15 |
16 |
--------------------------------------------------------------------------------
/Tutorial06-Stream/server-app/AudioStreamServer/AudioStreamServer/main.m:
--------------------------------------------------------------------------------
1 | //
2 | // main.m
3 | // AudioStreamServer
4 | //
5 | // Created by loyinglin on 2017/4/1.
6 | // Copyright © 2017年 loying. All rights reserved.
7 | //
8 |
9 | #import
10 |
11 | int main(int argc, const char * argv[]) {
12 | return NSApplicationMain(argc, argv);
13 | }
14 |
--------------------------------------------------------------------------------
/Tutorial06-Stream/server-binary/AudioServer/AudioServer.xcodeproj/project.xcworkspace/contents.xcworkspacedata:
--------------------------------------------------------------------------------
1 |
2 |
4 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/Tutorial06-Stream/server-binary/AudioServer/AudioServer.xcodeproj/xcuserdata/loyinglin.xcuserdatad/xcdebugger/Breakpoints_v2.xcbkptlist:
--------------------------------------------------------------------------------
1 |
2 |
5 |
6 |
--------------------------------------------------------------------------------
/Tutorial06-Stream/server-binary/AudioServer/AudioServer.xcodeproj/xcuserdata/loyinglin.xcuserdatad/xcschemes/xcschememanagement.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | SchemeUserState
6 |
7 | AudioServer.xcscheme
8 |
9 | orderHint
10 | 0
11 |
12 |
13 | SuppressBuildableAutocreation
14 |
15 | FDDA85281E8FCBD5009E7656
16 |
17 | primary
18 |
19 |
20 |
21 |
22 |
23 |
--------------------------------------------------------------------------------
/Tutorial06-Stream/server-binary/AudioServer/AudioServer/chenli.mp3:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/loyinglin/LearnVideoToolBox/5c294d7c9ff50af89060d01399ea2d4cd38c31d8/Tutorial06-Stream/server-binary/AudioServer/AudioServer/chenli.mp3
--------------------------------------------------------------------------------
/Tutorial07-AudioUnitPlayPCM/LeanAudioUnit.xcodeproj/project.xcworkspace/contents.xcworkspacedata:
--------------------------------------------------------------------------------
1 |
2 |
4 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/Tutorial07-AudioUnitPlayPCM/LeanAudioUnit.xcodeproj/project.xcworkspace/xcuserdata/loyinglin.xcuserdatad/UserInterfaceState.xcuserstate:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/loyinglin/LearnVideoToolBox/5c294d7c9ff50af89060d01399ea2d4cd38c31d8/Tutorial07-AudioUnitPlayPCM/LeanAudioUnit.xcodeproj/project.xcworkspace/xcuserdata/loyinglin.xcuserdatad/UserInterfaceState.xcuserstate
--------------------------------------------------------------------------------
/Tutorial07-AudioUnitPlayPCM/LeanAudioUnit.xcodeproj/xcuserdata/loyinglin.xcuserdatad/xcdebugger/Breakpoints_v2.xcbkptlist:
--------------------------------------------------------------------------------
1 |
2 |
5 |
6 |
--------------------------------------------------------------------------------
/Tutorial07-AudioUnitPlayPCM/LeanAudioUnit.xcodeproj/xcuserdata/loyinglin.xcuserdatad/xcschemes/xcschememanagement.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | SchemeUserState
6 |
7 | LeanAudioUnit.xcscheme
8 |
9 | orderHint
10 | 0
11 |
12 |
13 | SuppressBuildableAutocreation
14 |
15 | FD30540A1F69334B00947271
16 |
17 | primary
18 |
19 |
20 |
21 |
22 |
23 |
--------------------------------------------------------------------------------
/Tutorial07-AudioUnitPlayPCM/LeanAudioUnit/AppDelegate.h:
--------------------------------------------------------------------------------
1 | //
2 | // AppDelegate.h
3 | // LeanAudioUnit
4 | //
5 | // Created by loyinglin on 2017/9/13.
6 | // Copyright © 2017年 loyinglin. 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 |
--------------------------------------------------------------------------------
/Tutorial07-AudioUnitPlayPCM/LeanAudioUnit/LYPlayer.h:
--------------------------------------------------------------------------------
1 | //
2 | // LYPlayer.h
3 | // LeanAudioUnit
4 | //
5 | // Created by loyinglin on 2017/9/13.
6 | // Copyright © 2017年 loyinglin. All rights reserved.
7 | //
8 |
9 | #import
10 |
11 | @class LYPlayer;
12 | @protocol LYPlayerDelegate
13 |
14 | - (void)onPlayToEnd:(LYPlayer *)player;
15 |
16 | @end
17 |
18 |
19 | @interface LYPlayer : NSObject
20 |
21 | @property (nonatomic, weak) id delegate;
22 |
23 | - (void)play;
24 |
25 | - (double)getCurrentTime;
26 |
27 | @end
28 |
--------------------------------------------------------------------------------
/Tutorial07-AudioUnitPlayPCM/LeanAudioUnit/ViewController.h:
--------------------------------------------------------------------------------
1 |
2 | // LeanAudioUnit
3 | //
4 | // Created by loyinglin on 2017/9/13.
5 | // Copyright © 2017年 loyinglin. All rights reserved.
6 | //
7 |
8 | #import
9 |
10 | @interface ViewController : UIViewController
11 |
12 |
13 | @end
14 |
15 |
--------------------------------------------------------------------------------
/Tutorial07-AudioUnitPlayPCM/LeanAudioUnit/main.m:
--------------------------------------------------------------------------------
1 | //
2 | // main.m
3 | // LeanAudioUnit
4 | //
5 | // Created by loyinglin on 2017/9/13.
6 | // Copyright © 2017年 loyinglin. All rights reserved.
7 | //
8 |
9 | #import
10 | #import "AppDelegate.h"
11 |
12 | int main(int argc, char * argv[]) {
13 | @autoreleasepool {
14 | return UIApplicationMain(argc, argv, nil, NSStringFromClass([AppDelegate class]));
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/Tutorial08-AudioUnitRecordAndPlay/LearnAudioUnit.xcodeproj/project.xcworkspace/contents.xcworkspacedata:
--------------------------------------------------------------------------------
1 |
2 |
4 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/Tutorial08-AudioUnitRecordAndPlay/LearnAudioUnit.xcodeproj/project.xcworkspace/xcuserdata/loyinglin.xcuserdatad/UserInterfaceState.xcuserstate:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/loyinglin/LearnVideoToolBox/5c294d7c9ff50af89060d01399ea2d4cd38c31d8/Tutorial08-AudioUnitRecordAndPlay/LearnAudioUnit.xcodeproj/project.xcworkspace/xcuserdata/loyinglin.xcuserdatad/UserInterfaceState.xcuserstate
--------------------------------------------------------------------------------
/Tutorial08-AudioUnitRecordAndPlay/LearnAudioUnit.xcodeproj/xcuserdata/loyinglin.xcuserdatad/xcschemes/xcschememanagement.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | SchemeUserState
6 |
7 | LearnAudioUnit.xcscheme
8 |
9 | orderHint
10 | 0
11 |
12 |
13 | SuppressBuildableAutocreation
14 |
15 | FDDA14391F5CF127009FFBF5
16 |
17 | primary
18 |
19 |
20 |
21 |
22 |
23 |
--------------------------------------------------------------------------------
/Tutorial08-AudioUnitRecordAndPlay/LearnAudioUnit/AppDelegate.h:
--------------------------------------------------------------------------------
1 | //
2 | // AppDelegate.h
3 | // LearnAudioUnit
4 | //
5 | // Created by loyinglin on 2017/9/4.
6 | // Copyright © 2017年 loyinglin. 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 |
--------------------------------------------------------------------------------
/Tutorial08-AudioUnitRecordAndPlay/LearnAudioUnit/ViewController.h:
--------------------------------------------------------------------------------
1 | //
2 | // ViewController.h
3 | // LearnAudioUnit
4 | //
5 | // Created by loyinglin on 2017/9/4.
6 | // Copyright © 2017年 loyinglin. All rights reserved.
7 | //
8 |
9 | #import
10 |
11 | @interface ViewController : UIViewController
12 |
13 |
14 | @end
15 |
16 |
--------------------------------------------------------------------------------
/Tutorial08-AudioUnitRecordAndPlay/LearnAudioUnit/main.m:
--------------------------------------------------------------------------------
1 | //
2 | // main.m
3 | // LearnAudioUnit
4 | //
5 | // Created by loyinglin on 2017/9/4.
6 | // Copyright © 2017年 loyinglin. All rights reserved.
7 | //
8 |
9 | #import
10 | #import "AppDelegate.h"
11 |
12 | int main(int argc, char * argv[]) {
13 | @autoreleasepool {
14 | return UIApplicationMain(argc, argv, nil, NSStringFromClass([AppDelegate class]));
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/Tutorial09-AudioUnitAndConverter/LeanAudioUnit/LeanAudioUnit.xcodeproj/project.xcworkspace/contents.xcworkspacedata:
--------------------------------------------------------------------------------
1 |
2 |
4 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/Tutorial09-AudioUnitAndConverter/LeanAudioUnit/LeanAudioUnit.xcodeproj/project.xcworkspace/xcuserdata/loyinglin.xcuserdatad/UserInterfaceState.xcuserstate:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/loyinglin/LearnVideoToolBox/5c294d7c9ff50af89060d01399ea2d4cd38c31d8/Tutorial09-AudioUnitAndConverter/LeanAudioUnit/LeanAudioUnit.xcodeproj/project.xcworkspace/xcuserdata/loyinglin.xcuserdatad/UserInterfaceState.xcuserstate
--------------------------------------------------------------------------------
/Tutorial09-AudioUnitAndConverter/LeanAudioUnit/LeanAudioUnit.xcodeproj/xcuserdata/loyinglin.xcuserdatad/xcdebugger/Breakpoints_v2.xcbkptlist:
--------------------------------------------------------------------------------
1 |
2 |
5 |
6 |
--------------------------------------------------------------------------------
/Tutorial09-AudioUnitAndConverter/LeanAudioUnit/LeanAudioUnit.xcodeproj/xcuserdata/loyinglin.xcuserdatad/xcschemes/xcschememanagement.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | SchemeUserState
6 |
7 | LeanAudioUnit.xcscheme
8 |
9 | orderHint
10 | 0
11 |
12 |
13 | SuppressBuildableAutocreation
14 |
15 | FDF118181F7A4E19007CBA46
16 |
17 | primary
18 |
19 |
20 |
21 |
22 |
23 |
--------------------------------------------------------------------------------
/Tutorial09-AudioUnitAndConverter/LeanAudioUnit/LeanAudioUnit/AppDelegate.h:
--------------------------------------------------------------------------------
1 | //
2 | // AppDelegate.h
3 | // LeanAudioUnit
4 | //
5 | // Created by loyinglin on 2017/9/26.
6 | // Copyright © 2017年 loyinglin. 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 |
--------------------------------------------------------------------------------
/Tutorial09-AudioUnitAndConverter/LeanAudioUnit/LeanAudioUnit/LYPlayer.h:
--------------------------------------------------------------------------------
1 |
2 | // LeanAudioUnit
3 | //
4 | // Created by loyinglin on 2017/9/26.
5 | // Copyright © 2017年 loyinglin. All rights reserved.
6 | //
7 |
8 | #import
9 |
10 | @class LYPlayer;
11 | @protocol LYPlayerDelegate
12 |
13 | - (void)onPlayToEnd:(LYPlayer *)player;
14 |
15 | @end
16 |
17 |
18 | @interface LYPlayer : NSObject
19 |
20 | @property (nonatomic, weak) id delegate;
21 |
22 | - (void)play;
23 |
24 | - (double)getCurrentTime;
25 |
26 | @end
27 |
--------------------------------------------------------------------------------
/Tutorial09-AudioUnitAndConverter/LeanAudioUnit/LeanAudioUnit/ViewController.h:
--------------------------------------------------------------------------------
1 |
2 | // LeanAudioUnit
3 | //
4 | // Created by loyinglin on 2017/9/26.
5 | // Copyright © 2017年 loyinglin. All rights reserved.
6 | //
7 | #import
8 |
9 | @interface ViewController : UIViewController
10 |
11 |
12 | @end
13 |
14 |
--------------------------------------------------------------------------------
/Tutorial09-AudioUnitAndConverter/LeanAudioUnit/LeanAudioUnit/main.m:
--------------------------------------------------------------------------------
1 | //
2 | // main.m
3 | // LeanAudioUnit
4 | //
5 | // Created by loyinglin on 2017/9/26.
6 | // Copyright © 2017年 loyinglin. All rights reserved.
7 | //
8 |
9 | #import
10 | #import "AppDelegate.h"
11 |
12 | int main(int argc, char * argv[]) {
13 | @autoreleasepool {
14 | return UIApplicationMain(argc, argv, nil, NSStringFromClass([AppDelegate class]));
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/Tutorial10-AudioUnitAndExConverter/LeanAudioUnit/LeanAudioUnit.xcodeproj/project.xcworkspace/contents.xcworkspacedata:
--------------------------------------------------------------------------------
1 |
2 |
4 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/Tutorial10-AudioUnitAndExConverter/LeanAudioUnit/LeanAudioUnit.xcodeproj/project.xcworkspace/xcuserdata/loyinglin.xcuserdatad/UserInterfaceState.xcuserstate:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/loyinglin/LearnVideoToolBox/5c294d7c9ff50af89060d01399ea2d4cd38c31d8/Tutorial10-AudioUnitAndExConverter/LeanAudioUnit/LeanAudioUnit.xcodeproj/project.xcworkspace/xcuserdata/loyinglin.xcuserdatad/UserInterfaceState.xcuserstate
--------------------------------------------------------------------------------
/Tutorial10-AudioUnitAndExConverter/LeanAudioUnit/LeanAudioUnit.xcodeproj/xcuserdata/loyinglin.xcuserdatad/xcdebugger/Breakpoints_v2.xcbkptlist:
--------------------------------------------------------------------------------
1 |
2 |
5 |
6 |
--------------------------------------------------------------------------------
/Tutorial10-AudioUnitAndExConverter/LeanAudioUnit/LeanAudioUnit.xcodeproj/xcuserdata/loyinglin.xcuserdatad/xcschemes/xcschememanagement.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | SchemeUserState
6 |
7 | LeanAudioUnit.xcscheme
8 |
9 | orderHint
10 | 0
11 |
12 |
13 | SuppressBuildableAutocreation
14 |
15 | FDF118181F7A4E19007CBA46
16 |
17 | primary
18 |
19 |
20 |
21 |
22 |
23 |
--------------------------------------------------------------------------------
/Tutorial10-AudioUnitAndExConverter/LeanAudioUnit/LeanAudioUnit/AppDelegate.h:
--------------------------------------------------------------------------------
1 | //
2 | // AppDelegate.h
3 | // LeanAudioUnit
4 | //
5 | // Created by loyinglin on 2017/10/26.
6 | // Copyright © 2017年 loyinglin. 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 |
--------------------------------------------------------------------------------
/Tutorial10-AudioUnitAndExConverter/LeanAudioUnit/LeanAudioUnit/LYPlayer.h:
--------------------------------------------------------------------------------
1 |
2 | // LeanAudioUnit
3 | //
4 | // Created by loyinglin on 2017/10/26.
5 | // Copyright © 2017年 loyinglin. All rights reserved.
6 | //
7 |
8 | #import
9 |
10 | @class LYPlayer;
11 | @protocol LYPlayerDelegate
12 |
13 | - (void)onPlayToEnd:(LYPlayer *)player;
14 |
15 | @end
16 |
17 |
18 | @interface LYPlayer : NSObject
19 |
20 | @property (nonatomic, weak) id delegate;
21 |
22 | - (void)play;
23 |
24 | - (double)getCurrentTime;
25 |
26 | @end
27 |
--------------------------------------------------------------------------------
/Tutorial10-AudioUnitAndExConverter/LeanAudioUnit/LeanAudioUnit/ViewController.h:
--------------------------------------------------------------------------------
1 |
2 | // LeanAudioUnit
3 | //
4 | // Created by loyinglin on 2017/10/26.
5 | // Copyright © 2017年 loyinglin. All rights reserved.
6 | //
7 | #import
8 |
9 | @interface ViewController : UIViewController
10 |
11 |
12 | @end
13 |
14 |
--------------------------------------------------------------------------------
/Tutorial10-AudioUnitAndExConverter/LeanAudioUnit/LeanAudioUnit/main.m:
--------------------------------------------------------------------------------
1 | //
2 | // main.m
3 | // LeanAudioUnit
4 | //
5 | // Created by loyinglin on 2017/10/26.
6 | // Copyright © 2017年 loyinglin. All rights reserved.
7 | //
8 |
9 | #import
10 | #import "AppDelegate.h"
11 |
12 | int main(int argc, char * argv[]) {
13 | @autoreleasepool {
14 | return UIApplicationMain(argc, argv, nil, NSStringFromClass([AppDelegate class]));
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/Tutorial11-AUGraph/LearnAudioUnit.xcodeproj/project.xcworkspace/contents.xcworkspacedata:
--------------------------------------------------------------------------------
1 |
2 |
4 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/Tutorial11-AUGraph/LearnAudioUnit.xcodeproj/project.xcworkspace/xcuserdata/loyinglin.xcuserdatad/UserInterfaceState.xcuserstate:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/loyinglin/LearnVideoToolBox/5c294d7c9ff50af89060d01399ea2d4cd38c31d8/Tutorial11-AUGraph/LearnAudioUnit.xcodeproj/project.xcworkspace/xcuserdata/loyinglin.xcuserdatad/UserInterfaceState.xcuserstate
--------------------------------------------------------------------------------
/Tutorial11-AUGraph/LearnAudioUnit.xcodeproj/xcuserdata/loyinglin.xcuserdatad/xcschemes/xcschememanagement.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | SchemeUserState
6 |
7 | LearnAudioUnit.xcscheme
8 |
9 | orderHint
10 | 0
11 |
12 |
13 | SuppressBuildableAutocreation
14 |
15 | FDDA14391F5CF127009FFBF5
16 |
17 | primary
18 |
19 |
20 |
21 |
22 |
23 |
--------------------------------------------------------------------------------
/Tutorial11-AUGraph/LearnAudioUnit/AppDelegate.h:
--------------------------------------------------------------------------------
1 | //
2 | // AppDelegate.h
3 | // LearnAudioUnit
4 | //
5 | // Created by loyinglin on 2017/9/4.
6 | // Copyright © 2017年 loyinglin. 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 |
--------------------------------------------------------------------------------
/Tutorial11-AUGraph/LearnAudioUnit/Assets.xcassets/AppIcon.appiconset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "idiom" : "iphone",
5 | "size" : "29x29",
6 | "scale" : "2x"
7 | },
8 | {
9 | "idiom" : "iphone",
10 | "size" : "29x29",
11 | "scale" : "3x"
12 | },
13 | {
14 | "idiom" : "iphone",
15 | "size" : "40x40",
16 | "scale" : "2x"
17 | },
18 | {
19 | "idiom" : "iphone",
20 | "size" : "40x40",
21 | "scale" : "3x"
22 | },
23 | {
24 | "idiom" : "iphone",
25 | "size" : "60x60",
26 | "scale" : "2x"
27 | },
28 | {
29 | "idiom" : "iphone",
30 | "size" : "60x60",
31 | "scale" : "3x"
32 | }
33 | ],
34 | "info" : {
35 | "version" : 1,
36 | "author" : "xcode"
37 | }
38 | }
--------------------------------------------------------------------------------
/Tutorial11-AUGraph/LearnAudioUnit/ViewController.h:
--------------------------------------------------------------------------------
1 | //
2 | // ViewController.h
3 | // LearnAudioUnit
4 | //
5 | // Created by loyinglin on 2017/9/4.
6 | // Copyright © 2017年 loyinglin. All rights reserved.
7 | //
8 |
9 | #import
10 |
11 | @interface ViewController : UIViewController
12 |
13 |
14 | @end
15 |
16 |
--------------------------------------------------------------------------------
/Tutorial11-AUGraph/LearnAudioUnit/main.m:
--------------------------------------------------------------------------------
1 | //
2 | // main.m
3 | // LearnAudioUnit
4 | //
5 | // Created by loyinglin on 2017/9/4.
6 | // Copyright © 2017年 loyinglin. All rights reserved.
7 | //
8 |
9 | #import
10 | #import "AppDelegate.h"
11 |
12 | int main(int argc, char * argv[]) {
13 | @autoreleasepool {
14 | return UIApplicationMain(argc, argv, nil, NSStringFromClass([AppDelegate class]));
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/Tutorial12-AudioUnitWithCMSampleBuffer/LearnAudioUnit/LearnAudioUnit.xcodeproj/project.xcworkspace/contents.xcworkspacedata:
--------------------------------------------------------------------------------
1 |
2 |
4 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/Tutorial12-AudioUnitWithCMSampleBuffer/LearnAudioUnit/LearnAudioUnit.xcodeproj/xcuserdata/loyinglin.xcuserdatad/xcdebugger/Breakpoints_v2.xcbkptlist:
--------------------------------------------------------------------------------
1 |
2 |
5 |
6 |
--------------------------------------------------------------------------------
/Tutorial12-AudioUnitWithCMSampleBuffer/LearnAudioUnit/LearnAudioUnit.xcodeproj/xcuserdata/loyinglin.xcuserdatad/xcschemes/xcschememanagement.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | SchemeUserState
6 |
7 | LearnAudioUnit.xcscheme
8 |
9 | orderHint
10 | 0
11 |
12 |
13 |
14 |
15 |
--------------------------------------------------------------------------------
/Tutorial12-AudioUnitWithCMSampleBuffer/LearnAudioUnit/LearnAudioUnit/AppDelegate.h:
--------------------------------------------------------------------------------
1 | //
2 | // AppDelegate.h
3 | // LearnAudioUnit
4 | //
5 | // Created by loyinglin on 2017/12/6.
6 | // Copyright © 2017年 loyinglin. 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 |
--------------------------------------------------------------------------------
/Tutorial12-AudioUnitWithCMSampleBuffer/LearnAudioUnit/LearnAudioUnit/GL/LYOpenGLView.h:
--------------------------------------------------------------------------------
1 | //
2 | // ViewController.m
3 | // LearnOpenGLESWithGPUImage
4 | //
5 | // Created by loyinglin on 16/5/10.
6 | // Copyright © 2016年 loyinglin. All rights reserved.
7 | //
8 |
9 | #import
10 | #import
11 | #import
12 |
13 | @interface LYOpenGLView : UIView
14 |
15 |
16 | @property (nonatomic , assign) BOOL isFullYUVRange;
17 |
18 | - (void)setupGL;
19 | - (void)displayPixelBuffer:(CVPixelBufferRef)pixelBuffer;
20 |
21 | @end
22 |
--------------------------------------------------------------------------------
/Tutorial12-AudioUnitWithCMSampleBuffer/LearnAudioUnit/LearnAudioUnit/GL/Shader.vsh:
--------------------------------------------------------------------------------
1 | //
2 | // ViewController.m
3 | // LearnOpenGLESWithGPUImage
4 | //
5 | // Created by loyinglin on 16/5/10.
6 | // Copyright © 2016年 loyinglin. All rights reserved.
7 | //
8 |
9 | attribute vec4 position;
10 | attribute vec2 texCoord;
11 |
12 | varying vec2 texCoordVarying;
13 |
14 | void main()
15 | {
16 | gl_Position = position;
17 | texCoordVarying = texCoord;
18 | }
19 |
20 |
--------------------------------------------------------------------------------
/Tutorial12-AudioUnitWithCMSampleBuffer/LearnAudioUnit/LearnAudioUnit/LYPlayer.h:
--------------------------------------------------------------------------------
1 | //
2 | // LYPlayer.h
3 | // LeanAudioUnit
4 | //
5 | // Created by loyinglin on 2017/12/6.
6 | // Copyright © 2017年 loyinglin. All rights reserved.
7 | //
8 |
9 | #import
10 | #import
11 | #import
12 |
13 | @class LYPlayer;
14 | @protocol LYPlayerDelegate
15 |
16 | - (AudioBufferList *)onRequestAudioData;
17 | - (void)onPlayToEnd:(LYPlayer *)player;
18 |
19 | @end
20 |
21 |
22 | @interface LYPlayer : NSObject
23 |
24 | @property (nonatomic, weak) id delegate;
25 |
26 | - (void)prepareForPlayWithOutputASBD:(AudioStreamBasicDescription)outputFormat;
27 |
28 | - (void)play;
29 |
30 | - (double)getCurrentTime;
31 |
32 | @end
33 |
--------------------------------------------------------------------------------
/Tutorial12-AudioUnitWithCMSampleBuffer/LearnAudioUnit/LearnAudioUnit/ViewController.h:
--------------------------------------------------------------------------------
1 | //
2 | // ViewController.h
3 | // LearnAudioUnit
4 | //
5 | // Created by loyinglin on 2017/12/6.
6 | // Copyright © 2017年 loyinglin. All rights reserved.
7 | //
8 |
9 | #import
10 |
11 | @interface ViewController : UIViewController
12 |
13 |
14 | @end
15 |
16 |
--------------------------------------------------------------------------------
/Tutorial12-AudioUnitWithCMSampleBuffer/LearnAudioUnit/LearnAudioUnit/main.m:
--------------------------------------------------------------------------------
1 | //
2 | // main.m
3 | // LearnAudioUnit
4 | //
5 | // Created by loyinglin on 2017/12/6.
6 | // Copyright © 2017年 loyinglin. All rights reserved.
7 | //
8 |
9 | #import
10 | #import "AppDelegate.h"
11 |
12 | int main(int argc, char * argv[]) {
13 | @autoreleasepool {
14 | return UIApplicationMain(argc, argv, nil, NSStringFromClass([AppDelegate class]));
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/Tutorialtmp-FFmpeg/FFmpeg.pages:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/loyinglin/LearnVideoToolBox/5c294d7c9ff50af89060d01399ea2d4cd38c31d8/Tutorialtmp-FFmpeg/FFmpeg.pages
--------------------------------------------------------------------------------
/Tutorialtmp-FFmpeg/LearnAudioUnit/LearnAudioUnit.xcodeproj/project.xcworkspace/contents.xcworkspacedata:
--------------------------------------------------------------------------------
1 |
2 |
4 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/Tutorialtmp-FFmpeg/LearnAudioUnit/LearnAudioUnit.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | IDEDidComputeMac32BitWarning
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/Tutorialtmp-FFmpeg/LearnAudioUnit/LearnAudioUnit.xcodeproj/project.xcworkspace/xcuserdata/loyinglin.xcuserdatad/UserInterfaceState.xcuserstate:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/loyinglin/LearnVideoToolBox/5c294d7c9ff50af89060d01399ea2d4cd38c31d8/Tutorialtmp-FFmpeg/LearnAudioUnit/LearnAudioUnit.xcodeproj/project.xcworkspace/xcuserdata/loyinglin.xcuserdatad/UserInterfaceState.xcuserstate
--------------------------------------------------------------------------------
/Tutorialtmp-FFmpeg/LearnAudioUnit/LearnAudioUnit.xcodeproj/xcuserdata/loyinglin.xcuserdatad/xcdebugger/Breakpoints_v2.xcbkptlist:
--------------------------------------------------------------------------------
1 |
2 |
5 |
6 |
--------------------------------------------------------------------------------
/Tutorialtmp-FFmpeg/LearnAudioUnit/LearnAudioUnit.xcodeproj/xcuserdata/loyinglin.xcuserdatad/xcschemes/xcschememanagement.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | SchemeUserState
6 |
7 | LearnAudioUnit.xcscheme
8 |
9 | orderHint
10 | 0
11 |
12 |
13 |
14 |
15 |
--------------------------------------------------------------------------------
/Tutorialtmp-FFmpeg/LearnAudioUnit/LearnAudioUnit/AppDelegate.h:
--------------------------------------------------------------------------------
1 | //
2 | // AppDelegate.h
3 | // LearnAudioUnit
4 | //
5 | // Created by loyinglin on 2017/12/6.
6 | // Copyright © 2017年 loyinglin. 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 |
--------------------------------------------------------------------------------
/Tutorialtmp-FFmpeg/LearnAudioUnit/LearnAudioUnit/GL/LYOpenGLView.h:
--------------------------------------------------------------------------------
1 | //
2 | // ViewController.m
3 | // LearnOpenGLESWithGPUImage
4 | //
5 | // Created by loyinglin on 16/5/10.
6 | // Copyright © 2016年 loyinglin. All rights reserved.
7 | //
8 |
9 | #import
10 | #import
11 | #import
12 |
13 | @interface LYOpenGLView : UIView
14 |
15 |
16 | @property (nonatomic , assign) BOOL isFullYUVRange;
17 |
18 | - (void)setupGL;
19 | - (void)displayPixelBuffer:(CVPixelBufferRef)pixelBuffer;
20 |
21 | @end
22 |
--------------------------------------------------------------------------------
/Tutorialtmp-FFmpeg/LearnAudioUnit/LearnAudioUnit/GL/Shader.vsh:
--------------------------------------------------------------------------------
1 | //
2 | // ViewController.m
3 | // LearnOpenGLESWithGPUImage
4 | //
5 | // Created by loyinglin on 16/5/10.
6 | // Copyright © 2016年 loyinglin. All rights reserved.
7 | //
8 |
9 | attribute vec4 position;
10 | attribute vec2 texCoord;
11 |
12 | varying vec2 texCoordVarying;
13 |
14 | void main()
15 | {
16 | gl_Position = position;
17 | texCoordVarying = texCoord;
18 | }
19 |
20 |
--------------------------------------------------------------------------------
/Tutorialtmp-FFmpeg/LearnAudioUnit/LearnAudioUnit/LYPlayer.h:
--------------------------------------------------------------------------------
1 | //
2 | // LYPlayer.h
3 | // LeanAudioUnit
4 | //
5 | // Created by loyinglin on 2017/12/6.
6 | // Copyright © 2017年 loyinglin. All rights reserved.
7 | //
8 |
9 | #import
10 | #import
11 | #import
12 |
13 | @class LYPlayer;
14 | @protocol LYPlayerDelegate
15 |
16 | - (AudioBufferList *)onRequestAudioData;
17 | - (void)onPlayToEnd:(LYPlayer *)player;
18 |
19 | @end
20 |
21 |
22 | @interface LYPlayer : NSObject
23 |
24 | @property (nonatomic, weak) id delegate;
25 |
26 | - (void)prepareForPlayWithOutputASBD:(AudioStreamBasicDescription)outputFormat;
27 |
28 | - (void)play;
29 |
30 | - (double)getCurrentTime;
31 |
32 | @end
33 |
--------------------------------------------------------------------------------
/Tutorialtmp-FFmpeg/LearnAudioUnit/LearnAudioUnit/ViewController.h:
--------------------------------------------------------------------------------
1 | //
2 | // ViewController.h
3 | // LearnAudioUnit
4 | //
5 | // Created by loyinglin on 2017/12/6.
6 | // Copyright © 2017年 loyinglin. All rights reserved.
7 | //
8 |
9 | #import
10 |
11 | @interface ViewController : UIViewController
12 |
13 |
14 | @end
15 |
16 |
--------------------------------------------------------------------------------
/Tutorialtmp-FFmpeg/LearnAudioUnit/LearnAudioUnit/main.m:
--------------------------------------------------------------------------------
1 | //
2 | // main.m
3 | // LearnAudioUnit
4 | //
5 | // Created by loyinglin on 2017/12/6.
6 | // Copyright © 2017年 loyinglin. All rights reserved.
7 | //
8 |
9 | #import
10 | #import "AppDelegate.h"
11 |
12 | int main(int argc, char * argv[]) {
13 | @autoreleasepool {
14 | return UIApplicationMain(argc, argv, nil, NSStringFromClass([AppDelegate class]));
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/Tutorialtmp-FFmpeg/LearnAudioUnit/readme.md:
--------------------------------------------------------------------------------
1 | 因为大小的原因,FFmpeg的库不上传到库中。
2 | 需要FFmpeg-iOS库的可用链接
3 | https://share.weiyun.com/86c776660ebd21ea03a69d2a6f51afed
4 |
5 | vy6 加 vjy (6个字母,拼一下)
6 |
7 | 文件夹放在LearnAudioUnit下面,与GL文件夹同级
8 |
--------------------------------------------------------------------------------
/pdf/AAC/AAC解码算法原理详解.doc:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/loyinglin/LearnVideoToolBox/5c294d7c9ff50af89060d01399ea2d4cd38c31d8/pdf/AAC/AAC解码算法原理详解.doc
--------------------------------------------------------------------------------
/pdf/AAC/AAC解码算法原理详解.pdf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/loyinglin/LearnVideoToolBox/5c294d7c9ff50af89060d01399ea2d4cd38c31d8/pdf/AAC/AAC解码算法原理详解.pdf
--------------------------------------------------------------------------------
/pdf/H264/H.264标准详细图解.pdf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/loyinglin/LearnVideoToolBox/5c294d7c9ff50af89060d01399ea2d4cd38c31d8/pdf/H264/H.264标准详细图解.pdf
--------------------------------------------------------------------------------