0

GPUImageStillCamera を使用して最高解像度の画像をキャプチャする必要があります。AVCaptureSessionPresetPhoto、AVCaptureSessionPreset1920x1080 などのプロパティを試しました。少し良い結果が得られます。AVCaptureSessionPresetHigh の代わりにプロパティ AVCaptureSessionPresetPhoto を使用して画像をキャプチャすると、(AVCaptureSessionPresetPhoto) は AVCaptureSessionPresetHigh よりも良い結果になることに注意してください。しかし、プロパティ AVCaptureSessionPreset3840x2160 を使用すると、次のようになります。

videoCamera = [[GPUImageStillCamera alloc] initWithSessionPreset:AVCaptureSessionPreset3840x2160 cameraPosition:AVCaptureDevicePositionBack]; .

アプリがクラッシュし (最新の iPhone バージョンでも)、このメッセージが表示されます (iPhone 5 S、バージョン:9.3.1、Xcode バージョン: 7.3 を使用しています)

キャッチされない例外 'NSInvalidArgumentException' が原因でアプリを終了しています。理由: 'AVCaptureSessionPreset3840x2160 はサポートされているプリセットではありません。

具体的な AVCaptureSessionPreset が iOS デバイスでサポートされているかどうかを確認する方法はありますか? AVCaptureSession の解像度を設定したいのですが、デバイスが選択した解像度を使用してカメラ フレームをキャプチャできるかどうかを確認する方法がわかりません。つまり、すべての異なる iPhone デバイスに対して、最高品質で最大サイズの画像が必要です。どんな提案も素晴らしいでしょう。みんなありがとう。

4

1 に答える 1

0

AVCaptureSessionsessionPresetプロパティを以下のように使用できます。

  cameraSession.sessionPreset = AVCaptureSessionPresetHigh;

AVCaptureSessionPresetHighコードでも試してみてください。

これが役立つことを願っています:)

于 2016-05-17T05:30:38.820 に答える