iOSサンドボックスのビデオサムネイルとローカルコードの保存


本論文の例では、iOSのビデオのサムネイルを共有し、ローカルの具体的なコードを保存します。参考にしてください。具体的な内容は以下の通りです。
サムネイルを取得

func thumbnailOfVideo(path : String)-> UIImage {
 do {
  let asset = AVURLAsset(url: URL(fileURLWithPath: path), options: nil)
  let imgGenerator = AVAssetImageGenerator(asset: asset)
  imgGenerator.appliesPreferredTrackTransform = true
  let cgImage = try imgGenerator.copyCGImage(at: CMTimeMakeWithSeconds(1, 24), actualTime: nil)
  let uiImage = UIImage(cgImage: cgImage)
  return uiImage
 } catch {
  return UIImage(named: "default_figure")!
 }
}
システムアルバムに保存

#import <AssetsLibrary/AssetsLibrary.h>
- (void)saveVideoIntoAlbum {
 NSString *fileDirectory = 
 NSFileManager *fileManager = [NSFileManager defaultManager];
 NSArray *fileArray = [fileManager contentsOfDirectoryAtPath:fileDirectory error:nil];
 NSString *filePath = [fileDirectory stringByAppendingPathComponent:[fileArray lastObject]];
 NSURL *fileUrl = [NSURL fileURLWithPath:filePath];
 
 NSLog(@"fileUrl = %@", fileUrl);
 ALAssetsLibrary *assetslibrary = [[ALAssetsLibrary alloc] init];
 
 if ([assetslibrary videoAtPathIsCompatibleWithSavedPhotosAlbum:fileUrl]) {
  [assetslibrary writeVideoAtPathToSavedPhotosAlbum:fileUrl completionBlock:^(NSURL *assetURL, NSError *error) {
   NSLog(@"%@-----%@", assetURL, error);
  }];
 } else {
  
 }
}
以上が本文の全部です。皆さんの勉強に役に立つように、私たちを応援してください。