gpt4 book ai didi

ios - 如何在 GPUImageVideoCamera 的 GPUImageGaussianBlurFilter 上应用 GPUImageMaskFilter

转载 作者:行者123 更新时间:2023-11-29 02:37:56 25 4
gpt4 key购买 nike

我正在尝试将 GPUImageGaussianBlurFilter 应用到带有 PNG 图像的实时相机源遮蔽。另外我需要提到的是,PNG 图像不是正方形或圆形,而是闭合的贝塞尔路径。

这是我的代码:

GPUImageVideoCamera *videoCamera;
GPUImageView *view1;

videoCamera = [[GPUImageVideoCamera alloc] initWithSessionPreset:AVCaptureSessionPreset640x480 cameraPosition:AVCaptureDevicePositionBack];
videoCamera.outputImageOrientation = UIInterfaceOrientationLandscapeRight;
CGRect movieFrame = CGRectMake(0.0, 0.0, 640.0, 480.0);

view1 = [[GPUImageView alloc] initWithFrame:movieFrame];
[self.view addSubview:view1];

GPUImageMaskFilter * maskFilter = [[GPUImageMaskFilter alloc] init];

[videoCamera addTarget:maskFilter];

GPUImageGaussianBlurFilter * gaussianBlurFilter = [[GPUImageGaussianBlurFilter alloc] init];
[gaussianBlurFilter setBlurRadiusInPixels:3.0];
[gaussianBlurFilter addTarget:maskFilter];

GPUImagePicture * maskGPUImage = [[GPUImagePicture alloc] initWithImage:[UIImage imageNamed:@"mask2"] smoothlyScaleOutput:YES];
[maskGPUImage addTarget:maskFilter];
[maskGPUImage processImage];

[maskFilter addTarget:view1];

[videoCamera startCameraCapture];

但是 Xcode 6.0.1 在“GPUImageFramebuffer.m”在线编译后中断执行:

NSAssert(framebufferReferenceCount > 0, @"Tried to overrelease a framebuffer, did you forget to call -useNextFrameForImageCapture before using -imageFromCurrentFramebuffer?");

使用 OSX Mavericks 10.9.5、iPad Air 进行测试

问候

最佳答案

我找到了解决方案;引用文献应该很强。弱引用提早释放

关于ios - 如何在 GPUImageVideoCamera 的 GPUImageGaussianBlurFilter 上应用 GPUImageMaskFilter,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26148595/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com