歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
您现在的位置: Linux教程網 >> UnixLinux >  >> Linux綜合 >> Linux資訊 >> 更多Linux

手把手教你配Liunx流媒體服務器(上)

  流媒體(Stream Media)指在互聯網或者局域網中使用流式傳輸技術的連續時基媒體,如:音頻、視頻或多媒體文件。流媒體指在網絡中使用流式傳輸技術傳送音頻、視頻和多媒體文件等。Linux作為網絡應用的先鋒,自然作為流媒體的最佳平台。LAMP (Linux + Apache + mysql + PHP/Perl/Python) 近幾年來發展迅速,已經成為Web 服務器的事實標准。下面手把手教您配置Liunx流媒體服務器。

    目前有三種主流的流媒體系統: 分別是RealNetworks公司的RealMedia、Microsoft的Windows Media和Apple公司的QuickTime。

    Real Media包括三類文件:Real Audio、Real Video及Real Flash。Real Audio用來傳輸近乎CD音質的音頻數據,RealVideo用來傳輸連續視頻數據,而Real Flash則是Real Networks公司與Macromedia公司新近推出的一種高壓縮比的動畫格式。作為最早的因特網流式技術,在視音頻方面RealMedia已成為網絡視音頻播放事實上的標准。

    微軟公司的Windows Media的核心是ASF(Advanced Stream Format)。ASF是一種數據格式,音頻、視頻、圖像以及控制命令腳本等多媒體信息通過這種格式以網絡數據包的形式傳輸,實現流式多媒體內容發布。其中,在網絡上傳輸的內容就稱為ASF Stream。

    QuickTime是蘋果公司推出的能在計算機上播放高品質視頻圖像的技術,是面向專業視頻編輯、Web 網站創建和CD-ROM 內容制作開發的多媒體技術平台,是數字媒體領域事實上的工業標准,它可以通過Internet提供實時的數字化信息流、工作流與文件回放功能。

    Linux網絡環境流媒體工作傳輸原理我們看一下圖1。  圖1

    一般來說,流式傳輸的過程包括三個步驟:

    (1)用戶選定一流媒體服務後,Web浏覽器與Web服務器之間使用HTTP/TCP交換控制信息,得到需要傳輸的實時數據。然後客戶機上的Web浏覽器啟動A/V Helper程序,使用HTTP從Web服務器檢索相關參數對Helper程序初始化。這些參數可能包括目錄信息、A/V數據的編碼類型或與A/V檢索相關的服務器地址。

    (2)A/V Helper程序及A/V服務器運行實時流協議(RTSP),以交換A/V傳輸所需的控制信息。RTSP提供了操縱播放、快進、快退、暫停及錄制等命令的方法。

    (3)A/V服務器使用RTP/UDP協議將A/V數據傳輸給A/V客戶程序(一般可認為客戶程序等同於Helper程序),一旦A/V數據抵達客戶端,A/V客戶程序即可播放輸出。在流式傳輸中,使用RTP/UDP和RTSP/TCP兩種不同的通信協議與A/V服務器建立聯系,是為了能夠把服務器的輸出重定向到一個不同於運行A/V Helper程序所在客戶機的目的地址。

    Helix Universal Server最新是11.0,和以前版本來講加入了冗余服務器支持以及對內容的CACHE支持,這讓用戶能夠最快可能連接到服務器,並且保證在任何可能的情況下都可以自動修復,就多義性擴展方面,首先我們看到Helix真的成了一個超級服務器,它兼容一切常見的媒體格式,甚至包括其競爭對手的WM格式。本文就以Helix Universal Server 11為例介紹如何在Linux下構建流媒體服務器。 一、 軟件下載

    使用Helix Server之前,首先要在http://licensekey.realnetworks.com/rnforms/頁面中填寫自己使用的操作系統、用戶姓名、電子郵件地址、公司名稱、網址等相應信息,接著你就可以下載到Helix Server的30天試用版。此時需要提醒大家注意的是,這裡的電子郵件地址一定要填寫可以正常使用的,否則將無法收取到RealNetworks公司發送的試用授權文件。注冊結束後,RealNetworks公司會向你的電子郵件發送一個授權碼(License Key),讓你在服務器使用Helix,授權碼的格式是Zip包請把它解壓後保存,在安裝軟件時要使用。接著就可以選擇下載Helix Server了。最新版本號是:1101。

二、系統要求

    首先配置一個基於Apache的LAMP服務器,另外在軟件方面它要求內核(Kenerl)至少在2.4以上,桌面分辨率至少為800×600 ,桌面顏色至少16位增強色。硬件方面中央處理器:奔騰III667 以上 ,內存 128 兆 ,硬盤空間 600兆、OSS/Linux兼容聲卡、16兆顯示內存 。

