短視頻sdk:選擇一個(gè)靠譜的短視頻SDK你需要了解這些-創(chuàng)新互聯(lián)

2017 年,短視頻成為了內(nèi)容創(chuàng)業(yè)的新風(fēng)口,各種短視頻 App 如雨后春筍般先后上線。隨著互聯(lián)網(wǎng)內(nèi)容消費(fèi)升級(jí),視頻越來(lái)越像文字、圖片一樣,成為每一個(gè) App 不可或缺的一部分。

創(chuàng)新互聯(lián)公司一直通過(guò)網(wǎng)站建設(shè)和網(wǎng)站營(yíng)銷幫助企業(yè)獲得更多客戶資源。 以"深度挖掘,量身打造,注重實(shí)效"的一站式服務(wù),以網(wǎng)站建設(shè)、做網(wǎng)站、移動(dòng)互聯(lián)產(chǎn)品、網(wǎng)絡(luò)營(yíng)銷推廣服務(wù)為核心業(yè)務(wù)。十年網(wǎng)站制作的經(jīng)驗(yàn),使用新網(wǎng)站建設(shè)技術(shù),全新開發(fā)出的標(biāo)準(zhǔn)網(wǎng)站,不但價(jià)格便宜而且實(shí)用、靈活,特別適合中小公司網(wǎng)站制作。網(wǎng)站管理系統(tǒng)簡(jiǎn)單易用,維護(hù)方便,您可以完全操作網(wǎng)站資料,是中小公司快速網(wǎng)站建設(shè)的選擇。

為了能夠更好地聚焦于業(yè)務(wù),早日完成短視頻 App 的上線,越來(lái)越多的公司傾向于選擇一家靠譜的短視頻 SDK 來(lái)起步,怎么定義靠譜?要關(guān)注哪些指標(biāo)??jī)H功能滿足就可以了嗎? —— 顯然不夠。如果只是看下功能列表和商業(yè)版授權(quán)價(jià)格,不考慮開發(fā)易用性,最后還是要吃苦頭走很多彎路的。

那么如何選擇短視頻 SDK ?站在 App 開發(fā)者的角度列了下面這份自檢清單供大家參考

1. 包體是否足夠小

App 的包體大小,對(duì)獲取用戶有著至關(guān)重要的作用,特別是在線下的推廣活動(dòng)中,包體太大,下載費(fèi)時(shí)費(fèi)流量,很多用戶會(huì)失去耐心,從而直接導(dǎo)致 App 的推廣效果大打折扣。

而 App 的包體大小,除了自身的代碼量,也會(huì)受到第三方庫(kù)的包體影響,因此,短視頻 SDK 包體越小,對(duì)于減小 App 包體大小越有幫助,開發(fā)者才會(huì)越喜歡。

那么,如何做到盡可能的減小 SDK 的包體呢 ?

  • 盡一切努力使用 Android/iOS 系統(tǒng)原生的 API,不怕難用,不怕踩坑

  • 良好的模塊劃分,不同的功能生成不同的動(dòng)態(tài)庫(kù),客戶可選擇性的拆卸和裁剪

  • 所使用的第三方庫(kù),充分配置編譯選項(xiàng)和功能裁剪,只打包必須的功能、單獨(dú)抽離所需的模塊.

2. SDK 是否開放

使用第三方的 SDK,最怕的是像個(gè)黑盒,過(guò)于封閉,想配置的參數(shù)無(wú)法配置,需要的狀態(tài)也沒(méi)有回調(diào),直接導(dǎo)致產(chǎn)品經(jīng)理給出的 UI 和交互方案無(wú)法實(shí)現(xiàn)。因此,SDK 的開放性,越來(lái)越成為開發(fā)者選型的關(guān)鍵因素。

那么,SDK 如何做到盡可能的開放呢 ?

  • 凡可配置的參數(shù),一律提供配置,比如:攝像頭參數(shù)、編解碼參數(shù)、美顏參數(shù)、混音參數(shù)等等

  • 凡可回調(diào)的數(shù)據(jù),一律提供回調(diào),比如:攝像頭采集的視頻幀、紋理 ID,麥克風(fēng)采集的音頻幀等等

  • 凡運(yùn)行過(guò)程中的狀態(tài),一律提供通知,比如:拍攝狀態(tài)、轉(zhuǎn)碼進(jìn)度、取消事件等等

