我的目标是编写一个自定义的相机视图控制器:
- 可以使用后置摄像头和前置摄像头(如果有的话)在所有四个界面方向上拍照。
- 正确旋转和缩放预览“视频”以及全分辨率照片。
- 允许将(简单)效果应用于预览“视频”和全分辨率照片。
我以前的努力记录在这个问题中。我最近的尝试是修改 Apple 的示例 GLVideoFrame(来自 WWDC 2010)。但是,当会话预设为 AVCaptureSessionPresetPhoto 时,我无法让 iPhone 4 正确显示预览“视频”。
有没有人试过这个或者知道为什么这个例子不适用于这个预设?
Apple 的示例使用具有 640x480 视频尺寸和 1280x720 默认纹理大小的预设。当预设为 AVCaptureSessionPresetPhoto 时,iPhone 4 后置摄像头仅提供 852x640。
预设为 AVCaptureSessionPresetPhoto 时的 iOS 设备相机视频/照片尺寸:
- iPhone 4 背面:视频为 852x640,照片为 2592x1936
- iPhone 4 正面:视频和照片为 640x480
- iPod Touch 4G 背面:视频和照片为 960x720
- iPod Touch 4G 正面:视频和照片为 640x480
- iPhone 3GS:视频为 512x384,照片为 2048x1536
更新
在将 Brad Larson 的 ColorTracking 示例(博客文章)切换为使用 AVCaptureSessionPresetPhoto时,我得到了相同的乱码视频结果。