2013-11-23 3 views
0

Я видел предыдущую тему с тем же вопросом, но я хотел посмотреть, есть ли какие-либо идеи. У меня есть приложение, где я беру последовательность фотографий, затем появляется возможность записи сообщения. У меня отключена экспозиция, но когда я иду записывать видео, которое он открывает, он не возвращается в исходное состояние, когда я делаю запись. Я переехалGPUImageMovieWriter не записывает аудио

self.stillCamera.audioEncodingTarget = self.movieWriter; 

в

viewDidLoad 

как предыдущая нить сказал, чтобы сделать. Это фиксировало проблему с экспозицией, но теперь нет звука. Я в тупике.

Вот некоторые из кода.

(void)viewDidLoad { 
[super viewDidLoad]; 
self.library = [[ALAssetsLibrary alloc] init]; 
takephotocolor.hidden = YES; 
takephotobw.hidden = YES; 
self.stillCamera.audioEncodingTarget = self.movieWriter; 

} 

(IBAction)StartButtonPressed:(id)sender { 
if(!self.transform){ 

self.transform = [[GPUImageTransformFilter alloc] init]; 
CATransform3D perspectiveTransform = CATransform3DScale(CATransform3DMakeRotation(0, 0, 0, 1), 
                 -1, 1, 1); 
[self.transform setTransform3D:perspectiveTransform]; 
} 

[self.filter addTarget:self.transform]; 

self.pathToMovie = [NSHomeDirectory() stringByAppendingPathComponent:@"Documents/movie.mov"]; 
unlink([self.pathToMovie UTF8String]); 
NSURL *movieURL = [NSURL fileURLWithPath:self.pathToMovie]; 
self.movieWriter = [[GPUImageMovieWriter alloc] initWithMovieURL:movieURL  size:CGSizeMake(1024.0, 768.0)]; 


[self.transform addTarget:self.movieWriter]; 
[self.movieWriter startRecording]; 

btnStart.hidden = YES; 
btnStop.hidden = NO; 
NSLog(@"START RECORDING"); 
} 

(IBAction)StopButtonPressed:(id)sender { 
self.stillCamera.audioEncodingTarget = nil; 
[self.movieWriter finishRecording]; 

[self.filter removeTarget:self.transform]; 
[self.transform removeAllTargets]; 
UISaveVideoAtPathToSavedPhotosAlbum(self.pathToMovie, self, nil, nil); 

[NSTimer scheduledTimerWithTimeInterval:3.0 target:self selector:@selector(goVideo) userInfo:nil repeats:NO]; 
} 

ответ

0

Попробуйте положить self.stillCamera.audioEncodingTarget = nil; после вызова [self.movieWriter finishRecording]; Вот как она у меня настроить по крайней мере.

Смежные вопросы