簡體   English   中英

使用開源媒體服務器捕獲Flash網絡攝像頭/麥克風

[英]Flash webcam/microphone capture with open-source media server

從Flash捕獲視頻需要一個媒體服務器,但它們似乎都沒有任何可用的文檔(甚至沒有API文檔或其他源代碼注釋)。 我更喜歡crtmpserver,因為我的應用程序是用C ++編寫的,它需要實時接收和處理捕獲的數據。 但是,Red5顯然是一個更成熟,更知名的項目,所以我也考慮了這個選項。 Adobe FMS太昂貴,可能很難與我的應用程序集成,因為Adobe從未提及過這樣的用例。

據我所知,必須為媒體服務器編寫一個“應用程序”(它們沒有附帶任何可用的東西),然后必須轉發數據以進行實際處理。 應用程序可以從媒體服務器獲得什么樣的數據,它是一個普通的FLV流還是還有更多的東西(帶寬協商等)?

編寫Flash方面不是問題,有很多例子(即使他們沒有說明應該如何構建媒體服務器URL)。

實際問題:服務器端如何工作(高級視圖),是否有任何東西可以從實時捕獲功能開始?

幾年前,我正在開展一個電子學習項目,允許學生記錄答案(僅在我的情況下是音頻),教授可以聽取它並給學生評分。

我們考慮過Adobe FMS,Wowza Media Server( http://www.wowzamedia.com )和Red5。 最后選擇Red5是因為它是唯一一個足夠穩定的免費開源選項,可以在這個項目中使用,即使它缺少很多文檔。

它是如何工作的我最終修改了一個打包的示例以滿足我的需要,並讓服務器在Mac OS 10.4上運行。 Red5基本上抓住了音頻流並將文件保存到了機器上的目錄中。 然后,我必須更新數據庫以指向音頻文件,以便教授能夠播放它。 注意,我沒有對流進行任何實時修改或重播; 如果這是您項目范圍的一部分。

無論如何,Red5當時沒有太多的社區,所以我無法將我學到的東西貢獻給他們的文檔,但現在似乎他們更活躍,如果你選擇使用Red5,我會要求您參與項目並幫助記錄它。

你可以看看haxevideo是否適合你的開發。

媒體服務器通常就是這樣 - 提供媒體服務。 您是否嘗試在Flash應用程序中使用流式視頻? 如果是這樣,您提到的任何一台服務器都應該適合。

但是,如果您嘗試從閃存中捕獲和發布流式視頻,除了網絡攝像頭流之外,AFAIK還沒有很好的方法可以做到這一點。

要實時發布網絡攝像頭流和其他基本交互,您可能需要查看Adobe LiveCycle協作服務(代號為Cocomo)。

我們現在使用crtmpserver。 一些注意事項:Flash需要連接到rtmp:// server:1935 / appname(其中appname是要使用的應用程序 - 這些是在服務器端配置的)。 即使URL中有多個部分(由斜杠分隔),整個組合也被視為appname(即使播放時似乎有例外,允許將flv文件名放在那里)。

通過連接到“flvplayback”應用程序然后通過“somename”(帶有“record”或“append”)發布來進行錄制,使服務器寫入(相對於CWD)applications / flvplayback / mediaFolder / somename.flv

您無法更改應用程序名稱,但在URL中使用其中一個flvplayback別名可能看起來更好(不會影響文件所在的文件夾)。 其中一個默認別名是“live”,因此您可以使用“rtmp:// server:1935 / live”作為URL。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM