iOS5のUIImagePickerControllerQualityTypeと解像度のまとめ
iPhone 4Sを手に入れたので、UIImagePickerController で動画を撮るときの解像度やフレームレートなどをまとめ直してみた。
iOS 5 で使える UIImagePickerControllerQualityType (enum順)
- UIImagePickerControllerQualityTypeHigh
- UIImagePickerControllerQualityTypeMedium
- UIImagePickerControllerQualityTypeLow
- UIImagePickerControllerQualityType640x480 (iOS 4から)
- UIImagePickerControllerQualityTypeIFrame1280x720 (iOS 5から)
- UIImagePickerControllerQualityTypeIFrame960x540 (iOS 5から)
iOS 5から追加された最後の2つは、名前の通り映像をすべてIフレームで記録するという特殊なモード。そのため、その他のモードよりファイルサイズが増えるが、再生してみるとRAW映像っぽいニラニラした感じの動画になる。あとで編集する場合に適している。
解像度 (リアカメラのみ)
iPhone 3GS | iPhone 4 | iPhone 4S | iPod touch 4th | |
---|---|---|---|---|
High | 640x480 | 1280x720 | 1920x1080 | 1280x720 |
Medium | 480x360 | 480x360 | 480x360 | 480x360 |
Low | 192x144 | 192x144 | 192x144 | 192x144 |
640x480 | 640x480 | 640x480 | 640x480 | 640x480 |
IFrame1280x720 | 480x360※ | 1280x720 | 1280x720 | 1280x720 |
IFrame960x540 | 480x360※ | 960x540 | 960x540 | 960x540 |
従来通り、High のときだけその機種の最大解像度となり、あとはどの機種でも同じサイズになる。ただし、iPhone 3GSではiOS 5から追加されたIフレームモードは非対応。すべてIフレームになることはなく、見た感じ Medium と同等の動画になる模様。
フレームレート
- 最大29.97fps (Low のみ最大15fps)
最大と書いたのは、記録するときの状況によってこれより低くなったりするため。おそらく、なるべくメモリが空いているほうがフレームレートが高くなるのだと思う。
音声
- 64kbps 44.1KHz モノラル(Low のみ24kbps 22.05KHz モノラル)
オマケ:iOS 5 で使える AVCaptureSessionPreset
- AVCaptureSessionPresetPhoto
- AVCaptureSessionPresetHigh
- AVCaptureSessionPresetMedium
- AVCaptureSessionPresetLow
- AVCaptureSessionPreset352x288 (iOS 5から)
- AVCaptureSessionPreset640x480
- AVCaptureSessionPreset1280x720
- AVCaptureSessionPreset1920x1080 (iOS 5から)
- AVCaptureSessionPresetiFrame960x540 (iOS 5から)
- AVCaptureSessionPresetiFrame1280x720 (iOS 5から)
iPhone 4Sから可能になった 1920x1080 の絶対値指定、iOS 5から登場した2つのIフレームモードに加え、352x288 という11:9のCIF(Common Intermediate Format)用解像度が登場したのがポイント。また、ドキュメントには iFrame960x540 が約30Mbps、iFrame1280x720 が約40Mbpsと書かれており、UIImagePickerController のIフレームモードで撮影したときもそれぞれ同じビットレートで記録されるので覚えておくとよい。