私はビデオの方向を確認することに大きな問題があります。 1080x1920と360x640:AVSsetのNaturalSizeがビデオファイルと異なっています
private func checkIfVideoIsPortrait(videoURL: NSURL) -> Bool {
let videoAsset = AVAsset.init(URL: videoURL)
let videoTrack = videoAsset.tracksWithMediaType(AVMediaTypeVideo)[0]
let size = videoTrack.naturalSize
let txf = videoTrack.preferredTransform
let realSize = CGSizeApplyAffineTransform(size, txf)
print(videoTrack)
print(txf)
print(size)
print(realSize)
if (size.width == txf.tx && size.height == txf.ty) {
return false
} else if (txf.tx == 0 && txf.ty == 0) {
return false
} else if (txf.tx == 0 && txf.ty == size.width) {
return true
} else {
return true
}
}
私は2つのビデオファイルを持っている:ビデオファイルは、ポートレートモードであるかどうかを確認するためのコードがあります。要点は、コードがファイルのさまざまな次元を返すため、私はビデオの方向性が何であるかを認識できないということです。
< AVAssetTrack:0x157dee9a0、trackID = 2、MEDIATYPE =見よ>
CGAffineTransform(:1.0、B:0.0、C:0.0、D:1.0
はログあり、TX:0.0、TY:0.0)
(320.0、568.0)
(320.0、568.0)
< AVAssetTrack:0x1593643c0、trackID = 2、MEDIATYPE =見よ>
CGAffineTransform(:0.0、B:1.0、C:-1.0、D:0.0、 TX:720.0、TY:0.0)
(1280.0、720.0)
(-720.0、1280.0)
ビデオの正しい寸法を確認するにはどうすればよいですか?私は助けてうれしい。