Как я могу получить видео от Gallery
(фотографии) в произвольном формате и размере.
например, я хочу прочитать видео в формате 360p.
Я использовал код ниже, чтобыполучить видеоданные, но Apple заявила, что не гарантирует их чтение в низком качестве.
Это расширение PHAsset
, поэтому self
ссылается на PHAsset
объект.
var fileData: Data? = nil
let manager = PHImageManager.default()
let options = PHVideoRequestOptions()
options.isNetworkAccessAllowed = true
options.deliveryMode = .fastFormat
manager.requestAVAsset(forVideo: self, options: options) {
(asset: AVAsset?, audioMix: AVAudioMix?, _) in
if let avassetURL = asset as? AVURLAsset {
guard let video = try? Data(contentsOf: avassetURL.url) else {
print("reading video failed")
return
}
fileData = video
}
}