另外,還需要盡可能地跟 SDK 上下游廠商建立良好的合作關(guān)系,比如 美顏、濾鏡、人臉貼紙?zhí)匦?、大眼瘦臉等供?yīng)商,讓客戶可以隨時(shí)快速接入和替換任意一家廠商,從而加快產(chǎn)品迭代和上線的速度。

3. 性能是否足夠好

雖然手機(jī)的性能越來(lái)越強(qiáng)大,但 CPU 使用率居高不下、發(fā)熱厲害、內(nèi)存消耗大、運(yùn)行速度慢的 App 非常影響用戶體驗(yàn),因此,無(wú)論是 App 本身,而是第三方 SDK,性能永遠(yuǎn)是值得關(guān)注的重點(diǎn)。

SDK 如何做到更好的性能呢 ?其實(shí)就一條:充分地利用 GPU,盡一切可能減少 CPU 消耗,對(duì)于短視頻 SDK 的開發(fā),具體有哪些值得關(guān)注的點(diǎn)呢 ?

  • 音視頻編解碼盡可能地使用硬編/硬解

  • 視頻/圖像的處理,盡可能使用 OpenGL,包括:美顏、濾鏡、水印、剪裁、旋轉(zhuǎn)等等

  • 盡可能更高效地編寫 OpenGL 代碼,使用一些提高效果的特性,包括:VBO, VAO, FBO, PBO 等等

  • 動(dòng)態(tài)管理 so,沒(méi)有用到的不加載;動(dòng)態(tài)管理內(nèi)存,使用時(shí)再分配

  • 合并處理流程,各種音視頻特效和處理,依次記錄狀態(tài),待保存的時(shí)候,再調(diào)用算法處理

4.  UI 和 SDK 邏輯是否徹底分離

優(yōu)秀的 SDK,一定要盡可能避免把 UI 的界面和邏輯包含進(jìn)去,不然 SDK 的使用者,很難滿足產(chǎn)品經(jīng)理的 UI 和交互設(shè)計(jì)要求,做出差異化的效果。

那么,SDK 如何做到與 UI 邏輯徹底地分離呢 ?

需要充分分解每一個(gè)短視頻的功能需求,搞清楚每一個(gè)需求的實(shí)現(xiàn)原理,哪部分是 UI 的,哪部分是核心的,前者寫到 Demo 上,而后者則寫入 SDK 里面。

就拿短視頻剪輯這個(gè)功能點(diǎn)來(lái)舉個(gè)例子,下圖所示是短視頻的一個(gè)熱點(diǎn)功能,對(duì)短視頻截取中間某一段片段。

短視頻sdk:選擇一個(gè)靠譜的短視頻SDK 你需要了解這些

仔細(xì)思考這個(gè)功能點(diǎn),其實(shí)關(guān)鍵點(diǎn)在于:

  1. 獲取視頻中的連續(xù)圖像在列表中進(jìn)行展示

  1. 繪制左右游標(biāo),以確定剪輯的起始和結(jié)束的時(shí)間點(diǎn)

  1. 讀取視頻文件,丟棄時(shí)間區(qū)間以外的視頻幀,保留剩余視頻幀

屬于 UI 的部分:

  1. 用列表顯示視頻幀圖像

  1. 繪制左右游標(biāo),支持手勢(shì)拖動(dòng)

  1. 根據(jù)視頻的總時(shí)長(zhǎng)和游標(biāo)的位置,計(jì)算出起始和結(jié)束的時(shí)間點(diǎn)

屬于 SDK 的部分:

  1. 提供視頻的時(shí)長(zhǎng)

  1. 提供視頻幀總數(shù)

  1. 提供解碼后的每一幀視頻數(shù)據(jù)

  1. 提供剪輯函數(shù),參數(shù)為:起始和結(jié)束的時(shí)間戳

  1. 完成剪輯處理,輸出剪輯后的視頻文件

