如何在本身網站加上視頻直播功能(搭建視頻直播網站)

前一段時間因爲工做須要在咱們的網站上搭建一個視頻直播環境,因此我嘗試了不一樣種類的視頻直播搭建方式,通過這一段時間的試驗我掌握了多種服務器軟件的視頻直播搭建方式。它們各有優缺點,針對每一種服務器軟件我都寫了文章,在本篇文章中我介紹到的是八百里flash p2p流媒體系統軟件。html

在本文中咱們首先介紹如何安裝八百里flash p2p流媒體系統(P2PS)系統到咱們的服務器上,而後接着演示若是使用這個系統來在咱們的網站上生成一個直播頁面而且進行視頻直播(在文章中咱們以XXX.com來代替咱們的網站域名),還演示了若是使用軟件加攝像頭/採集卡的方式進行視頻直播,最後演示了與P2PS配合的硬件級視頻直播解決方案。windows

 

1、下載程序

訪問http://www.800li.net ,而且在首頁上找到下載連接,把軟件下載到桌面上。瀏覽器

2、安裝

一、雙擊下載的p2ps_setup_trial.exe進入安裝界面。服務器

二、連續點擊「下一步」以後到達註冊頁面。網絡

三、點擊「獲取試用註冊碼」,跳轉到蘇州八百里網絡科技公司的註冊碼申請頁面,填寫一些基本裝料後提交。其中,有兩個信息很是重要,一個是電子郵箱,這是收取註冊碼的用的,這個若是填寫不正確,就收取不到註冊碼了。另外一個是序列號,這個若是填寫不正確,那麼收到的註冊碼也會不正確,直接複製安裝程序裏序列號那一欄的那段文字填入便可。ide

四、在提交申請註冊碼以後,等待一段時間後會收到包含註冊碼的郵件。網站

五、將拿到的註冊碼拷貝至安裝界面中的註冊碼一欄,而後繼續下一步。編碼

六、設置域名,默認P2PS使用的是機器的名稱,若是想對公網開放仍是得設置成一個域名,在這裏咱們設置成XXX.com,而後繼續下一步。url

七、跳過一系列的下一步以後,來到了配置頁面。在這裏能夠設置服務器端口、視頻目錄等信息,P2PS在啓動配置時會自動分配一些未被使用的端口作爲服務器使用的端口,通常狀況下不須要修改。在這裏咱們把視頻存放目錄(直播時會生成一些視頻文件)的位置更改爲D盤下面的P2PS文件夾,其它參數不作修改。.net

八、若是服務器上開啓了防火牆,那麼須要把P2PS所須要的一些端口給加入到防火牆的容許經過端口列表中。

在配置管理器中切換到「對外端口列表」頁籤,能夠看到P2PS使用了兩個TCP端口和3個UDP端口:

從控制面板中打開windows防火牆設置,在「例外」頁籤中的「對外端口」中分別加入P2PS的對外端口列表中的TCP和UPD端口。

設置好防火牆以後,點擊配置管理器的「保存配置」,而後點擊「關閉窗口」完成配置,回到安裝程序點擊「完成」來結束P2PS的安裝。

3、發佈直播

一、在開始菜單中能夠打開P2PS的示例頁面。因爲遠程主機上面沒有攝像頭,因此獲得這個頁面的地址以後,咱們把這個地址拷貝到本地的瀏覽器中使用。

二、在示例頁面中,有3個連接,一個是流管理,一個是發佈,還有一個是播放。其中流管理是用來管理視頻的個數。咱們新建一個名稱爲「我要直播」的流,在流名稱一欄輸入「我要直播」,而後點擊添加便可添加一個視頻流。

三、添加視頻流以後,點擊發布跳轉到發佈管理頁面,勾選中剛纔添加的流,而後點擊「發佈選中流」按鈕,點擊以後,會出現發佈直播的界面,在此時計算機上必須有可以使用的攝像頭(若是沒有攝像頭,也能夠安裝一個新浪9158虛擬視頻來代替),當發佈界面左上角顯示「Connection success」時表示已經鏈接上服務器,接下來只須要點擊彈出的「Adobe flash player設置」窗口上的「容許」按鈕便可進行發佈。

