func videoPreviewUiimage(fileName:URL) -> UIImage? {
// let filePath = NSString(string: "~/").expandingTildeInPath.appending("/Documents/").appending(fileName)
// let vidURL = NSURL(fileURLWithPath:filePath)
let asset = AVURLAsset(url: fileName as URL)
let generator = AVAssetImageGenerator(asset: asset)
generator.appliesPreferredTrackTransform = true
let timestamp = CMTime(seconds: 2, preferredTimescale: 60)
do {
let imageRef = try generator.copyCGImage(at: timestamp, actualTime: nil)
return UIImage(cgImage: imageRef)
}
catch let error as NSError
{
print("Image generation failed with error \(error)")
return nil
}
}
// Для захвата изображения во время записи видео
func fileOutput(_ output: AVCaptureFileOutput, didFinishRecordingTo outputFileURL: URL, from connections: [AVCaptureConnection], error: Error?) {
print("FINISHED \(String(describing: error ))")
// save video to camera roll
if error == nil {
print("---------------FilePath--------------\(outputFileURL.path)")
UISaveVideoAtPathToSavedPhotosAlbum(outputFileURL.path, nil, nil, nil)
//let asset = AVURLAsset(URL: fileUrl)
print(self.videoPreviewUiimage(fileName: outputFileURL)!)
// self.iconImage.isHidden = true
self.iconImage.image = self.videoPreviewUiimage(fileName: outputFileURL)!
let imageData: Data? = UIImageJPEGRepresentation(self.videoPreviewUiimage(fileName: outputFileURL)!, 0.4)
let imageStr = imageData?.base64EncodedString(options: .lineLength64Characters) ?? ""
// print(strBase64)
print("imageStr\(imageStr)")
// MyAwesomeAlbum.shared.
self.handleCaptureSession()
}
}