2016-05-30 9 views
0

私は必要な次元でVCSessionを設定する次のコードを持っています。 'camview'は正しい寸法の正方形のUIViewです。Video Core - スウィフトを使用したスト​​リームの正方形ビデオ

self.previewView = camview 
let screenSize: CGSize = UIScreen.mainScreen().bounds.size 
self.session = VCSimpleSession(videoSize: screenSize, frameRate: 30, bitrate: 1000000, useInterfaceOrientation: false) 
session!.orientationLocked = false 
session!.previewView.frame = camview.bounds 
camview.addSubview(session!.previewView) 

どんなに私がフレーム/境界を設定しようか、どちらかのa)の出力は、画面の縦横比を保持するが、四角の枠に収まるように縮小されて(私はcamviewにvideoSizeを設定している場合)またはb)上のコードが示すように、ビデオはフルスクリーンで記録されますが、正方形のビットだけが表示されます。

私は円で回っています - 正方形のアスペクト比だけを正確に出力するためにVCSimpleSession videoSizeを実際にどのように得ることができますか(つまり、カメラフレームの四角形部分のみ)

答えて

0

アスペクトセットのパラメータが必要と思われます。唯一の選択肢はフィットとフィルであり、いずれも正しいとは思われなかったので、これは起こりそうにないようでした。しかし、それはトリックを行ったようです。

したがって、videoSizeをcamviewに設定し、previewView.frameを同じに設定して次の値を追加します。

session!.aspectMode = VCAspectMode.AscpectModeFill 

(タイプミスは私はvideoCoreではありません)
関連する問題