騰訊雲視訊直播sdk開發攻略
視訊直播這一兩年在移動網際網路上可以說是非常的火,各種視訊直播軟體層出不窮。有的通過自己的推廣宣傳確實火了起來,比如:映客。
我之前也是在一家專門做視訊直播的公司打醬油,當時對這個概念還是很模糊,後來才慢慢的瞭解清楚視訊直播的這個概念。後來離開這家公司,到現在的公司,做了一段時間,又有需要做視訊直播的需求。由於公司各方面原因,只能引用第三方的sdk,最後選擇的騰訊雲。所以我下面給大家講一下開發過程。
前兩點 說下視訊開發的引言,騰訊雲sdk相關直接跳入到第三步。
一 視訊直播開發sdk解決方案
直播開發我所知道的有兩種解決方案
1.自己公司有比較成熟的c++ 開發人員,自己開發sdk so庫等 做 視訊推流 ,轉碼 解碼,美顏等功能。有人說github上 很多開源庫都是 視訊直播的框架,免費而且也不用自己開發,但是你要知道 這些東西如果出了問題,你怎麼修改它,還是要自己有能懂這些東西的 開發人員,才能解決。道理和自己開發的意思差不多,但是可能會省一些時間。
2.用第三方sdk開發,我知道的 視訊直播開發sdk有 金山雲 ,騰訊雲 ,網易雲 等等,其實還有很多 ,我就不一一列舉了。
兩種方式優缺點 自己開發 sdk 耗費人員及大量時間 ,開發進度會慢很多。而且對技術要求也比較高,適合公司本身有c++且有相關經驗的程式設計師。如果公司本身沒有可以開發sdk的程式設計師,只有客戶端及服務端程式設計師。且要求開發週期比較短。(本人推薦)。
如果是 選擇第一種方案的 ,下面的就不用繼續看了....
二 視訊直播三方sdk的選擇
這個一般都從兩方面考慮
1. 費用問題
每家的sdk計費模式不同,這個每家的首頁文件裡面都有詳細的介紹,我就不一一截圖說明了。2. 技術功能點及穩定性
穩定性來說,之前一個大神給我推薦的是金山雲 。但是由於後來我並沒有用到 ,只能等待用過金山sdk的開發人員來說明了。
三 直播技術架構
四 騰訊雲視訊開發攻略
上面說了這麼多廢話,終於對應上標題了。大家久等了,不好意思....
和大家一樣 百度 騰訊雲視訊直播 進入騰訊雲首頁
點播 直播 互動直播 微視訊 這麼多sdk..... 問題來了 這都是什麼玩意? 彆著急 等我細細來解答。
1 sdk選擇
1)直播 互動直播
大家做直播前肯定也玩過其它家的直播 比如映客 花椒等
如果是經常玩 肯定知道連麥是什麼意思,就是一個主播可以邀請另一個人和他一起直播 ,說白了就是多人直播。
倘若你們有這種需求 ,有多人互動 或者 多人視訊會議的app 那麼請直接選擇 互動直播的sdk。
如果沒有這種需求,就是原始的一個主播 直播,比如:老師授課,專家講課等 線上教育類等 總之 就是一人直播的 ,我強烈建議選 直播sdk。不要用互動直播。後面說具體原因。
2)點播
視訊回放,錄製會看的sdk。
簡單來說就是 直播的視訊儲存下來然後回放功能。
還有就是 如果自己本地有一些視訊資源 想讓使用者可以看到。也可以上傳,然後觀看。
3)微視訊
這個不多解釋了 快手 美拍等。
選擇好自己的sdk後 那麼請直接申請加入 騰訊的官方 客服 技術支援群:
直播sdk: 騰訊雲直播推流播放SDK 538797442
點播sdk:騰訊雲點播產品交流 202861142
互動直播sdk:騰訊雲互動直播交流 207177891
騰訊IM雲通訊技術交流 468195767
還有一個很多人不知道的... 厲害了我的哥...
小直播技術交流群 324124586
提前加 互動直播群 驗證通過非常慢。
到現在為止 大家一定要清晰的知道 自己 是選用直播sdk 還是互動直播sdk ,因為是兩套sdk 兩套技術支援 兩套開發過程 。
直播功能點說明:
直播 觀看直播 直播回放 觀看直播回放 直播內im聊天室(互動發訊息) 頭像列表 成員進出系統訊息 點贊 美顏 等
* 選用直播sdk的
加入 直播群 雲通訊群 小直播群
補充說明:小直播 是基於直播sdk開發的一套視訊直播app原始碼 ,裡面的直播基本的功能點 他們都有。但是 小直播是基於 直播sdk開發的。
所以如果大家 現在是選用的直播sdk 那麼 我推薦用小直播的原始碼及文件研究 上面也有群。 小直播也是他們官方推的一個東西。
* 選用互動直播的sdk
互動直播裡面的原始碼 是隨心播 裡面缺的功能是 頭像列表 和 回放功能。所以 我也建議 大家加一下 小直播群 下載一下原始碼。裡面有功能後期你會參考用到(頭像列表和回放功能,沒有就算了)
有大神要噴我了...頭像列表不就是一個listview就行嗎..好吧 大哥我錯了 別噴了 好嗎.... 我只是推薦大家參考一下,不是打廣告的。
2 開發流程
1)申請應用
2)程式碼相關
具體程式碼開發流程 看demo原始碼。別看他們寫的那些文件,文件只是個形式,為什麼因為 文件上面很多都寫的比較粗,而且文件很舊 落後sdk好幾個版本。
最起碼現在是這樣 我的sdk用的是互動直播1.8.2
另外 他們官方的demo原始碼都是 基於 android studio的 不是eclipse專案。 如果有開發者用ec開發的 可以手動建一個專案 然後把相關的東西拷貝過來。
如果遇到比如一些so庫相關的問題 可以參考我之前一篇文章:
互動直播參考 隨心播原始碼 直播參考小直播原始碼
說了半天都是廢話,看原始碼。 對 就是原始碼。因為說流程會遺漏一些細節,但是原始碼你跑通了 ,再整合到自己專案裡面心裡面就會比較有底氣了。
注意點 我說幾點:
1.配置檔案裡面的相關配置
2.騰訊雲管理臺 新增好應用的相關配置
3.application 裡面的初始化
4.IM雲通訊相關的jar和so庫都參考原始碼裡面的就可以 不要去雲通訊sdk裡面再去拷貝一份
5.登入裡面如果是獨立模式 流程是 向業務伺服器後臺請求sig ,拿到sig 向騰訊雲請求登入。登入成功後初始化 AVSDK
6.推流問題 不推流 也可以觀看直播
7.回放功能是 用的點播sdk 也就是直播的sdk (點播和直播的東西在一個jar包裡面)用了互動直播sdk開發的同學發現,如果專案需要做 視訊回放功能 ,還要整合 直播的 sdk......
8.視訊列表 獲取視訊房間資料等 看 上面研發綜述那個連線 有詳細互動流程 看完就明白了。
9.回放的視訊 90分鐘一個檔案 ,超過90分鐘就是下一個檔案... 自然就是兩個url 至於怎麼合併 暫時還沒研究...
開發過程中問題還會有很多 :
解決方案:
1.上面加的群裡面問 直播的群 回答問題沒有問題 互動直播就一個人回答問題..你沒看錯 就是一個人
2.提交工單 管理中心右上角有工單
3 DEMO原始碼下載連結
騰訊官方的連結 :
直播demo:直播群 群檔案裡面有
小直播demo:
想要隨心播 ec原始碼的也可以直接加我們群 群號碼下面有。
ps:小直播demo下載連結 我是從小直播群公告裡面粘貼出來的連結。 他這個應該還要解壓密碼。密碼大家可以加群聯絡 ,因為現在小直播還在申請軟體著作權的階段。大家直接加群 有問題直接去群裡面問比較靠譜
在開發過程中走了很多彎路,雖然最後按期完成。但是很累 寫這篇文章的目的就是讓大家準備做開發的 在開發之前有個大概瞭解,讓大家少走一些彎路。如果還有其它問題也可以加入我的qq群: Android開發經驗交流群454430053 ,互相交流解決。本人水平有限,如果哪裡寫的有問題,希望大家提出 ,肯定改正。
暫時只想到這些,後續會有補充,願這個世界沒有bug....