大佬教程收集整理的这篇文章主要介绍了ios – AVCaptureSession图像尺寸(带GPUImage),大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
我有一个GPUImageVideoCamera,我正在尝试设置这样的录音:
-(void)toggleVideoRecording { if (!self.recording) { self.recording = true; GPUImageMovieWriter * mw = [self createMovieWriter: self.filter1]; [self.filter1 addTarget:mw]; mw.shouldPassthroughAudio = YES; [mw startRecording]; } else { self.recording = false; [self finishWriTingMovie]; }
}
-(GPUImageMovieWriter *) createMovieWriter:(GPUImageFilter *) forFilter { NSString *pathToMovie = [NSHomeDirectory() StringByAppendingPathComponent:@"Documents/CurrentMovie.m4v"]; unlink([pathToMovie UTF8String]); NSURL *movieURL = [NSURL fileURLWithPath:pathToMovie]; GPUImageMovieWriter * mw = [[GPUImageMovieWriter alloc] initWithMovieURL:movieURL size:forFilter->currentFilterSize]; self.movieWriter = mw; self.movieURL = movieURL; return mw; }
这实际上大部分都有效但是,MoviewWriter需要输入媒体的CGSize,我不知道如何将它从VideoCamera中拉出来.首先,尺寸会有所不同,因为相机正在使用sessionPreset:AVCaptureSessionPresetHigh,这意味着它会根据设备的功能而变化.其次,方向改变了相关的CGSize.如果用户以横向模式开始录制,我想转置尺寸.
对于任何知道如何使用vanilla CoreVideo执行此操作的人,我可以将AVCaptureSession从我的GPUImageVideoCamera中拉出来. (但我已经阅读了AVCaptureSession的API,没有什么看起来很有希望).
甚至将我引用到处理此项目的示例项目也会非常有帮助.
// self.videoCamera is a GPUImageVideoCamera AVCaptureVideoDataOutput *output = [[[self.videoCamera captureSession] outputs] lastObject]; NSDictionary* outputSetTings = [output videoSetTings]; long width = [[outputSetTings objectForKey:@"Width"] longValue]; long height = [[outputSetTings objectForKey:@"Height"] longValue]; if (UIInterfaceOrientationIsPorTrait([self.videoCamera outputImageOrientation])) { long buf = width; width = height; height = buf; } GPUImageMovieWriter * mw = [[GPUImageMovieWriter alloc] initWithMovieURL:movieURL size:CGSizeMake(width,height)];
以上是大佬教程为你收集整理的ios – AVCaptureSession图像尺寸(带GPUImage)全部内容,希望文章能够帮你解决ios – AVCaptureSession图像尺寸(带GPUImage)所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。