Swift - 获取视频截图(本地视频、网络视频的缩略图)
最编程
2024-03-10 12:11:27
...
import
UIKit
import
AVFoundation
import
MobileCoreServices
class
ViewController
:
UIViewController
{
@IBOutlet
weak
var
imageView:
UIImageView
!
override
func
viewDidLoad() {
super
.viewDidLoad()
//异步获取网络视频
dispatch_async(dispatch_get_global_queue(
DISPATCH_QUEUE_PRIORITY_DEFAULT
,0), {
//获取网络视频
let
url =
"http://www.hangge.com/hangge.mp4"
let
videoURL =
NSURL
(string: url)!
let
avAsset =
AVURLAsset
(
URL
: videoURL)
//生成视频截图
let
generator =
AVAssetImageGenerator
(asset: avAsset)
generator.appliesPreferredTrackTransform =
true
let
time =
CMTimeMakeWithSeconds
(0.0,600)
var
actualTime:
CMTime
=
CMTimeMake
(0,0)
let
imageRef:
CGImageRef
= try! generator.copyCGImageAtTime(time, actualTime: &actualTime)
let
frameImg =
UIImage
(
CGImage