阿里云短視頻SDK for iOS —— (一)集成與基礎(chǔ)拍攝

當前短視頻類APP如潮水一般席卷各大應(yīng)用市場矿瘦,各類短視頻SDK也層出不窮。由于項目需要,前段時間接觸了阿里云短視頻SDK洪囤。我整理了開發(fā)過程中的關(guān)鍵點以及踩過的坑,進行一些分享撕氧。

系統(tǒng)版本

支持iOS8.0及以上版本

SDK集成

短視頻SDK依賴四個Framework如下:

  • 動態(tài)庫:

AliyunVideoSDKPro
QuCore-ThirdParty

  • 靜態(tài)庫:

VODUpload
AliyunOSSiOS

手動集成方式

  1. 打開工程瘤缩,選擇目標”TARGETS”,選擇”General”->”Embededed Binaries”,單擊”+”號伦泥,單擊“Add Other…”,導入

AliyunVideoSDKPro.framework
QuCore-ThirdParty.framework

  1. 打開工程剥啤,選擇目標TARGETS锦溪,選擇”General”->”Linked Frameworks And Libraries”,單擊”+”號,單擊“Add Other…”,導入

AliyunOSSiOS.framework
VODUpload.framework

  1. 打開工程府怯,選擇目標”TARGETS”刻诊,選擇”General”->”Linked Frameworks And Libraries”,單擊”+”號,依賴

libz.tbd
ImageIO.framework
CoreMedia.framework
CoreVideo.framework
VideoToolBox.framework
MediaPlayer.framework
OpenAL.framework
libc++.tbd
libsqlite3.tbd
libiconv.tbd

  • 注意:其中富腊,AliyunVideoSDKPro.frameworkQuCore-ThirdParty.framework是動態(tài)庫坏逢,需要在”TARGETS” -> ”General” -> ”Embedded Binaries”中導入。

  • 集成結(jié)果如下圖所示


    image.png

    image.png

基礎(chǔ)拍攝

  1. 引用文件
#import <AliyunVideoSDKPro/AliyunVideoSDKPro.h>
  1. 創(chuàng)建 recorder 屬性
@property (nonatomic,strong) AliyunIRecorder *recorder;
  1. 初始化 recorder
_recorder = [[AliyunIRecorder alloc] initWithDelegate:self videoSize:CGSizeMake(720, 1280)];

// 預覽視圖赘被,必須設(shè)置
_recorder.preview = self.view;

//  攝像頭角度
_recorder.cameraRotate = 270;

/*
視頻的輸出路徑
注意:若上一次錄制的 outputPath 路徑的視頻存在沙盒里沒有刪除是整,并且與本次錄制的視頻路徑且相同重名的話,錄制將會失敗
*/
_recorder.outputPath = outputPath;

// 視頻的輸出類型
_recorder.outputType = AliyunIRecorderVideoOutputPixelFormatType420f;

/*
文件配置路徑
注意:若上一次錄制的 taskPath  路徑的視頻存在沙盒里沒有刪除民假,并且與本次錄制的視頻路徑相且同重名的話浮入,錄制將會失敗
*/
_recorder.taskPath = taskPath;

// 美顏狀態(tài)
_recorder.beautifyStatus = YES;

// 設(shè)置美顏度 [0,100]
_recorder.beautifyValue = 0;

// 使用自帶人臉識別,開啟該功能羊异,系統(tǒng)會在檢測到有人臉動圖加入時自動進行追蹤顯示
_recorder.useFaceDetect = YES;

// 后置攝像頭采集分辨率 默認:AVCaptureSessionPreset640x480
_recorder.backCaptureSessionPreset = AVCaptureSessionPreset1280x720;

// 前置攝像頭采集分辨率 默認:AVCaptureSessionPreset640x480
_recorder.frontCaptureSessionPreset = AVCaptureSessionPreset1280x720;

// 設(shè)置識別人臉的個數(shù)  最大是3個 最小是1個  如果不需要檢測人臉 使用:useFaceDetect = NO
_recorder.faceDetectCount = 2;

// 開始預覽事秀,cameraPosition 攝像頭位置(前置、后置)
[_recorder startPreviewWithPositon:AliyunIRecorderCameraPositionBack];
    
// 設(shè)置視頻最大時長 默認8
_recorder.clipManager.maxDuration = 30;

// 初始化拍攝時的音樂對象野舶,
AliyunEffectMusic *music = [[AliyunEffectMusic alloc] initWithFile:musicUrl];
music.startTime = 0;
music.duration = 30;

