Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/120.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios GPUImage视频过滤器设置亮度不工作_Ios_Objective C_Gpuimage - Fatal编程技术网

Ios GPUImage视频过滤器设置亮度不工作

Ios GPUImage视频过滤器设置亮度不工作,ios,objective-c,gpuimage,Ios,Objective C,Gpuimage,//整个代码看起来不错,但是movieWriter-setCompletionBlock行没有被编译。不知道里面有什么问题 我试图解决,因为过去3天,但没有得到它成功地工作 -(IBAction)setBrightness:(id)sender { sleep(1); NSURL *sampleURL = [NSURL URLWithString:_videoURLPath]; movieFile = [[GPUImageMovie alloc] initWit

//整个代码看起来不错,但是movieWriter-setCompletionBlock行没有被编译。不知道里面有什么问题

我试图解决,因为过去3天,但没有得到它成功地工作

-(IBAction)setBrightness:(id)sender
{    
    sleep(1);

    NSURL *sampleURL = [NSURL URLWithString:_videoURLPath];
    movieFile = [[GPUImageMovie alloc] initWithURL:sampleURL];
    movieFile.runBenchmark = YES;
    movieFile.playAtActualSpeed = NO;

    filterView = (GPUImageView *)gpuView;
    filter=[[GPUImageBrightnessFilter alloc]init];
    [movieFile addTarget:filter];
    [filter addTarget:filterView];

    [(GPUImageBrightnessFilter *)filter setBrightness:brightValue];

    unlink([pathToMovie UTF8String]); // If a file already exists, AVAssetWriter won't let you record new frames, so delete the old movie

    NSURL *movieURL = [NSURL fileURLWithPath:pathToMovie];enter code here

    movieWriter = [[GPUImageMovieWriter alloc] initWithMovieURL:movieURL size:CGSizeMake(320.0, 320.0)];
    [filter addTarget:movieWriter];

    movieWriter.shouldPassthroughAudio = NO;
    movieFile.audioEncodingTarget = movieWriter;
    [movieFile enableSynchronizedEncodingUsingMovieWriter:movieWriter];

    [movieWriter startRecording];
    [movieFile startProcessing];

    [movieWriter setCompletionBlock:^{

        [filter removeTarget:movieWriter];
        [movieWriter finishRecording];

        dispatch_async(dispatch_get_main_queue(), ^{

            [_toolDelegate stringPathOfFilteredVideoFromTool:pathToMovie];
            [self.navigationController popViewControllerAnimated:YES];

        });
    }];
}
这对我有用

[movieWriter setCompletionBlock:^{

    [filter removeTarget:movieWriter];
    [movieWriter finishRecording];
}];
只需将上面的替换为下面的。

dispatch_async(dispatch_get_main_queue(), ^{
    [filter removeTarget:movieWriter];
    [movieWriter finishRecording];
    NSLog(@"aa2233453546565");        
});

我也有同样的问题。