【发布时间】:2016-09-09 10:19:19
【问题描述】:
我想通过 AV Foundation 更改我在 OS X 上使用相机拍摄的照片的分辨率。
但即使我更改了 AVCaptureSession 的分辨率,输出图片大小也不会改变。我总是有一张 1280x720 的图片。
我想要更低的分辨率,因为我在实时过程中使用这些图片,并且我希望程序更快。
这是我的代码示例:
session = [[AVCaptureSession alloc] init];
if([session canSetSessionPreset:AVCaptureSessionPreset640x360]) {
[session setSessionPreset:AVCaptureSessionPreset640x360];
}
AVCaptureDeviceInput *device_input = [[AVCaptureDeviceInput alloc] initWithDevice:
[AVCaptureDevice devicesWithMediaType:AVMediaTypeVideo][0] error:nil];
if([session canAddInput:device_input])
[session addInput:device_input];
still_image = [[AVCaptureStillImageOutput alloc] init];
NSDictionary *output_settings = [[NSDictionary alloc] initWithObjectsAndKeys:AVVideoCodecJPEG, AVVideoCodecKey, nil];
[still_image setOutputSettings : output_settings];
[session addOutput:still_image];
我应该对我的代码进行哪些更改?
【问题讨论】:
标签: objective-c macos avcapturesession avcapture avcaptureoutput