(предупрежу сразу - этот флоу удобен для не больших объемов данных; буквально; вроде - дата последнего логина, кол-во предупреждений об обновлении, дата последней проверки обновления, и.т.п)
- (void)initializeCamera{
self.camera = [[GPUImageVideoCamera alloc] initWithSessionPreset:AVCaptureSessionPreset640x480
cameraPosition:AVCaptureDevicePositionFront
captureAsYUV:NO];
self.camera.delegate = self;
self.camera.frameRate = 24;
self.camera.videoCaptureConnection.videoMirrored = YES;
// ********In GPUImage mannualy setted: camera.captureAsYUV = NO; *******
self.maskElementInput = [[GPUImageUIElement alloc] initWithView:self.maskView];
self.blendMaskFilter = [GPUImageNormalBlendFilter new];
self.blendOverlayFilter = [GPUImageNormalBlendFilter new];
[self.blendMaskFilter disableFirstFrameCheck];
[self.blendMaskFilter disableSecondFrameCheck];
[self.blendOverlayFilter disableFirstFrameCheck];
[self.blendOverlayFilter disableSecondFrameCheck];
[self.camera addTarget:self.blendMaskFilter atTextureLocation:0];
[self.maskElementInput addTarget:self.blendMaskFilter atTextureLocation:1];
[self.blendMaskFilter addTarget:self.blendOverlayFilter atTextureLocation:0];
[self.overlayImage addTarget:self.blendOverlayFilter atTextureLocation:1];
__weak CameraManager *weakSelf = self;
[self.blendMaskFilter setFrameProcessingCompletionBlock:^(GPUImageOutput *, CMTime) {
[weakSelf.maskElementInput update];
}];
[self.blendOverlayFilter addTarget:self.filteredVideoView];
[self configureOrientation];
}
у класса Gallery тоже будет доступно свойство height, что неправильно, так как высота характерна только для башни (Tower, но пир этом вы хотите ее вывести.