From f0518ea87936b92f2c64eedc004039da2d08ba0b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fernando=20Mart=C3=ADn=20Garc=C3=ADa=20Del=20Angel?= Date: Sun, 25 Nov 2018 13:54:13 -0600 Subject: [PATCH] Added Video Thumbnails Async --- .../UserInterfaceState.xcuserstate | Bin 71704 -> 71046 bytes .../xcdebugger/Breakpoints_v2.xcbkptlist | 12 +++---- .../Controller/DetailViewController.swift | 30 +++++++++++++++--- Musgravite/View/Base.lproj/Main.storyboard | 5 +-- 4 files changed, 35 insertions(+), 12 deletions(-) diff --git a/Musgravite.xcworkspace/xcuserdata/Luna.xcuserdatad/UserInterfaceState.xcuserstate b/Musgravite.xcworkspace/xcuserdata/Luna.xcuserdatad/UserInterfaceState.xcuserstate index 6eeb218a22c5386ba17cb01c38839f5341d2878c..4a7983636146dc7b2152e4183ea6c6662ab10065 100644 GIT binary patch delta 30732 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 af22Rz|Ihyx>;nh>FDKUjFaQ7c-~T^vMB0x4 delta 31188 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 diff --git a/Musgravite.xcworkspace/xcuserdata/Luna.xcuserdatad/xcdebugger/Breakpoints_v2.xcbkptlist b/Musgravite.xcworkspace/xcuserdata/Luna.xcuserdatad/xcdebugger/Breakpoints_v2.xcbkptlist index 79f6512..ce71171 100644 --- a/Musgravite.xcworkspace/xcuserdata/Luna.xcuserdatad/xcdebugger/Breakpoints_v2.xcbkptlist +++ b/Musgravite.xcworkspace/xcuserdata/Luna.xcuserdatad/xcdebugger/Breakpoints_v2.xcbkptlist @@ -10,11 +10,11 @@ ignoreCount = "0" continueAfterRunningActions = "No" filePath = "Musgravite/Controller/DetailViewController.swift" - timestampString = "564866494.833429" + timestampString = "564868373.942006" startingColumnNumber = "9223372036854775807" endingColumnNumber = "9223372036854775807" - startingLineNumber = "195" - endingLineNumber = "195" + startingLineNumber = "197" + endingLineNumber = "197" landmarkName = "getData(_:_:_:)" landmarkType = "7"> @@ -42,11 +42,11 @@ ignoreCount = "0" continueAfterRunningActions = "No" filePath = "Musgravite/Controller/DetailViewController.swift" - timestampString = "564866494.8340271" + timestampString = "564868373.94261" startingColumnNumber = "9223372036854775807" endingColumnNumber = "9223372036854775807" - startingLineNumber = "196" - endingLineNumber = "196" + startingLineNumber = "198" + endingLineNumber = "198" landmarkName = "getData(_:_:_:)" landmarkType = "7"> diff --git a/Musgravite/Controller/DetailViewController.swift b/Musgravite/Controller/DetailViewController.swift index 8a8d7bc..3471e29 100644 --- a/Musgravite/Controller/DetailViewController.swift +++ b/Musgravite/Controller/DetailViewController.swift @@ -14,6 +14,8 @@ import Alamofire import SwiftMessages import WatchConnectivity import MapKit +import CoreMedia +import AVFoundation class DetailViewController: UIViewController, UICollectionViewDelegate, UICollectionViewDataSource, WCSessionDelegate, MKMapViewDelegate, CLLocationManagerDelegate { /* WCSessionDelegate */ @@ -246,19 +248,39 @@ class DetailViewController: UIViewController, UICollectionViewDelegate, UICollec return cell }else if collectionView.tag == 2{ let cell = collectionView.dequeueReusableCell(withReuseIdentifier: "VideoDetailCollectionViewCell", for: indexPath) as! VideoDetailCollectionViewCell - cell.title.text = labInformation!["video"].arrayValue[indexPath.item].stringValue - cell.image.image = UIImage(named: "grad12") + cell.title.text = URL(string: labInformation!["video"].arrayValue[indexPath.item].stringValue)?.lastPathComponent + DispatchQueue.global(qos: .background).async { + let dimage = self.downloadThumbnail(self.labInformation!["video"].arrayValue[indexPath.item].stringValue) + DispatchQueue.main.async { + cell.image.image = dimage + } + } return cell } else if collectionView.tag == 3 { let cell = collectionView.dequeueReusableCell(withReuseIdentifier: "ModelCellView", for: indexPath) as! ModelCollectionViewCell - cell.image.image = UIImage(named: "grad12") - cell.label.text = labInformation!["material"].arrayValue[indexPath.item].stringValue + cell.image.image = UtilityFunctions().getRandomBackground() + cell.label.text = URL(string: labInformation!["material"].arrayValue[indexPath.item].stringValue)?.lastPathComponent return cell } else { return UICollectionViewCell() } } + func downloadThumbnail(_ path:String) -> UIImage { + do { + let asset = AVURLAsset(url: URL(string: path)! , options: nil) + let imgGenerator = AVAssetImageGenerator(asset: asset) + imgGenerator.appliesPreferredTrackTransform = true + let cgImage = try imgGenerator.copyCGImage(at: CMTimeMake(value: 0, timescale: 1), actualTime: nil) + let thumbnail = UIImage(cgImage: cgImage) + return thumbnail + } catch let error { + print("*** Error generating thumbnail: \(error.localizedDescription)") + return UIImage() + } + } + + func collectionView(_ collectionView: UICollectionView, didSelectItemAt indexPath: IndexPath) { if collectionView.tag == 1 { return diff --git a/Musgravite/View/Base.lproj/Main.storyboard b/Musgravite/View/Base.lproj/Main.storyboard index 0fffde4..d5d08dc 100644 --- a/Musgravite/View/Base.lproj/Main.storyboard +++ b/Musgravite/View/Base.lproj/Main.storyboard @@ -644,7 +644,7 @@ - +