三、安裝軟件

    1、 以根權限登陸Linux X-Windows,建立一個Helix的目錄將授權碼拷貝到目錄中。    #mkdir Helix    #cp RNKey-Helix_Server-90-1479442709717329.lic /Helix

    2、改變下載的文件名稱和組屬性和組使它成為可執行文件。    #chmod +x helix-server-retail-11.01-rhel4-setup.bin

    3、安裝詳細步驟     ./ helix-server-retail-11.01-rhel4-setup.bin

    (1)Linux操作系統首先讓你列出授權碼的存放目錄:參考筆者的寫法:/root/Helix/ RNKey-Helix_Server-90-1479442709717329.lic     (2)  接著系統會顯示很長的一份授權協議,在協議末尾處按回車鍵接受該協議。    (3) Linux操作系統接著詢問安裝目錄,填寫root/Helix 後按回車鍵繼續。    (4) Linux操作系統要求你填寫Helix Universal Server 的系統管理員(Adminstrator)的用戶名和密碼。一定不要忘記。    (5) Linux操作系統接著系統詢問你用那個端口來連接RTSP (Progressive Networks Audio)。 實時流協議(RTSP)是應用級協議,控制實時數據的發送。RTSP提供了一個可擴展框架,使實時數據,如音頻與視頻,的受控、點播成為可能。數據源包括現場數據與存儲在剪輯中數據。該協議目的在於控制多個數據發送連接,為選擇發送通道,如UDP、組播UDP與TCP,提供途徑,並為選擇基於RTP上發送機制提供方法。這裡我們使用缺省端口554。見圖2。                    圖2 選擇RTSP端口

    (6)  Linux操作系統接著詢問你用那個端口來連接HTTP端口。流式傳輸的實現需要合適的傳輸協議。由於TCP需要較多的開銷,故不太適合傳輸實時數據。在流式傳輸的實現方案中,一般采用HTTP/TCP來傳輸控制信息,而用RTP/UDP來傳輸實時聲音數據。一般HTTP監聽端口設置為8080。

    (7)  Linux操作系統接著詢問你用那個端口來連接MMS協議。Helix Universal Server從8.0 版本後開始支持MMS協議。MMS 協議用於訪問 Windows Media 發布點上的單播內容。MMS 是連接 Windows Media 單播服務的默認方法。若觀眾在 Windows Media Player 中鍵入一個 URL 以連接內容,而不是通過超級鏈接訪問內容,則他們必須使用 MMS 協議引用該流。當使用 MMS 協議連接到發布點時,使用協議翻轉以獲得最佳連接。“協議翻轉”始於試圖通過 MMSU 連接客戶端。MMST 是 MMS 協議結合 UDP 數據傳送。如果 MMSU 連接不成功,則服務器試圖使用 MMST。MMST 是 MMS 協議結合 TCP 數據傳送。一般設置為1755。

    (8) 下面要設置Helix 服務器的系統管理員控制端口。這個端口可以自己設定,不過一定注意不要和已經定義的端口重復。這裡筆者設定為17965。

    (9)   接著系統給出所有選擇的匯總列表,請仔細閱讀。確認無誤後按“F”鍵表示接受設定,開始安裝。這裡參考筆者的配置見圖3。若有問題按Esc鍵回去從新選擇。  圖3系統設定的列表    (10)   系統安裝結束後自動退出回到根目錄下。

    (11)   啟動服務器。執行以下操作進入安裝目錄。    #cd Helix;#cp RNKey-Helix_Server-90-1479442709717329.lic /Licence;    #cd Bin    rmserver /root/Helix rmserver.cfg    Helix Universal Server就可以正常啟動。

    (12)查看運行情況,使用命令,結果見圖4.:    #ps -efgrep rmserver 

圖4 Helix Universal Server服務器的進程

    說明其中PID為3773是主進程,其他兩個3776和3779是子進程。

    (13)測試Helix服務器

    推薦使用RealPlayer10GOLD  for Linux,最新版本是: RealPlayer10GOLD.rpm ,安裝後在播放器的地址欄輸入Helix服務器的URL例如:rtsp://192.168.1.16/001.rm 。其中rtsp表示連接Helix服務器使用RTSP應用級協議,192.168.1.16是Helix服務器IP地址,當然也可以使用主機名稱。注意事項:使用RealPlayer10GOLD 全屏播放,只需選擇設置全屏顯示就可以了,不過效果要差一些。建議傳輸率小於200Kbps的RM視頻文件,就不要使用全屏模式播放。使用快捷鍵“Ctrl+B”可以快速在原始大小和全屏之間自如切換。如果配合Real Procedure使用,可將視頻文件或VCD轉換為RM格式文件保存。這樣不但可以減小文件的容量,而且還可以自由編排、剪輯、制作DV。

    (14)停止Helix服務器工作

    由於Helix服務器沒有提供服務器停止命令,所以只能通過使用傳統的“Kill”來“殺掉服務器的進程”,使用命令:    #kill ‘cat ./Logs/rmserver.pid’

    (15)系統啟動時自動加載Helix服務器

    如果想在啟動Linux服務器時自動加載Helix服務。方法如下:開始菜單-首選項-更多首選項-會話-啟動程序-增加-啟動命令,右邊的浏覽指定確定。(未完待續)




Copyright © Linux教程網 All Rights Reserved