// 為拍攝的視頻添加音樂
[_recorder applyMusic:music];
  1. 開始拍攝
[_recorder startRecording];
  1. 停止拍攝
[_recorder stopRecording];
  1. 結(jié)束拍攝(支持斷點拍攝易迹,stopRecording方法為斷點)
[_recorder finishRecording];
  1. AliyunIRecorderDelegate 的代理方法
// 錄制實時時長
- (void)recorderVideoDuration:(CGFloat)duration;

// 開始預覽回調(diào)
- (void)recorderDidStartPreview;

// 停止錄制回調(diào)
- (void)recorderDidStopRecording;

// 當錄至最大時長時回調(diào)
- (void)recorderDidStopWithMaxDuration;

// 結(jié)束錄制回調(diào)
- (void)recorderDidFinishRecording;

// 錄制異常
- (void)recoderError:(NSError *)error;
  • 當執(zhí)行完 recorderDidFinishRecording 這個代理方法,就代表最基礎(chǔ)的拍攝功能已經(jīng)完成了平道。阿里云短視頻SDK 還提供了很多強大的短視頻的 拍攝睹欲,編輯 功能,我將在以后的文章中進行更多的整理一屋,敬請期待~
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末窘疮,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子冀墨,更是在濱河造成了極大的恐慌闸衫,老刑警劉巖,帶你破解...
    沈念sama閱讀 217,406評論 6 503
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件诽嘉,死亡現(xiàn)場離奇詭異蔚出,居然都是意外死亡,警方通過查閱死者的電腦和手機虫腋,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,732評論 3 393
  • 文/潘曉璐 我一進店門身冬,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人岔乔,你說我怎么就攤上這事」銮” “怎么了雏门?”我有些...
    開封第一講書人閱讀 163,711評論 0 353
  • 文/不壞的土叔 我叫張陵嘿歌,是天一觀的道長。 經(jīng)常有香客問我茁影,道長宙帝,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,380評論 1 293
  • 正文 為了忘掉前任募闲,我火速辦了婚禮步脓,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘浩螺。我一直安慰自己靴患,他們只是感情好,可當我...
    茶點故事閱讀 67,432評論 6 392
  • 文/花漫 我一把揭開白布要出。 她就那樣靜靜地躺著鸳君,像睡著了一般。 火紅的嫁衣襯著肌膚如雪患蹂。 梳的紋絲不亂的頭發(fā)上或颊,一...
    開封第一講書人閱讀 51,301評論 1 301
  • 那天,我揣著相機與錄音传于,去河邊找鬼囱挑。 笑死,一個胖子當著我的面吹牛沼溜,可吹牛的內(nèi)容都是我干的平挑。 我是一名探鬼主播,決...
    沈念sama閱讀 40,145評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼盛末,長吁一口氣:“原來是場噩夢啊……” “哼弹惦!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起悄但,我...
    開封第一講書人閱讀 39,008評論 0 276
  • 序言:老撾萬榮一對情侶失蹤棠隐,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后檐嚣,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體助泽,經(jīng)...
    沈念sama閱讀 45,443評論 1 314
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,649評論 3 334
  • 正文 我和宋清朗相戀三年嚎京,在試婚紗的時候發(fā)現(xiàn)自己被綠了嗡贺。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 39,795評論 1 347
  • 序言:一個原本活蹦亂跳的男人離奇死亡鞍帝,死狀恐怖诫睬,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情帕涌,我是刑警寧澤摄凡,帶...
    沈念sama閱讀 35,501評論 5 345
  • 正文 年R本政府宣布续徽,位于F島的核電站,受9級特大地震影響亲澡,放射性物質(zhì)發(fā)生泄漏钦扭。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 41,119評論 3 328
  • 文/蒙蒙 一床绪、第九天 我趴在偏房一處隱蔽的房頂上張望客情。 院中可真熱鬧,春花似錦癞己、人聲如沸膀斋。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,731評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽概页。三九已至,卻和暖如春练慕,著一層夾襖步出監(jiān)牢的瞬間惰匙,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 32,865評論 1 269
  • 我被黑心中介騙來泰國打工铃将, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留项鬼,地道東北人。 一個月前我還...
    沈念sama閱讀 47,899評論 2 370
  • 正文 我出身青樓劲阎,卻偏偏與公主長得像绘盟,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子悯仙,可洞房花燭夜當晚...
    茶點故事閱讀 44,724評論 2 354