#import <Photos/Photos.h>
// MARK:壓縮視頻
+ (void)convertVideoQuailtyWithInputURL:(NSURL *)inputURL completeHandler:(void (^)(NSData *videoData))handler {
NSDateFormatter *formater = [[NSDateFormatter alloc] init];
[formater setDateFormat:@"yyyy-MM-dd-HH:mm:ss"];
NSString *fileName = [formater stringFromDate:[NSDate date]];
NSString *videoFileName = [NSString stringWithFormat:@"Video_%@.mp4", fileName];
//保存至沙盒路徑
NSString *pathDocuments = [NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES) objectAtIndex:0];
NSString *videoPath = [NSString stringWithFormat:@"%@/VideoInfo", pathDocuments];
NSString *videoFilePath = [videoPath stringByAppendingPathComponent:videoFileName];
AVURLAsset *avAsset = [AVURLAsset URLAssetWithURL:inputURL options:nil];
AVAssetExportSession *exportSession = [[AVAssetExportSession alloc] initWithAsset:avAsset presetName:AVAssetExportPresetMediumQuality];
exportSession.outputURL = [NSURL fileURLWithPath:videoFilePath];
exportSession.outputFileType = AVFileTypeMPEG4;
exportSession.shouldOptimizeForNetworkUse = YES;
__block NSData *data;
[exportSession exportAsynchronouslyWithCompletionHandler:^(void) {
switch (exportSession.status) {
case AVAssetExportSessionStatusCancelled:
NSLog(@"AVAssetExportSessionStatusCancelled");
break;
case AVAssetExportSessionStatusUnknown:
NSLog(@"AVAssetExportSessionStatusUnknown");
break;
case AVAssetExportSessionStatusWaiting:
NSLog(@"AVAssetExportSessionStatusWaiting");
break;
case AVAssetExportSessionStatusExporting:
NSLog(@"AVAssetExportSessionStatusExporting");
break;
case AVAssetExportSessionStatusCompleted:
data = [NSData dataWithContentsOfFile:videoFilePath];
NSLog(@"------視頻大小%zd", data.length);
handler(data);
break;
case AVAssetExportSessionStatusFailed:
NSLog(@"AVAssetExportSessionStatusFailed");
break;
}
}];
}
視頻壓縮
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。
相關(guān)閱讀更多精彩內(nèi)容
- 首先需要下載ffmpeg.exe,下載后在D盤(pán)建一個(gè)文件夾,名字叫:ffmpeg,把這個(gè)程序移到文件夾中,同時(shí)將要...
- 在這個(gè)全民直播時(shí)代,用戶(hù)對(duì)視覺(jué)信息表達(dá)越來(lái)越重視,也越來(lái)越強(qiáng)調(diào)提高視頻主觀質(zhì)量的需求,今天,我們就帶著這些用戶(hù)問(wèn)題...
- 1、MacOS 10.12 Sierra 安全性與隱私?jīng)]有任何來(lái)源選項(xiàng)解決方法 2、iOS開(kāi)發(fā)調(diào)試Reveal使用...
- 和弗蘭克老師學(xué)習(xí)寫(xiě)作收獲的幾個(gè)改變 弗蘭克老師是我喜歡的一個(gè)老師,真心的付出。在寫(xiě)作課程中干貨滿(mǎn)滿(mǎn),尤其是在心得上...