四、而後新打開一個瀏覽器頁籤,輸入地址http://XXX.com:28100/sample從新進入此頁面,在頁面上選擇播放,而後選中剛纔新建的流,而後點擊「播放選中流」按鈕。

在彈出的「Adobe Flash Player設置」窗口上,勾選住「記住」(防止每次播放時再次詢問),而後點擊容許進行觀看。

因爲P2PS採用了flash+p2p的直播方式而且爲了能充分發揮p2p網絡的效果、減小服務器端負載,因此P2PS控制了播放器的延時,直播畫面要比現場畫面延後一分鐘左右,發佈以後大約一分鐘才能夠播放,可是這並不影響直播效果。

4、將直播播放器嵌入到其它頁面

如今咱們要把這個示例頁面中的播放器移動到正式的網站XXX.com中。

首先,咱們在XXX.com的站點目錄中新建一個「liveshow.html」的頁面(固然也可使用已存在的頁面),而後在示例頁面中的播放頁面的播放器下方,點擊「複製代碼」或者直接複製「播放器代碼」欄中的代碼,把它粘貼到新建的「liveshow.html」中。

而後在瀏覽器中直接訪問http://XXX.com/liveshow.html,就能夠看到正在直播的內容了,還能夠根據本身須要把這段播放器代碼放到博客、論壇等支持HTML源碼的地方。

5、中止直播

在用戶想要中止直播時,有三種選擇:

一種是直接關閉發佈頁面,這樣下次能夠還繼續使用這個視頻流發佈直播視頻,在中止發佈直播後,觀看者經過像後拖動播放條進行回看;

一種是選擇以「轉換成點播」方式結束髮布,這種方式結束的視頻能夠點播視頻進行播放,而且此視頻流不可以再用來發布直播,觀看者在觀看頁面能夠任意拖動視頻進行觀看;

還有一種是選擇以「轉換成僞直播」方式結束髮布,這種方式結束的視頻在觀看頁面上仍是被假裝成爲一個直播視頻,只能像後拖動,可是不能像前拖動。

6、其它方式進行發佈

對於P2PS系統來講,不只僅像示例頁面中的那樣用網頁+攝像頭來發布直播,還可使用其它方式進行直播。

1、 使用Adobe Flash Media Live Encoder   +  PC攝像頭/支持DirectShow的採集卡.

2、 使用硬件直播一體機。

3、 使用支持RTMP協議的採集卡+採集卡自帶軟件進行發佈。

可是不管使用哪一種方式,都須要使用示例發佈頁面中的FMS鏈接URL和FMS發佈流名進行發佈,能夠先將發佈頁面中的FMS鏈接URL和FMS發佈流名稱複製到詞事本或者其它地方供後續使用。(注意:在發佈頁面打開的時候,是不能再使用這個url進行發佈,因此在進行其它方式方式時先關閉發佈頁面)。

7、使用Adobe Flash Media Live Encoder進行發佈

一、在adobe網方網站https://www.adobe.com/cfusion/entitlement/index.cfm?e=fmle3上面下載最新版本的Flash Media Live Encoder ,咱們如今使用的是3.2版本。

二、安裝完成以後啓動程序,首先咱們要作的是選擇機器上的視頻設備和音頻設備,在下圖中能夠看到,咱們在video一欄中選取了我機器上的攝像頭「FV TouchCam VQ1」,把視頻編碼調整成H264,設置好合適的視頻碼率、視頻寬度和視頻高度,而後音頻設備使用默認的麥克風。

三、最重要地是在輸出參數設置面板那裏,把從發佈頁面複製的「FMS鏈接URL」的值複製到FMS URL一欄,「FMS發佈流名」值複製到Stream一欄,而後直接點擊最下面的Start,這樣發佈就開始了。

四、不只僅可使用攝像頭,還可使用採集卡+DV的方式進行直播,這裏咱們採用一張USB採集卡(固然也可使用其它種類採集卡),這張採集卡的輸入端是模擬信號,採用接口是普通的蓮花頭,這也意味着一切與這種接口兼容設備均可以配合這張採集卡來直播,如廣播級攝像機、家用DVD、電視機頂盒。

capturecard.JPG

五、另外咱們經常使用的還有以HDMI方式輸入視頻信號的採集卡,這種採集卡可以配合數字攝像機、藍光DVD、擁有HDMI的筆記本、平板電腦和手機等等數碼產品。

