iOS 視訊新增濾鏡效果
為視訊新增濾鏡效果的思路如下
1.使用AVPlayer + CIFilter進行渲染
參考文件 Processing Video with AV Foundation
關鍵程式碼
//1
AVURLAsset *asset1 = [AVURLAsset assetWithURL:[NSURL fileURLWithPath:[[NSBundle mainBundle] pathForResource:@"sample_clip1" ofType:@"m4v"]]];
//2
CIFilter *filter = [CIFilter filterWithName:@"CIGaussianBlur"];
AVVideoComposition *composition1 = [AVVideoComposition videoCompositionWithAsset:asset1 applyingCIFiltersWithHandler:^(AVAsynchronousCIImageFilteringRequest * _Nonnull request) {
//3
CIImage *source = request.sourceImage.imageByClampingToExtent;
int currentTime = request.compositionTime.value / request.compositionTime.timescale;
if (currentTime < 3) {
[request finishWithImage:source context:nil];
} else {
[filter setValue:source forKey:kCIInputImageKey];
//4
CIImage *output = [filter.outputImage imageByCroppingToRect:request.sourceImage.extent];
[request finishWithImage:output context:nil];
}
}];
//5
AVPlayerItem *item = [[AVPlayerItem alloc] initWithAsset:asset1];
item.videoComposition = composition;
步驟1:讀取本地的視訊路徑
步驟2:設定CIFilter效果,使用AVVideoComposition處理渲染過程
步驟3:獲取視訊幀並轉換成CIImage以供CIFilter進行渲染,可以設定渲染的時間
步驟4:將渲染完成的CIImage返還給request
步驟5:將視訊組成裝入播放檔案中播放即可
存在問題:
1.播放與匯出時加入濾鏡的情況下cpu佔用100%
例項參見 github Demo
相關文章
- Flutter 圖片加濾鏡效果Flutter
- Canvas系列之一——濾鏡效果Canvas
- iOS 視訊剪下、旋轉,視訊新增音訊、新增水印,視訊匯出iOS音訊
- 前端 -- 頁面濾鏡效果及高斯模糊效果前端
- Android 濾鏡效果和顏色通道過濾Android
- svg濾鏡效果程式碼例項SVG
- 使用AS3.0程式碼實現給圖片新增濾鏡的模糊與斜角效果S3
- 影像濾鏡藝術----Brannan濾鏡NaN
- 神奇濾鏡,打造炫酷視覺效果——Alien Skin Eye Candy 7外掛視覺
- 手機QQ安卓版6.6.0釋出:視訊通話支援濾鏡安卓
- SceneKit_中級10_濾鏡效果製作
- CoreImage濾鏡效果及API引數介紹(五)API
- [OpenGL]未來視覺4-Native層濾鏡新增視覺
- JavaCV 視訊濾鏡(LOGO、滾動字幕、畫中畫、NxN宮格)JavaGo
- 短視訊商城在ios短視訊開發上的應用效果iOS
- 使用顏色濾鏡效果的20個經典網站網站
- SVG <filter> 濾鏡SVGFilter
- CSS濾鏡(filter)CSSFilter
- GPUImage濾鏡列表GPUUI
- 美顏濾鏡SDK的智慧濾鏡與傳統顏色濾鏡有什麼區別?
- Facebook視訊「整容」濾鏡助你逃避人臉識別:熟人認得出,但AI不能AI
- Facebook視訊整容濾鏡助你逃避人臉識別:熟人認得出,但AI不能AI
- DxO FilmPack 7 for Mac(ps膠片效果濾鏡)7.0.1.473啟用版Mac
- 直播app系統原始碼,對視訊新增擦拭去除效果APP原始碼
- 【CSS濾鏡的使用】CSS
- 創意效果影像處理PS濾鏡Nik Collection 5套裝中文
- 手繪畫效果濾鏡軟體:Snap Art 4 for mac 中文版Mac
- 美顏SDK濾鏡功能有哪些常用的濾鏡演算法演算法
- Premiere溶解過渡效果怎麼做怎麼做? PR視訊新增溶解效果的技巧REM
- Imagenomic Realgrain 2 for Mac(PS膠片效果濾鏡)2.1.4啟用版AIMac
- PR視訊訊號故障效果怎麼做? Premiere視訊數字故障效果的教程REM
- 使用iOS 8 SDK新增毛玻璃(Blur)效果iOS
- iOS使用AVFoundation在視訊上新增字幕以及控制字幕時間iOS
- CSS圖片濾鏡灰度CSS
- GPUImage濾鏡之銳化GPUUI
- PS濾鏡功能詳解
- IOS音視訊(二)AVFoundation視訊捕捉iOS
- Premiere視訊重影效果怎麼做?Premiere製作視訊重影效果的方法REM