【iOS開(kāi)發(fā)】制作一個(gè)簡(jiǎn)易的濾鏡相機(jī)(一)

我們接著上一篇廢話篙悯,這回保證有干貨靶剑!

  1. 打開(kāi)上次的工程浅浮。找到ViewController.h

  2. 引用GPUImage頭文件#import "GPUImage.h"

  3. 添加三個(gè)成員

     @interface ViewController : UIViewController
     {
       GPUImageVideoCamera *_videoCamera;
       GPUImageOutput<GPUImageInput> *_filter;
       GPUImageMovieWriter *_movieWriter;
     }
    

顧名思義旭寿,
GPUImageVideoCamera用來(lái)創(chuàng)建攝像頭實(shí)例;
GPUImageOutput<GPUImageInput>用來(lái)處理濾鏡溅话,這里沒(méi)有用Filter來(lái)命名類名因?yàn)镚PUImage的接口做的非常通用晓锻,濾鏡只是圖像輸出的一種情況;
GPUImageMovieWriter當(dāng)然就是寫文件的類了飞几,把攝像頭捕獲的幀數(shù)據(jù)寫入文件砚哆。

  1. 在ViewController.m->viewDidLoad末尾添加以下代碼

     // 1. Initialize camera
     _videoCamera = [[GPUImageVideoCamera alloc] initWithSessionPreset:AVCaptureSessionPresetiFrame960x540 cameraPosition:AVCaptureDevicePositionBack];
     _videoCamera.outputImageOrientation = UIInterfaceOrientationPortrait;
     _videoCamera.horizontallyMirrorFrontFacingCamera = NO;
     _videoCamera.horizontallyMirrorRearFacingCamera = NO;
    
     // 2. Add camera view to current view
     GPUImageView *filterView = (GPUImageView *)self.view;
     [_videoCamera addTarget:filterView];
     [_videoCamera startCameraCapture];
    

960x540和官方demo里的640x480不一樣,960的是寬屏屑墨,經(jīng)我多次嘗試以后定下的尺寸躁锁,兼顧寬屏,性能和畫面質(zhì)量卵史。

  1. 是不是很簡(jiǎn)單战转?運(yùn)行一下?我猜以躯,app崩潰了槐秧。是不是報(bào)這個(gè)錯(cuò)?
    -[UIView nextAvailableTextureIndex]: unrecognized selector sent to instance
  2. 好了忧设,不開(kāi)玩笑刁标。那是因?yàn)槲覀冞€沒(méi)有設(shè)置ViewController的view是什么類,默認(rèn)為UIView當(dāng)然找不到GPUImageView類提供的方法址晕。
    到storyboard中選中controller里的view


    1.png

    2.png
  3. 好了膀懈,再運(yùn)行,完美谨垃!


    圖片發(fā)自簡(jiǎn)書App

至此……
誒不行不行启搂,這個(gè)效果我用AVFoundation也可以做啊刘陶!
那么加個(gè)濾鏡吧狐血,不然真的浪費(fèi)了這么強(qiáng)大的庫(kù)。

  1. 在之前的第二段代碼(看注釋)上方加入以下代碼

     // 3. Set filter
     _filter = [[GPUImageSepiaFilter alloc] init];
     [_videoCamera addTarget:_filter];
    
  2. 第二段代碼中有一句要改掉
    [_videoCamera addTarget:filterView];
    改成
    [_filter addTarget:filterView];
    沒(méi)錯(cuò)易核,相機(jī)加到濾鏡實(shí)例上再加到view上面。

  3. 看看效果


    圖片發(fā)自簡(jiǎn)書App

這篇先寫到這里浪默,接下來(lái)還有很多事情等著我們?nèi)ヒ徊揭徊酵晟颇抵保?qǐng)耐心等待缀匕。下一篇中我們要實(shí)現(xiàn)按鍵錄像并進(jìn)行保存。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末碰逸,一起剝皮案震驚了整個(gè)濱河市乡小,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌饵史,老刑警劉巖满钟,帶你破解...
    沈念sama閱讀 216,372評(píng)論 6 498
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異胳喷,居然都是意外死亡湃番,警方通過(guò)查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,368評(píng)論 3 392
  • 文/潘曉璐 我一進(jìn)店門吭露,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)吠撮,“玉大人,你說(shuō)我怎么就攤上這事讲竿∧嗬迹” “怎么了?”我有些...
    開(kāi)封第一講書人閱讀 162,415評(píng)論 0 353
  • 文/不壞的土叔 我叫張陵题禀,是天一觀的道長(zhǎng)鞋诗。 經(jīng)常有香客問(wèn)我,道長(zhǎng)迈嘹,這世上最難降的妖魔是什么削彬? 我笑而不...
    開(kāi)封第一講書人閱讀 58,157評(píng)論 1 292
  • 正文 為了忘掉前任,我火速辦了婚禮江锨,結(jié)果婚禮上吃警,老公的妹妹穿的比我還像新娘。我一直安慰自己啄育,他們只是感情好酌心,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,171評(píng)論 6 388
  • 文/花漫 我一把揭開(kāi)白布。 她就那樣靜靜地躺著挑豌,像睡著了一般安券。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上氓英,一...
    開(kāi)封第一講書人閱讀 51,125評(píng)論 1 297
  • 那天侯勉,我揣著相機(jī)與錄音,去河邊找鬼铝阐。 笑死址貌,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播练对,決...
    沈念sama閱讀 40,028評(píng)論 3 417
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼遍蟋,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來(lái)了螟凭?” 一聲冷哼從身側(cè)響起虚青,我...
    開(kāi)封第一講書人閱讀 38,887評(píng)論 0 274
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎螺男,沒(méi)想到半個(gè)月后棒厘,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,310評(píng)論 1 310
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡下隧,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,533評(píng)論 2 332
  • 正文 我和宋清朗相戀三年奢人,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片汪拥。...
    茶點(diǎn)故事閱讀 39,690評(píng)論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡达传,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出迫筑,到底是詐尸還是另有隱情宪赶,我是刑警寧澤,帶...
    沈念sama閱讀 35,411評(píng)論 5 343
  • 正文 年R本政府宣布脯燃,位于F島的核電站搂妻,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏辕棚。R本人自食惡果不足惜欲主,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,004評(píng)論 3 325
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望逝嚎。 院中可真熱鬧扁瓢,春花似錦、人聲如沸补君。這莊子的主人今日做“春日...
    開(kāi)封第一講書人閱讀 31,659評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)挽铁。三九已至伟桅,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間叽掘,已是汗流浹背楣铁。 一陣腳步聲響...
    開(kāi)封第一講書人閱讀 32,812評(píng)論 1 268
  • 我被黑心中介騙來(lái)泰國(guó)打工, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留更扁,地道東北人盖腕。 一個(gè)月前我還...
    沈念sama閱讀 47,693評(píng)論 2 368
  • 正文 我出身青樓赫冬,卻偏偏與公主長(zhǎng)得像,于是被迫代替她去往敵國(guó)和親赊堪。 傳聞我的和親對(duì)象是個(gè)殘疾皇子面殖,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,577評(píng)論 2 353

推薦閱讀更多精彩內(nèi)容