AV Foundation Framework视频质量检查

时间:2016-05-10 05:42:52

标签: ios swift avfoundation avplayer

我做了什么: - 我在swift中使用 AV Foundation Framework 完成了一个项目摄像机视频录制应用程序..

我已完成录制并保存视频

我在保存视频之前拍摄了视频并我想检查质量

我正在使用 AV播放器播放录制的视频

告诉我如何在使用swift录制视频后获得视频分辨率。

如果我这意味着我将检查我的视频质量取决于分辨率

请指导我这样做..

1 个答案:

答案 0 :(得分:0)

由于你提到你正在使用AVFoundation并进行录制,我假设你有一个AVAsset的实例(或者你有一个NSURL指向文件位置),那么你可以得到AVAsset中的视频曲目,然后是视频大小。

https://developer.apple.com/library/ios/documentation/AVFoundation/Reference/AVAssetTrack_Class/index.html#//apple_ref/occ/instp/AVAssetTrack/naturalSize

// if you have the NSURL pointing to the file, you can build an AVAsset by this
let asset: AVAsset = AVURLAsset(URL: fileURL)

// get the first track
if let track = asset.tracksWithMediaType(AVMediaTypeVideo)?.first {

  let size: CGSize = track.naturalSize

  // then you can have the width and height
  let width = size.width
  let height = size.height
}

作为旁注,除了视频的分辨率外,还有其他因素,如视频的比特率,这也会影响质量。更多内容可以在苹果文档中找到。

https://developer.apple.com/library/ios/documentation/CoreMedia/Reference/CMFormatDescription/index.html#//apple_ref/c/tdef/CMVideoFormatDescriptionRef