[AWS][甘苦談] 自行架設RTMP Server影音串流伺服器
2013.10.30註記:在看完這篇,不妨看看另一種RTMP架設方法?
最近公司有個案子客戶開出需要整合Live的技術,在指定空間內希望我司產品能夠同步輸出LIVE視訊。而BOSS找了原廠一同解決,對我們公司來說規模太小只懂的代理產品來賣,只要碰到專案就要找原廠,真不知道公司還剩下什麼商業優勢存在....(汗)
前前後後我都沒參予討論,突然告知我得跟某廠商開會,每次在搞不清楚狀況下抓走我。只能邊開會邊整理思緒。該客戶是國內數一數二的影音服務商,主要業務為影像擷取與線上直播的系統服務。原廠希望透過Adobe Flash的RTMP與HLS訊號串流方式來滿足Live效果,這是一種很常見的基本服務。同時選擇方案除了Flash還有其他選擇,我們產品因為規格限制只能從SWF來滿足Video In,結果光報價部分竟然要80~90萬跑不掉。同時不斷直誇一些巨星演唱會、政府機關、佛教機構都是採它們的直播系統....同時原廠跟BOSS根本不懂直播系統被唬來唬去的
我當下認為找個Pro級的來開會幹嘛,浪費時間又無可行性。當然我方原廠提出一些其他方案,包含提到Free與Cost Down的選擇性。對方業務講得很死似乎不願透露什麼,只講一些Adobe Stream、Server、Encoder、1 by 1等關鍵字,最後還是要硬搭配他們家貴死人的系統。我這個人什麼都不懂就只擅長推論,根據我的了解Adobe Stream Service與SWF既然同為一間公司,造理來說從In到Out應該可以直接搞定。最後決定自己架一個免費的來試試
--------上面都是屁話--------上面都是屁話--------上面都是屁話--------上面都是屁話--------
串流就像是一種頻道系統,將資源放在網頁裡供人觀看,應用上可以選台、現場直播、甚至搞個Web監視器也都屬於這些,詳細技術五花八門。典型例子有youtube、justintv、土豆那些的都是!串流的模式有P2P、VOD、LIVE跟一堆鬼的...當然不可能為了想吃肉就蓋農場,網路上有很多Server套件可以下載來使用。
現成的串流技術套用有很多,根據環境不同有多種選擇。譬如您可以使用Windows Media Server來滿足最快的需求。公司如果有錢買M$,該IT會非常輕鬆好整合開發。可惜我的工作命不是那種有錢老闆....這不是我要的,繼續探討下一個。
串流技術在Adobe的官方網站上有發表一個叫做Adobe Flash Media Server的玩意簡稱FMS,他是免費的,能允許你給10個人做Live觀看。透過Google Search不難發現很多心得討論早存在。所以網路資源很足,架一台FMS應該不難:
以基本玩Live來說,你得準備以下事項:
1. 一台PC做為FMS的線上影音伺服器,同時安裝FMS 4.5套件
2. 一台PC做為實況機,同時裝上必備Video錄影器材,用視訊頭、攝影機、擷取卡都行 (我都試過),只要PC可偵測出硬體(Driver)裝置使用
3. 這台實況機還要安裝一套Flash Media Live Encoder,將Video in轉為RTMP給FMS
換句話說整個流程是,Video的硬體裝置需要給FMLE偵測到,而FMLE負責將訊號轉換成封包Push給FMS,最後由FMS成立RTMP的頻道給多人觀看(free ony 10)。當然FMLE跟FMS也可以安裝到一台PC共用。我分開安裝是考量FMLE與FMS可以PC多對一來應用
後期註記:
從2012/10開始Flash Media Server(FMS)已更改為Adobe Media Player(AMS),同時所有版本命名有小幅度調整(顛倒重命名),唯獨免費版本的Development已更名為Stater版本,目前版本最新為Adobe Media Player 5
下載FMS前需要註冊Adobe,版本很多請直接下載開發者所用的Flash Media Developer Server 下載 免費版。版本差異性可以參考這裡,以下是官方所提醒的功能限制
安裝FMS還需要在電腦中架設Web Server(Apache),這樣Server才能透過80port的網頁方式進行頻道觀賞。不過4.5版安裝時,已經包含Apache可以一併一鍵到底安裝完成。安裝過程中請牢記Administrator的帳號跟密碼,管理時會用到。
當安裝完成後,PC裡會有Administrator與Server兩個服務選項可控制開關。直接透過遊覽器輸入該PC的IP網頁即可看到呈現結果與官方示範。
登入管理介面時,可以看到整個伺服器的運作狀態與帳戶管理,以及連線服務等等功能,這裡不多做介紹。
再來是安裝FMLE到實況用電腦,到這裡下載Flash Media Live Encoder 3.2。安裝過程也很簡單,基本上下一步到死就對了。準備好VideoIn的器材連接PC,最後打開Flash Media Live Encoder 3.2軟體,密密麻麻的參數值可以參考下圖:
當你準備好Push給FMS時,按下Start就開始實況轉播了,覺得不滿意可以Stop再重試參數。最後當你調整好之後,接下來得去試試看別的地方Live秀能否正常,你可以利用FMS內建的VideoPlayer來測試,將FMS安裝位置的sample/video資料夾完整複製到FMS安裝位置的webroot上去,這樣在網址上直接輸入http://ip/viedoplayer/videoplayer.html即可看到內建的Video播放介面
你需將FMLE所指定的Stream位置輸入到這裡,這個RTMP就是串流來源。參考下圖:
最後貼一些可以參考的前輩文章 (不過沒啥重點)
http://www.dotblogs.com.tw/benjamin/archive/2009/08/05/9878.aspx
http://www.flashas.net/fms/20090109/3884.html
http://blog.5d.cn/user6/xbzg/200710/443692.html
http://blog.csdn.net/loverszhaokai/article/details/5789031
http://blog.ben.idv.tw/2011/11/fms-stream-live-media-over-http.html
如果真的需要文件參考,官方的資料還比較齊全些 (英文唷~)
http://help.adobe.com/en_US/flashmediaserver/devguide/WSd391de4d9c7bd609-52e437a812a3725dfa0-8000.html
http://help.adobe.com/en_US/flashmediaserver/devguide/WSeb6b7485f9649bf23d103e5512e08f3a338-8000.html
最近公司有個案子客戶開出需要整合Live的技術,在指定空間內希望我司產品能夠同步輸出LIVE視訊。而BOSS找了原廠一同解決,對我們公司來說規模太小只懂的代理產品來賣,只要碰到專案就要找原廠,真不知道公司還剩下什麼商業優勢存在....(汗)
前前後後我都沒參予討論,突然告知我得跟某廠商開會,每次在搞不清楚狀況下抓走我。只能邊開會邊整理思緒。該客戶是國內數一數二的影音服務商,主要業務為影像擷取與線上直播的系統服務。原廠希望透過Adobe Flash的RTMP與HLS訊號串流方式來滿足Live效果,這是一種很常見的基本服務。同時選擇方案除了Flash還有其他選擇,我們產品因為規格限制只能從SWF來滿足Video In,結果光報價部分竟然要80~90萬跑不掉。同時不斷直誇一些巨星演唱會、政府機關、佛教機構都是採它們的直播系統....同時原廠跟BOSS根本不懂直播系統被唬來唬去的
我當下認為找個Pro級的來開會幹嘛,浪費時間又無可行性。當然我方原廠提出一些其他方案,包含提到Free與Cost Down的選擇性。對方業務講得很死似乎不願透露什麼,只講一些Adobe Stream、Server、Encoder、1 by 1等關鍵字,最後還是要硬搭配他們家貴死人的系統。我這個人什麼都不懂就只擅長推論,根據我的了解Adobe Stream Service與SWF既然同為一間公司,造理來說從In到Out應該可以直接搞定。最後決定自己架一個免費的來試試
串流就像是一種頻道系統,將資源放在網頁裡供人觀看,應用上可以選台、現場直播、甚至搞個Web監視器也都屬於這些,詳細技術五花八門。典型例子有youtube、justintv、土豆那些的都是!串流的模式有P2P、VOD、LIVE跟一堆鬼的...當然不可能為了想吃肉就蓋農場,網路上有很多Server套件可以下載來使用。
現成的串流技術套用有很多,根據環境不同有多種選擇。譬如您可以使用Windows Media Server來滿足最快的需求。公司如果有錢買M$,該IT會非常輕鬆好整合開發。可惜我的工作命不是那種有錢老闆....這不是我要的,繼續探討下一個。
串流技術在Adobe的官方網站上有發表一個叫做Adobe Flash Media Server的玩意簡稱FMS,他是免費的,能允許你給10個人做Live觀看。透過Google Search不難發現很多心得討論早存在。所以網路資源很足,架一台FMS應該不難:
以基本玩Live來說,你得準備以下事項:
1. 一台PC做為FMS的線上影音伺服器,同時安裝FMS 4.5套件
2. 一台PC做為實況機,同時裝上必備Video錄影器材,用視訊頭、攝影機、擷取卡都行 (我都試過),只要PC可偵測出硬體(Driver)裝置使用
3. 這台實況機還要安裝一套Flash Media Live Encoder,將Video in轉為RTMP給FMS
換句話說整個流程是,Video的硬體裝置需要給FMLE偵測到,而FMLE負責將訊號轉換成封包Push給FMS,最後由FMS成立RTMP的頻道給多人觀看(free ony 10)。當然FMLE跟FMS也可以安裝到一台PC共用。我分開安裝是考量FMLE與FMS可以PC多對一來應用
後期註記:
從2012/10開始Flash Media Server(FMS)已更改為Adobe Media Player(AMS),同時所有版本命名有小幅度調整(顛倒重命名),唯獨免費版本的Development已更名為Stater版本,目前版本最新為Adobe Media Player 5
流程步驟
下載FMS前需要註冊Adobe,版本很多請直接下載開發者所用的Flash Media Developer Server 下載 免費版。版本差異性可以參考這裡,以下是官方所提醒的功能限制
感謝您對 Adobe® Flash® Media Server 的興趣。此免費 Development Server 僅供您試用與部署小型解決方案。Adobe Flash Media Development Server 軟體具備 Adobe Flash Media Enterprise Server 4.5 軟體的各項功能,但是只允許同時最多有 10 個 RTMP 連線和 50 個 RTMFP 連線,而且 IP 多點傳播與即時 HTTP 動態串流有時間限制。此版本也支援最多 5 個 SIP 音訊連線。如果您要擴充此 Development Server,請升級至 Flash Media Streaming Server 4.5、Flash Media Interactive Server 4.5 或 Flash Media Enterprise Server 4.5。
安裝FMS還需要在電腦中架設Web Server(Apache),這樣Server才能透過80port的網頁方式進行頻道觀賞。不過4.5版安裝時,已經包含Apache可以一併一鍵到底安裝完成。安裝過程中請牢記Administrator的帳號跟密碼,管理時會用到。
▲安裝時須擁有Apache的Web環境
當安裝完成後,PC裡會有Administrator與Server兩個服務選項可控制開關。直接透過遊覽器輸入該PC的IP網頁即可看到呈現結果與官方示範。
▲打開網址輸入http://localhost/即可看到運作中
登入管理介面時,可以看到整個伺服器的運作狀態與帳戶管理,以及連線服務等等功能,這裡不多做介紹。
再來是安裝FMLE到實況用電腦,到這裡下載Flash Media Live Encoder 3.2。安裝過程也很簡單,基本上下一步到死就對了。準備好VideoIn的器材連接PC,最後打開Flash Media Live Encoder 3.2軟體,密密麻麻的參數值可以參考下圖:
▲參數看個人,得配合VideoIn設備、系統效能、頻寬來考慮最佳
當你準備好Push給FMS時,按下Start就開始實況轉播了,覺得不滿意可以Stop再重試參數。最後當你調整好之後,接下來得去試試看別的地方Live秀能否正常,你可以利用FMS內建的VideoPlayer來測試,將FMS安裝位置的sample/video資料夾完整複製到FMS安裝位置的webroot上去,這樣在網址上直接輸入http://ip/viedoplayer/videoplayer.html即可看到內建的Video播放介面
▲透過FMS的Video播放來顯示網頁,需輸入FMLE所建立的Stream來源
你需將FMLE所指定的Stream位置輸入到這裡,這個RTMP就是串流來源。參考下圖:
▲看到Live畫面就成功了,rtmp也可以用在其他裝置來串流
最後貼一些可以參考的前輩文章 (不過沒啥重點)
http://www.dotblogs.com.tw/benjamin/archive/2009/08/05/9878.aspx
http://www.flashas.net/fms/20090109/3884.html
http://blog.5d.cn/user6/xbzg/200710/443692.html
http://blog.csdn.net/loverszhaokai/article/details/5789031
http://blog.ben.idv.tw/2011/11/fms-stream-live-media-over-http.html
如果真的需要文件參考,官方的資料還比較齊全些 (英文唷~)
http://help.adobe.com/en_US/flashmediaserver/devguide/WSd391de4d9c7bd609-52e437a812a3725dfa0-8000.html
http://help.adobe.com/en_US/flashmediaserver/devguide/WSeb6b7485f9649bf23d103e5512e08f3a338-8000.html
網誌管理員已經移除這則留言。
回覆刪除請問:
回覆刪除1.AMS server有一個vod的application 可以直接把content push 到這位置嗎?
2.AMS 的client數目限制是上傳加收看嗎?
謝謝回覆
抱歉最近忙公事,太晚回
刪除1. 原測試環境以移除了,沒辦法push給你DEMO看
2. 上傳無限制,主要是讀取的位置有限free 10。透過後台可以看到讀取來原IP與類型
站長你好!
回覆刪除我之前也接觸過這樣的東西
但是我是屬於硬體施工方面的
不知道站長可否提供你的聯絡方式
有技術上面的需求合作
AMS被我打入冷宮了,它的費用太高
回覆刪除請看我的個人資料來信給我