中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

如何輕松從0搭建Android直播系統

發布時間:2021-12-13 09:48:11 來源:億速云 閱讀:139 作者:柒染 欄目:移動開發

今天就跟大家聊聊有關如何輕松從0搭建Android直播系統,可能很多人都不太了解,為了讓大家更加了解,小編給大家總結了以下內容,希望大家根據這篇文章可以有所收獲。

從0開始搭建一個直播系統

我立馬實踐了下,所以首先給大家分享下整個搭建的流程:

本人的操作系統為mac,其他系統的同學可以根據提示,自行安裝軟件。

一個簡易的直播系統,大致可以由三部分組成:

搭建一個rtmp媒體服務器

  • 推流端

  • 拉流端

現在目標是快速搭建起來,所以當然是借助開源項目和一些軟件:

  • rtmp媒體服務器:這里使用srs

  • 推流端:這里使用obs

  • 拉流端:這里使用播放器vlc

rtmp媒體服務器的搭建

這里使用srs,srs的鏈接為:

https://github.com/ossrs/srs

首先clone到本地,進入到trunk目錄:

git clone https://github.com/ossrs/srs.git  cd srs/trunk

然后執行:

./configure --osx

注意: Centos6.x/Ubuntu12 32/64bits用戶僅需要執行./configure。

最后執行:

make

執行成功后,就可以開啟我們的服務了:

./etc/init.d/srs start

如果是mac系統,此時會失敗,原因是srs.conf中max_connections太大,

目錄為srs/trunk/conf/srs.conf,可以修改為248(其他操作系統可能無此問題)。

再次回到trunk目錄:

./etc/init.d/srs start

到此我們的srs服務器就搭建起來了。

注:

Centos、Ubuntu可以參考官網搭建,比較簡單。

如果你啟動過程中還遇到了其他錯誤,可以查看log信息:

srs/trunk/objs/srs.log

其他指令:

停止 ./etc/init.d/srs stop  重啟 ./etc/init.d/srs restart

有了服務器之后,我們就準備開始我們的推流端。

如果你實在搭建不成功,可以先拿116.196.121.20這個ip做測試,我在京東云上搭建的,配置較低,主要用于大家臨時測試,可能不穩定,看一眼就行,后續會關掉,所以還是盡可能自己搭建成功吧。

使用OBS推流

下載地址: https://obsproject.com/

先下載安裝,這里就簡單了

如何輕松從0搭建Android直播系統

首先選擇點擊+選擇來源,這里我選擇了窗口捕獲,然后點擊右側的設置:

如何輕松從0搭建Android直播系統

選擇流,串流類型選擇自定義,然后url,填寫:

rtmp://你的ip/你喜歡的url

流名稱可以按照上述自由輸入。

記住我們的url和流名稱:

rtmp://192.168.1.102/zhy/mylive

完成后,點擊確定。

然后點擊開始推流即可。

如何輕松從0搭建Android直播系統

這樣,我們的OBS推流就開啟啦,軟件的更多使用自行探索吧。

***就剩下我們的拉流了。

使用VLC拉流

下載地址: http://www.videolan.org/vlc/

先下載安裝,這個就更簡單啦。

如何輕松從0搭建Android直播系統

點擊Open Network,輸入我們剛才的url+流名稱,點擊確定即可。

如何輕松從0搭建Android直播系統

稍等,就開始播放我們的推流內容了。

如何輕松從0搭建Android直播系統

最左側是VLC,中間是OBS,右側是我窗口捕獲對象。

到這里,就算我們搭建了一個直播系統啦~~自己搭建成功的感覺,無比爽快,也能很大的激發我們后續的學習興趣。

后面我們可以根據自己的需求去選擇學習拉流或者推流,逐步替換掉軟件。拉流的方式很多,很多開源播放器都支持。這里我們考慮替換掉推流,希望可以使用手機來推流。

使用第三方推流SDK

