从 PHAsset 获取视频时如何检测视频是否为 Landscape/portrait?
How to detect if video is Landscape/portrait when fetched from PHAsset?
我正在从 PHAsset 中获取视频,以便用户可以选择视频并导入以执行编辑。但是用户应该只能 select 横向视频,如果用户 select 纵向视频, she/he 会收到警告消息说它的纵向视频因此无法导入进行编辑。
一种方法是从 PHFetchResults 的 URL 创建 AVAsset,然后检查 preferedTransform,但这样做的成本非常高吗?
有没有办法在不创建 AVasset 的情况下做到这一点?
https://developer.apple.com/library/ios/documentation/Photos/Reference/PHAsset_Class/
var pixelWidth: Int { get }
var pixelHeight: Int { get }
The width and height, in pixels, of the asset’s image or video data. (read-only)
If the asset’s content has
been edited, this property describes the size of the current version
of the asset. Availability iOS (8.0 and later)
if asset!.pixelHeight > asset!.pixelWidth {
// will be portrait video or Image
}
在 iOS 8.0 及更高版本中可用。
我正在从 PHAsset 中获取视频,以便用户可以选择视频并导入以执行编辑。但是用户应该只能 select 横向视频,如果用户 select 纵向视频, she/he 会收到警告消息说它的纵向视频因此无法导入进行编辑。
一种方法是从 PHFetchResults 的 URL 创建 AVAsset,然后检查 preferedTransform,但这样做的成本非常高吗?
有没有办法在不创建 AVasset 的情况下做到这一点?
https://developer.apple.com/library/ios/documentation/Photos/Reference/PHAsset_Class/
var pixelWidth: Int { get }
var pixelHeight: Int { get }
The width and height, in pixels, of the asset’s image or video data. (read-only)
If the asset’s content has been edited, this property describes the size of the current version of the asset. Availability iOS (8.0 and later)
if asset!.pixelHeight > asset!.pixelWidth {
// will be portrait video or Image
}
在 iOS 8.0 及更高版本中可用。