ビデオを録画してサーバーにアップロードするアプリを作成しましたが、ビデオは非常に高解像度で録画されました。解像度を下げたいです。インターネットで AVCaptureSessionPreset640x480 について学びましたが、使用方法がわかりません。
5 に答える
プロパティを使用して解像度を変更できsessionPreset
ます。セッション プリセットのデフォルト値はAVCaptureSessionPresetHigh
、高品質のビデオおよびオーディオ出力に適しています。
次のようにセッション プリセットを設定できます。
[self.yourSession setSessionPreset:AVCaptureSessionPresetLow];
セッションプリセット
出力の品質レベルまたはビットレートを示す定数値。@property(nonatomic, copy) NSString *sessionPreset ディスカッション
このプロパティを使用して、出力の品質レベルまたはビットレートをカスタマイズします。sessionPreset の可能な値については、「ビデオ入力プリセット」を参照してください。デフォルト値は AVCaptureSessionPresetHigh です。
この値は、セッションの実行中に設定できます。
canSetSessionPreset
: がそのプリセットに対して YES を返す場合にのみ、プリセットを設定できます。可用性Available in iOS 4.0 and later.
AVCaptureSession.h で宣言
セッション プリセットの可能な値は次のとおりです。
ビデオ入力プリセット
sessionPreset
プロパティを使用してキャプチャ設定のプリセットを定義するための定数。NSString *const AVCaptureSessionPresetPhoto;
NSString *const AVCaptureSessionPresetHigh;
NSString *const AVCaptureSessionPresetMedium;
NSString *const AVCaptureSessionPresetLow;
NSString *const AVCaptureSessionPreset352x288;
NSString *const AVCaptureSessionPreset640x480;
NSString *const AVCaptureSessionPreset1280x720;
NSString *const AVCaptureSessionPreset1920x1080;
NSString *const AVCaptureSessionPresetiFrame960x540;
NSString *const AVCaptureSessionPresetiFrame1280x720;
定数の詳細:
AVCaptureSessionPresetPhoto
Specifies capture settings suitable for high resolution photo quality output. Available in iOS 4.0 and later. Declared in AVCaptureSession.h.
AVCaptureSessionPresetHigh
Specifies capture settings suitable for high quality video and audio output. Available in iOS 4.0 and later. Declared in AVCaptureSession.h.
AVCaptureSessionPresetMedium
Specifies capture settings suitable for output video and audio bitrates suitable for sharing over WiFi. Available in iOS 4.0 and later. Declared in AVCaptureSession.h.
AVCaptureSessionPresetLow
Specifies capture settings suitable for output video and audio bitrates suitable for sharing over 3G. Available in iOS 4.0 and later. Declared in AVCaptureSession.h.
AVCaptureSessionPreset352x288
Specifies capture settings suitable for CIF quality (352x288 pixel) video output. Available in iOS 5.0 and later. Declared in AVCaptureSession.h.
AVCaptureSessionPreset640x480
Specifies capture settings suitable for VGA quality (640x480 pixel) video output. Available in iOS 4.0 and later. Declared in AVCaptureSession.h.
AVCaptureSessionPreset1280x720
Specifies capture settings suitable for 720p quality (1280x720 pixel) video output. Available in iOS 4.0 and later. Declared in AVCaptureSession.h.
AVCaptureSessionPreset1920x1080
Specifies capture settings suitable for 1080p quality (1920x1080 pixel) video output. Available in iOS 5.0 and later. Declared in AVCaptureSession.h.
AVCaptureSessionPresetiFrame960x540
Specifies capture settings to achieve 960x540 quality iFrame H.264 video at about 30 Mbits/sec with AAC audio. QuickTime movies captured in iFrame format are optimal for editing applications. Available in iOS 5.0 and later. Declared in AVCaptureSession.h.
AVCaptureSessionPresetiFrame1280x720
Specifies capture settings to achieve 1280x720 quality iFrame H.264 video at about 40 Mbits/sec with AAC audio. QuickTime movies captured in iFrame format are optimal for editing applications. Available in iOS 5.0 and later. Declared in AVCaptureSession.h.
参照してください: AVCaptureSession
if ([self.captureSession canSetSessionPreset:AVCaptureSessionPreset640x480]) {
[self.captureSession setSessionPreset:AVCaptureSessionPreset640x480];
}