最簡單的方式,就是可以借助于第三方的推流SDK,大多情況下第三方SDK完整方案都是收費的,不過他們的推流Android  SDK倒是可以下載無需付費情況下來學習使用的。

這里以百度云的直播SDK為例,下載地址:

https://cloud.baidu.com/doc/Downloadcenter/Push.html#.E7.89.88.E6.9C.AC.E6.9B.B4.E6.96.B0.E8.AF.B4.E6.98.8E

直接點擊下載Android SDK即可,下載完成后解壓,然后倒入AS(這竟然是個Eclipse項目…),還好AS支持,導入后:

如何輕松從0搭建Android直播系統

直接將mStreamKey修改我們的rtmp的地址即可。

注意,需要在build.gradle中添加下v7的依賴

compile 'com.android.support:appcompat-v7:23.0.0'

然后運行,界面還可以:

如何輕松從0搭建Android直播系統

貼一下運行時的效果圖:

如何輕松從0搭建Android直播系統

還是以vlc拉流即可,整個過程很緩慢,耐心等待,效果也不是很好,不過能跑通即可,主要是學習。然后你可以舉一反三試試其他的SDK。

當然了,很多開源項目其實比SDK作為學習資料更好,比較源碼都有,下面以一個開源項目舉例。

使用開源項目推流

使用一個開源項目:

https://github.com/begeekmyfriend/yasea

直接clone,導入。

這個比較順利,導入后,修改下rtmp鏈接:

如何輕松從0搭建Android直播系統

然后運行即可(導入不成功,自己想辦法解決,基礎能力啦~)。

貼一張效果圖:

如何輕松從0搭建Android直播系統

硬解碼的情況下,效果比前面的SDK好很多~~

好了,***我們再看一種方式。

恩,ffmpeg很火,ffmpeg很強大。

所以***一種方式,就是看如何利用ffmpeg推流啦~~

利用ffmpeg推流

大家可以自己下載ffmepg的源碼,然后按照網上的方式去編成so,簡單的一點而且比較實用的,就是編出可以執行ffmpeg  命令的so,這樣就能干很多事情了。

這里,由于篇幅,我們就直接使用別人編好的項目了。

https://github.com/WritingMinds/ffmpeg-android-java

直接導入,該項目支持直接運行ffmpeg的命令。

ffmpeg命令很多:

例如:

將.avi轉成gif動畫(未壓縮)

ffmpeg -i video_origine.avi gif_anime.gif

合成視頻和音頻

ffmpeg -i son.wav -i video_origine.avi video_finale.mpg

其中有一個命令就是支持推流,這里將手機上的zixia.mp4作為輸入:

ffmpeg -re -i /storage/emulated/0/zixia.mp4      -vcodec libx264      -acodec aac      -f flv      -strict -2 rtmp://192.168.1.102/zhy/mylive=

那么這個庫是支持在手機上運行ffmpeg命令的,那就簡單了:

如何輕松從0搭建Android直播系統

貼上我們需要執行的命令,運行即可。

這里注意我推的是存儲卡上的一個媒體文件,注意添加相關權限,效果如下。

如何輕松從0搭建Android直播系統

看完上述內容,你們對如何輕松從0搭建Android直播系統有進一步的了解嗎?如果還想了解更多知識或者相關內容,請關注億速云行業資訊頻道,感謝大家的支持。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

保定市| 南充市| 夹江县| 梅河口市| 监利县| 林甸县| 凤山市| 岳池县| 芦溪县| 偏关县| 长顺县| 孙吴县| 眉山市| 库尔勒市| 民县| 汉源县| 阿瓦提县| 淮滨县| 琼海市| 隆德县| 德州市| 县级市| 翁牛特旗| 浮梁县| 嘉鱼县| 陆河县| 贡觉县| 资阳市| 尚志市| 门头沟区| 南木林县| 合江县| 金寨县| 兴城市| 循化| 教育| 清镇市| 珲春市| 成安县| 铜鼓县| 邯郸市|