本文主要介紹短視頻SDK在iOS端的使用問題。
SDK集成
導入短視頻SDK時,控制臺提示category方法未找到,該如何解決?
在工程target中選擇-ObjC。
,添加Debug包和Release包有什么區別?
Debug包包含模擬器和真機版本,可以保證模擬器編譯通過,本地調試時推薦使用Debug包;Release包只包含真機版本,在提交App Store時必須使用Release包,因為Apple要求動態庫提交不能包含模擬器版本。
導入短視頻SDK后運行crash,提示image not found,該如何解決?
短視頻SDK使用了動態庫,導入動態庫需要在Embedded Binaries中添加對應的framework,詳細操作請參考集成SDK。
短視頻SDK支持bitcode嗎?
短視頻SDK不支持bitcode,需要在設置中把Enable Bitcode設為NO。打包如果出現failed to verify bitcode錯誤,需要取消勾選rebuild for bitcode選項。
提示[NSDictionary oss_dictionaryWithXMLData:]: unrecognized selector sent to class,是什么原因?
未導入上傳SDK,短視頻SDK需要依賴上傳SDK的AliyunOSSiOS.framework
,詳細操作請參見集成SDK。
視頻錄制
普通錄制完成后,獲取不到視頻,該如何解決?
需要在錄制完成回調函數- (void)recorderDidFinishRecording;
里才能獲取到視頻。
如何實現橫屏錄制?
錄制時候設置cameraRotate
角度值,錄制的視頻方向會以第一段視頻的角度值為準。
錄制過程中更換音樂,沒有生效,是什么原因?
錄制過程中不支持更換音樂。
如何實現全屏錄制方案?
- 方案一:和短視頻SDK提供的demo中一致,iphone X上下留黑邊。
- 方案二:可以調整view布局上下撐滿,左右一部分內容不顯示。
視頻裁剪
裁剪提示1008錯誤,該如何解決?
關閉shouldOptimize
選項。
裁剪提示700004錯誤,該如何解決?
輸出路徑未設置,請設置輸出路徑,可通過AliyunCrop的outputPath
參數設置。
如何實現沒有黑邊的裁剪?
根據原始分辨率,做一個縮放,縮放后的分辨率保證是偶數。
如何裁剪一段音樂?
裁剪參數videoSize
和ouptutSize
都無需設置,其他操作和裁剪視頻時的參數保持一致。
視頻編輯
編輯完成后,合成crash,出現報錯提示[null length],該如何解決?
檢查水印路徑(AEPGlobalWatermarkTrack的source參數)是否設置正確。
調用音量接口出現破音,是什么原因?
音量默認值100代表原聲,大于100可能會破音,建議保證音量值設置在0~100。
濾鏡、MV等資源找不到,該如何解決?
資源拷貝到項目中需要用folder方式導入才能保證層級關系,注意在xcode中顯示的文件夾是藍色的。
導入視頻,提示operation not permit,該如何解決?
從系統相冊導入的視頻,需要調用系統接口獲取相冊訪問權限,同時保證對應的AVAseset沒有被銷毀。
加入音頻后,無法調節音量和添加、刪除音效,該如何解決?
注意加入的音頻需要為pcm、mp3等格式的音頻文件,不能為視頻文件。
視頻上傳
上傳報錯,提示沒有授權,該如何解決?
問題現象:上傳報錯,提示沒有授權。
可能原因:通過STS方式上傳時所使用的STS授權已到期。
- 使用阿里云主賬號創建用戶,給用戶授予AliyunSTSAssumeRoleAccess權限。
- 使用用戶創建角色,給角色授予VODFULL權限。
- 通過調用STS的SDK,獲取STS,參考:創建角色并進行STS臨時授權。
說明 調用STS的SDK中的AK必須是RAM用戶的AK。更多關于賬號、RAM用戶及授權的信息請參見賬號和授權。
- 修改policy為點播的VODFULL權限。
String policy = "{\n" +
" \"Version\": \"1\", \n" +
" \"Statement\": [\n" +
" {\n" +
" \"Action\": [\n" +
" \"vod:*\"\n" +
" ], \n" +
" \"Resource\": [\n" +
" \"*\" \n" +
" ], \n" +
" \"Effect\": \"Allow\"\n" +
" }\n" +
" ]\n" +
“}”
上傳過程中斷網,為什么沒有失敗回調?
上傳過程中斷網,會自動重試,如果不想走重試接口,可以手動調用取消上傳的接口。
上傳后的視頻,通過服務端SDK下載的視頻格式為什么是m3u8?
轉碼配置里面,如果勾選了hls選項,則會生成m3u8格式的視頻。
上傳App Store
提交App Store審核時報錯,該如何解決?
問題現象:提示Invalid CFBundleSupportedPlatforms value錯誤。
問題原因:4.3.1和3.15.0版本的QuCore-ThirdParty會存在上述問題。QuCore-ThirdParty中info.plist的CFBundleSupportedPlatforms支持的平臺為iPhoneSimulator。
- 方法一:將info.plist中CFBundleSupportedPlatforms下支持的平臺值改為iPhoneOS。
- 方法二:使用其他QuCore-ThirdParty的版本,推薦版本如下表所示。
QuCore-ThirdParty版本 短視頻SDK版本 ≥ 4.3.2(推薦) ≥ v3.26.0 4.3.1(不推薦) v3.26.0 ~ v3.29.0 4.3.0 v3.24.0 ~ v3.25.1 3.15.0 < v3.24.0