這樣分離好了之后,再去編寫 SDK 的接口和 UI 的 Demo 代碼,就非常清晰了。

 5.  是否有良好的可支持性

優(yōu)秀的 App 和 SDK,首先一點(diǎn)就是要穩(wěn)定可靠,不會(huì)動(dòng)不動(dòng)就奔潰。具備良好的可支持性的產(chǎn)品,往往更容易受到青睞。

什么是可支持性 ?

舉個(gè)例子,就像家里買的某些品牌的洗衣機(jī)或者空調(diào),在出故障的時(shí)候,液晶屏幕上會(huì)打出一些錯(cuò)誤碼,當(dāng)你給售后打電話的時(shí)候,售后往往能夠根據(jù)描述的信息以及錯(cuò)誤代碼很快地定位到問(wèn)題或者給出臨時(shí)的解決方案。

如何讓短視頻 SDK 具有更好的可支持性呢 ?

關(guān)鍵在于一套健全而規(guī)范的日志系統(tǒng),可以有效提高技術(shù)支持和開發(fā)者排查問(wèn)題的速度和效率,那么,設(shè)計(jì)這樣一套完善的日志系統(tǒng),有哪些關(guān)鍵點(diǎn)呢 ?

  • 支持配置 SDK 的輸出日志級(jí)別,如:ERROR, WARN, INFO, DEBUG, VERBOSE

  • SDK 初始化的時(shí)候輸出關(guān)鍵的排障信息,如:應(yīng)用包名,SDK 版本,設(shè)備機(jī)型,系統(tǒng) OS 版本,關(guān)鍵配置等

  • 規(guī)范的日志格式,如:<SDK TAG>:<Module TAG>:<Class TAG>:<Message>,可以快速方便地過(guò)濾出各個(gè)模塊的運(yùn)行狀態(tài)

  • 健全的問(wèn)題排查手冊(cè)/文檔,讓每一個(gè)錯(cuò)誤碼都有文檔可依,開發(fā)者可以完成簡(jiǎn)單初步的問(wèn)題分析

 6.  小結(jié)

總而言之,設(shè)計(jì)一款優(yōu)秀并且口碑好的短視頻 SDK,并不是簡(jiǎn)簡(jiǎn)單單堆積一些功能就夠了,看上去功能豐富和實(shí)際開發(fā)過(guò)程中是否好用還有很大的差距。

七牛云近期推出的一套完整的短視頻解決方案,不僅 SDK 包體小、性能優(yōu)異、穩(wěn)定可靠,而且開放易用,有著健全的生態(tài)鏈,集成多個(gè)第三方美顏、濾鏡、AR 貼紙廠商,是一款良心之作,歡迎大家申請(qǐng)?jiān)囉谩?/p>

傳送門:短視頻PLSV-七牛云

創(chuàng)新互聯(lián)www.cdcxhl.cn,專業(yè)提供香港、美國(guó)云服務(wù)器,動(dòng)態(tài)BGP最優(yōu)骨干路由自動(dòng)選擇,持續(xù)穩(wěn)定高效的網(wǎng)絡(luò)助力業(yè)務(wù)部署。公司持有工信部辦法的idc、isp許可證, 機(jī)房獨(dú)有T級(jí)流量清洗系統(tǒng)配攻擊溯源,準(zhǔn)確進(jìn)行流量調(diào)度,確保服務(wù)器高可用性。佳節(jié)活動(dòng)現(xiàn)已開啟,新人活動(dòng)云服務(wù)器買多久送多久。

新聞名稱:短視頻sdk:選擇一個(gè)靠譜的短視頻SDK你需要了解這些-創(chuàng)新互聯(lián)
標(biāo)題URL:http://bm7419.com/article4/dpcsoe.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站建設(shè)、定制開發(fā)、網(wǎng)站排名響應(yīng)式網(wǎng)站、網(wǎng)站導(dǎo)航、品牌網(wǎng)站設(shè)計(jì)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

成都網(wǎng)頁(yè)設(shè)計(jì)公司