2013-10-16 35 views
1

我不知道如何使用GPUImageMovieComposition與GPUImageMovieWriter(從GPUImage),有沒有任何關於如何使用它的例子?如何使用GPUImage中的GPUImageMovieComposition?

下面是我嘗試過,我測試過該組合物,videoComposition和audioMix是有效:

movieFile = [[GPUImageMovieComposition alloc] initWithComposition:composition andVideoComposition:videoComposition andAudioMix:audioMix]; 
filter = [[GPUImagePixellateFilter alloc] init]; 

[movieFile addTarget:filter]; 

GPUImageView *filterView = (GPUImageView *)self.view; 
[filter addTarget:filterView]; 

NSString *pathToMovie = [NSHomeDirectory() stringByAppendingPathComponent:@"Documents/Movie.m4v"]; 
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]; 

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

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

[movieWriter startRecording]; 
[movieFile startProcessing]; 

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

預先感謝您!

回答

0

有沒有機會用這個替換你的movieWriter實例嗎?

movieWriter = [[GPUImageMovieWriter alloc] initWithMovieURL:fileURL size:CGSizeMake(640.0, 480.0) fileType:AVFileTypeQuickTimeMovie outputSettings:nil]; 

進一步的問題,電影文件在設備上正確播放,你只是沒有運氣存儲文件?

如果是這樣,是不是因爲你正在尋找的「應用程序」選項卡下的iTunes中的文件,但你沒有在「自定義iOS的目標屬性」在設置Application supports iTunes file sharing標誌YES

如果兩個那些是沒有意義的,什麼不適合你?