gpt4 book ai didi

ios - 如何使用 GPUImage 框架保存电影?

转载 作者:行者123 更新时间:2023-11-28 22:15:31 26 4
gpt4 key购买 nike

我正在尝试通过在 GPUImageMovie 和 GPUImageMovieWriter 之间添加过滤器来处理视频。但是,我在添加自定义过滤器之前遇到了麻烦。

这是我的测试代码。

    NSURL *sampleURL = [[NSBundle mainBundle] URLForResource:@"Documents/test" withExtension:@"mov"];
movieFile = [[GPUImageMovie alloc] initWithURL:sampleURL];

NSString *pathToMovie = [NSHomeDirectory() stringByAppendingPathComponent:@"Documents/output.mov"];
unlink([pathToMovie UTF8String]);
NSURL *movieURL = [NSURL fileURLWithPath:pathToMovie];

movieWriter = [[GPUImageMovieWriter alloc] initWithMovieURL:movieURL size:CGSizeMake(1280.0, 720.0)];

[movieFile addTarget:movieWriter];

[movieWriter startRecording];
[movieFile startProcessing];

[movieWriter setCompletionBlock:^{
[movieFile removeTarget:movieWriter];
[movieWriter finishRecording];
}];

我收到这样的错误信息

uncaught exception 'NSInvalidArgumentException', reason: '*** -[AVAssetReader initWithAsset:error:] invalid parameter not satisfying: asset != ((void*)0)'

,在Documents文件夹下创建了一个名为output.mov的文件,大小为0。

我该怎么做才能解决这个简单的任务?

最佳答案

您的问题似乎出在这里:

[pixellateFilter addTarget:movieWriter];

[movieFile addTarget:movieWriter];

您正在将过滤器和电影源同时添加到电影编写器。我想你的意思是这样的:

[movieFile addTarget:pixellateFilter];
[pixellateFilter addTarget:movieWriter];

关于ios - 如何使用 GPUImage 框架保存电影?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21825626/

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