2017-07-16 42 views
6

設備處於肖像模式時是否可以在橫向捕獲視頻?iOS - 在設備處於肖像模式時捕捉橫向視頻

是這樣的:
enter image description here

其實我需要的是在肖像但寬度>高度,我不希望用戶旋轉設備捕捉到,但我想捕捉像一個更廣泛的圖片在橫向模式下。

只是將預覽圖層框架更改爲寬(寬度>高度)當然不夠。

我試着改變預覽圖層的視頻方向,但是會旋轉圖片,那不是我想要的。

previewLayer.connection.videoOrientation = .landscapeRight 

是有意義的嗎?

回答

0

您可以,您需要使用AVAssetWriter並設置輸出視頻的尺寸。

但是,請記住,您將降低質量。如果相機的方向是肖像,那麼你接收到的是一個720H×360W的視頻。

所以,如果你想保持高寬比,那麼你最終需要一個180H x 360W的視頻(通過裁剪輸入)。

請記住,相機看到的內容,您發送到預覽圖層的內容以及您記錄到文件的內容有所不同 - 它們都可以相互獨立(您提到了更改預覽圖層框架,請記住這與您寫出的視頻無關)。

0

你有沒有嘗試過設置重力&界限的previewLayer?

var bounds:CGRect = self.view.layer.bounds 
previewLayer?.videoGravity = AVLayerVideoGravityResizeAspectFill 
previewLayer?.bounds = bounds 
previewLayer?.position = CGPointMake(CGRectGetMidX(bounds), CGRectGetMidY(bounds)) 
2

沒有它不可能,因爲你必須物理旋轉相機。

您可以將輸出視頻裁剪爲任何您希望的寬高比。

但是,這會使您的垂直分辨率達到目前水平分辨率的最大值。

以及減少你的視野。

如果你還是想裁剪視頻以模擬實時這個「小風景模式」我建議你使用「GPUImageCropFilter」從庫GPUImage

相關問題