1. 下載SDK
iOS短視頻SDK標(biāo)準(zhǔn)版 ->下載鏈接
2. 工程配置
工程配置要注意,下載好的SDK里面有個(gè)工程配置(iOS).pdf,騰訊云文檔里面也有個(gè)工程配置,需要結(jié)合二者里面的說明才能配置好。以下是總結(jié):
1. 將下載下來的TXLiteAVSDK_UGC.framework拷貝至工程目錄;
2. 在工程中添加TXLiteAVSDK_UGC.framework;
3. 添加以下系統(tǒng)依賴庫:
1. VideoToolbox.framework
2. SystemConfiguration.framework
3. CoreTelephony.framework
4. AVFoundation.framework
5. CoreMedia.framework
6. CoreGraphics.framework
7. libstdc++.tbd
8. libz.tbd
9. libiconv.tbd
10. libresolv.tbd
11. Accelerate.framework
4. 由于TXLiteAVSDK_UGC.framework不包含Bitcode,得在工程中設(shè)置Bitcode為NO:
Build Settings -> Build Options -> Enable Bitcode
5. 添加-ObjC
SDK用到了一些類別的方法,加載類別方法需要在工程配置:
Build Settings -> Linking -> Other Linker Flags 添加 -ObjC
3. 畫面預(yù)覽
#import"TXLiteAVSDK_UGC/TXUGCRecord.h"http://遵守協(xié)議
//畫面預(yù)覽UIView*preViewContainer = [[UIViewalloc] initWithFrame:CGRectMake(0,0,320,320)];//準(zhǔn)備一個(gè)預(yù)覽攝像頭畫面的 viewTXUGCSimpleConfig*config = [[TXUGCSimpleConfigalloc]init];//config.videoQuality = VIDEO_QUALITY_LOW;? // 360p, 10秒鐘視頻大約0.75Mconfig.videoQuality? =VIDEO_QUALITY_MEDIUM;// 540p, 10秒鐘視頻大約 1.5M (編碼參數(shù)同微信iOS版小視頻)//config.videoQuality = VIDEO_QUALITY_HIGH; // 720p, 10秒鐘視頻大約? 3Mconfig.frontCamera? ? =YES;//是否前置攝像頭,使用 switchCamera 可以切換config.minDuration? ? =5;//視頻錄制的最小時(shí)長config.maxDuration? ? =60;//視頻錄制的最大時(shí)長[TXUGCRecordshareInstance].recordDelegate =self;[[TXUGCRecordshareInstance] startCameraSimple:config preview:preViewContainer];[self.view addSubview:preViewContainer];
//關(guān)閉攝像頭- (IBAction)dissmissVC:(id)sender {? ? [selfdismissViewControllerAnimated:YEScompletion:^{//頁面dissmiss之后需要關(guān)閉攝像頭,倘若不關(guān)閉攝像頭,下次進(jìn)來會(huì)打不開。[[TXUGCRecordshareInstance] stopCameraPreview];? ? }];}
4. 錄制視頻
[[TXUGCRecordshareInstance] startRecord];//開始錄制[[TXUGCRecordshareInstance] stopRecord];//結(jié)束錄制
5. 視頻預(yù)覽
#import"TXLiteAVSDK_UGC/TXVodPlayer.h"http://遵守協(xié)議 @interfaceYSPreViewVC(){TXVodPlayer*_txVodPlayer;//這個(gè)播放器一定要設(shè)置成全局變量,不然播放不了……}
_txVodPlayer = [[TXVodPlayeralloc]init];[_txVodPlayer setupVideoWidget:self.view insertIndex:0];_txVodPlayer.vodDelegate =self;[_txVodPlayer startPlay:_localVideoPath];
6. 未完待續(xù)……
升級(jí)SDK至5.0及以上(集成短視頻 licence)
1. 下載最新的SDK至本地,并替換掉工程中的舊版本SDK;
2. 去控制臺(tái)配置 licence 并將 TXUgcSDK.licence 下載至本地,添加到工程目錄;
3. 由于新版本SDK將發(fā)布視頻接口獨(dú)立出來,得去“TXUGCUploadDemo”里面將“upload”文件夾拷貝至工程目錄,并修改對(duì)應(yīng)的import路徑;
4. 新版的TXPublishParam,將封面圖改成了路徑,舊版的是圖片對(duì)象,這里得將圖片對(duì)象先保存到本地,再將本地路徑賦值給TXPublishParam的coverPath:
//保存封面圖到本地NSString*docPath = [NSSearchPathForDirectoriesInDomains(NSDocumentDirectory,NSUserDomainMask,YES) objectAtIndex:0];NSString*filePath = [docPath stringByAppendingPathComponent:@"tmpCoveImage.jpg"];NSFileManager*fileManager = [NSFileManagerdefaultManager];if([fileManager fileExistsAtPath:filePath]) {? ? [fileManager removeItemAtPath:filePath error:nil];}NSData*coveImageData =UIImageJPEGRepresentation(videoInfo.coverImage,0.8);[coveImageData writeToFile:filePath atomically:YES];
//獲取本地封面圖路徑NSString*docPath = [NSSearchPathForDirectoriesInDomains(NSDocumentDirectory,NSUserDomainMask,YES) objectAtIndex:0];NSString*filePath = [docPath stringByAppendingPathComponent:@"tmpCoveImage.jpg"];param.coverPath = filePath;// 錄制生成的視頻首幀預(yù)覽圖路徑
5.在AppDelegate.m文件中設(shè)置LicenseUrl和Key:
#import[TXUGCBasesetLicenceURL:@"LicenseUrl"key:@"Key"];
作者:winsonGali
鏈接:http://www.itdecent.cn/p/cb81c4e1fc2e
來源:簡書
簡書著作權(quán)歸作者所有,任何形式的轉(zhuǎn)載都請(qǐng)聯(lián)系作者獲得授權(quán)并注明出處。