hdmicard.jpg

六、咱們使用一個帶AV模擬信號輸出的DV來進行直播,把採集卡鏈接在電腦上而且安裝好驅動程序,再把DV的AV信號線接上,另外一端接在採集卡的顏色相同的插口上。

dv.jpg

七、重啓Adobe flash media live encoder,這時在Adobe flash media live encoder的視頻設備和音頻設備列表處就會各多出一個新的設備,分別選取這兩個設備,而後參數仍是像上面同樣設置好FMS鏈接字符串和FMS流名稱,點擊最下方的Start按鈕,DV的畫面就成功地直播出去了。

fmle.capture.jpg

http://XXX.com/docimg/fmle.publish2.jpg

八、發佈成功了,打開播放頁面進行效果觀看吧。

http://XXX.com/docimg/fmle.play.png

8、使用一體機/視頻編碼服務器進行發佈

因爲普通PC機+採集卡的方式不便於在特殊場合下面進行視頻直播的商業實施,因此在這種狀況下使用專業的直播一體機或是採集編碼服務器來進行視頻直播會取得更好的的效果。

行業中並未對這種具備採集和發佈直播的機器有一個標準的名稱,根據附加功能的不一樣廠家使用過這些名稱:直播一體機、導播直播一體機、網絡直播一體機、採集編碼服務器、視頻編碼服務器、錄播直播一體機等、嵌入式flash編碼器等等。

而無論這些硬件的名稱是什麼,只要它擁有如下幾點功能便可無縫接合P2PS系統:

一、視頻信號採集。

二、視頻信號壓縮。

三、支持RTMP流媒體協議輸出。

只要擁有上述三個最基本的功能,那麼這個硬件就能夠實現直播的需求,至因而否還擁有多路切播、混音、字幕添加等等其它功能,視用戶需求來選擇最合適的設備,在這裏咱們使用某品牌的視頻編碼服務器來舉例。

某品牌的視頻編碼服務器的功能特性中指出:

l H.264/AVC MainProfile廣播級視頻編碼器嵌入式平臺

l 支持H.264 Transport和Program流的編碼Entropy coding (支持CAVLC/CABAC )

l 經過以太網端口進行基於Web的遠程管理和本地管理

l 支持多種IP網絡協議及直播模式: UDP,TCP,RTSP,HTTP,RTMP等。

l 視頻輸入:S端子,複合,SDI(可選)

由以上基本特性能夠知道,因爲此視頻編碼服務器支持複合信號(AV)的輸入、支持H264的壓縮、支持RTMP網絡協議的直播,那麼這臺視頻編碼服務器就能夠用來直接發佈視頻直播到P2PS系統上,下面是咱們的操做步驟。

一、把此視頻編碼服務器經過網線接入局域網,在輸入端接入DV、攝像機等信號源設備。經過其它計算機登錄視頻編碼服務器的管理平臺,首先設置它的互聯網參數,使其可以連入互聯網。

http://XXX.com/docimg/ytj.setting.jpg

2.設置視頻和音頻的格式,注意請將視頻編碼設置爲H26四、VP六、H263等RTMP支持的格式,而音頻編碼通常可選擇Mp三、AAC、Nellymoser、speex等。而後根據須要設置幀率,視頻寬高、視頻比特率等參數。

http://XXX.com/docimg/ytj.video.jpg

http://XXX.com/docimg/ytj.audio.jpghttp://XXX.com/docimg/ytj.audio_biterate.jpg

三、接下來就是要設置視頻編碼服務器的RTMP協議輸出地址。須要注意的是,咱們如今使用的這個視頻編碼服務器的RTMP地址沒有分紅鏈接字符串和流名稱兩段,因此咱們把「FMS鏈接字符串」和「FMS流名稱」中間使用「/」鏈接在一塊兒填入"RTMP ADDRESS"一欄。其它品牌的設備的RTMP參數設置可見該設備的使用說明書。

http://XXX.com/docimg/ytj.rtmp.jpg

到此,編碼器的編碼已經設置好。咱們點擊「開始編碼」系統開始運行。而後打開對應的直播頁面便可觀看到直播效果。

相關文章
相關標籤/搜索