Swift - How to get video dimension? Swift - How to get video dimension? swift swift

Swift - How to get video dimension?


func initAspectRatioOfVideo(with fileURL: URL) -> Double {  let resolution = resolutionForLocalVideo(url: fileURL)  guard let width = resolution?.width, let height = resolution?.height else {     return 0  }  return Double(height / width)}private func resolutionForLocalVideo(url: URL) -> CGSize? {    guard let track = AVURLAsset(url: url).tracks(withMediaType: AVMediaType.video).first else { return nil }   let size = track.naturalSize.applying(track.preferredTransform)   return CGSize(width: abs(size.width), height: abs(size.height))}


This is a more concise version of Vlad Pulichev's answer.

var aspectRatio: CGFloat! // use the function to assign your variablefunc getVideoResolution(url: String) -> CGFloat? {    guard let track = AVURLAsset(url: URL(string: url)!).tracks(withMediaType: AVMediaType.video).first else { return nil }    let size = track.naturalSize.applying(track.preferredTransform)    return abs(size.height) / abs(size.width)}