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 {
}
}
以上が本文の全部です。皆さんの勉強に役に立つように、私たちを応援してください。