專利名稱:基于文件的動態(tài)影像網(wǎng)絡(luò)直播方法
技術(shù)領(lǐng)域:
本發(fā)明涉及動態(tài)影像網(wǎng)絡(luò)直播技術(shù),具體涉及由電視調(diào)諧器(timer)、監(jiān)控攝像 頭、攝像機等設(shè)備所捕捉的實時變化的動態(tài)影像、或者由錄制文件如DVD所保存的動態(tài)影 像在網(wǎng)絡(luò)上直播的方法。
背景技術(shù):
互聯(lián)網(wǎng)的迅猛發(fā)展和普及為流媒體業(yè)務(wù)發(fā)展提供了強大的市場動力,流媒體業(yè)務(wù) 正變得日益流行。目前,流媒體技術(shù)廣泛應(yīng)用于多媒體新聞發(fā)布、在線直播、網(wǎng)絡(luò)廣告、電子 商務(wù)、視頻點播、遠程教育、遠程醫(yī)療、網(wǎng)絡(luò)電臺、實時視頻會議等互聯(lián)網(wǎng)信息服務(wù)的方方面 面。流媒體技術(shù)的應(yīng)用為網(wǎng)絡(luò)信息交流帶來革命性的變化,提高了社會交流的效率和質(zhì)量, 其中較為常見的是動態(tài)影像網(wǎng)絡(luò)直播技術(shù)。目前動態(tài)影像網(wǎng)絡(luò)直播技術(shù)的實現(xiàn)大致分為兩種。一種是使用硬件編碼器和流媒 體服務(wù)器。這種方法比較昂貴,而且也不靈活。因為流媒體服務(wù)器是一個很大的軟件,需要 占用較多的內(nèi)存和CPU,這就增加了硬件成本;而硬件編碼器通常限定輸出格式類型、編碼 方法等。另外一種是使用指定的軟件編碼器和流媒體服務(wù)器。這種方法由于流媒體服務(wù)器 的采用,因而同前一種方法一樣,實現(xiàn)的費用昂貴。另外,上述兩種方法通常都受限于所支 持的協(xié)議類型,客戶端也需要支持相同的協(xié)議。這就限制了動態(tài)影像網(wǎng)絡(luò)直播技術(shù)的廣泛 使用。因此有必要提供一種改進的動態(tài)影像網(wǎng)絡(luò)直播方法來克服現(xiàn)有技術(shù)的缺陷。
發(fā)明內(nèi)容
本發(fā)明的目的是提供一種基于文件的動態(tài)影像網(wǎng)絡(luò)直播方法,實現(xiàn)時費用較低, 并且不受協(xié)議類型的影響。為了實現(xiàn)上述目的,本發(fā)明提供了一種基于文件的動態(tài)影像網(wǎng)絡(luò)直播方法,包括 如下步驟瀏覽器通過超文本傳輸協(xié)議發(fā)送請求,以請求觀看某個頻道或某個設(shè)備上的動 態(tài)影像;當Web服務(wù)器判斷所述客戶端請求為請求觀看某個頻道或某個設(shè)備上的動態(tài)影像 并且所述客戶端請求的內(nèi)容合法時,編碼器對視頻設(shè)備或者錄制文件進行編碼輸出,CGI可 執(zhí)行程序或腳本向瀏覽器發(fā)送包含各個編碼輸出文件信息的播放列表文件URL的報文;當 所述瀏覽器判斷所述報文內(nèi)容為播放列表文件URL地址時,在頁面上嵌入播放器插件,準 備播放編碼輸出文件,并向Web服務(wù)器發(fā)送請求發(fā)送編碼輸出文件的發(fā)送文件請求;Web服 務(wù)器根據(jù)所述發(fā)送文件請求發(fā)送編碼輸出文件;瀏覽器中的播放器插件播放所述編碼輸出 文件。在本發(fā)明的一個實施例中,所述瀏覽器發(fā)送的客戶端請求包含請求獲得指定顯示 格式、指定音頻和視頻格式、指定波特率的直播節(jié)目視頻數(shù)據(jù)信息,則,所述編碼器對視頻 設(shè)備進行編碼輸出的步驟具體為所述編碼器根據(jù)套接字報文中指定的顯示格式、音頻和 視頻格式、波特率,對視頻設(shè)備或錄制文件進行編碼輸出。
在本發(fā)明的另一實施例中,所述瀏覽器向Web服務(wù)器發(fā)送請求發(fā)送編碼輸出文件 的發(fā)送文件請求之后,還包括步驟所述Web服務(wù)器向所述瀏覽器發(fā)送大容量通知報文, 所述大容量通知報文包括將要發(fā)送的編碼輸出文件為大容量的信息,則,所述Web服務(wù)器 根據(jù)所述發(fā)送文件請求發(fā)送編碼輸出文件的步驟具體為,所述Web服務(wù)器不斷發(fā)送編碼 輸出文件則,所述瀏覽器中的播放插件播放所述編碼輸出文件的步驟具體為所述瀏覽器 持續(xù)接收所述Web服務(wù)器發(fā)送的編碼輸出文件的數(shù)據(jù)流,所述播放器持續(xù)播放編碼輸出文 件。 在本發(fā)明的再一實施例中,所述編碼器對視頻設(shè)備進行編碼輸出的步驟具體為 所述編碼器以預(yù)定的編碼時長或預(yù)定輸出文件大小為單位對視頻設(shè)備或者錄制文件進行 編碼輸出。在本發(fā)明的又一實施例中,所述CGI可執(zhí)行程序或腳本向瀏覽器發(fā)送包含各個編 碼輸出文件信息的播放列表文件URL的報文的步驟具體為對應(yīng)各個編碼輸出文件創(chuàng)建通 過外網(wǎng)訪問的各個URL;新建一個文件,在所述文件中依次寫入所述通過外網(wǎng)訪問各個編 碼輸出文件的各個URL ;對應(yīng)所述文件創(chuàng)建通過外網(wǎng)訪問的URL ;向瀏覽器發(fā)送包含所述 文件的報文,則,所述瀏覽器向Web服務(wù)器發(fā)送請求發(fā)送編碼輸出文件的發(fā)送文件請求的 步驟具體為播放器插件在播放所述文件時,根據(jù)所述文件中記錄的各個編碼輸出文件的 URL,發(fā)送請求發(fā)送編碼輸出文件的發(fā)送文件請求以獲取實際編碼輸出文件,則,所述Web 服務(wù)器根據(jù)所述發(fā)送請求文件請求發(fā)送編碼輸出文件的步驟具體為Web服務(wù)器依次發(fā)送 實際編碼輸出文件,則,所述瀏覽器中的播放器插件播放所述編碼輸出文件的步驟具體為 瀏覽器接收所述實際編碼輸出文件,播放器插件依次播放所述實際編碼輸出文件。在本發(fā)明的再一實施例中,所述播放器插件依次播放各個編碼輸出文件的步驟具 體為所述播放器插件播放當前編碼輸出文件時,Web服務(wù)器刪掉服務(wù)器上存儲的上一個 編碼輸出文件。在本發(fā)明的又一實施例中,所述方法還包括步驟當所述Web服務(wù)器收到所述瀏 覽器發(fā)送的停止播放請求或者在指定時間內(nèi)瀏覽器未接收已發(fā)送的編碼輸出文件的數(shù)據(jù) 包時,所述編碼器停止編碼輸出,刪掉暫存的編碼輸出文件。與現(xiàn)有技術(shù)相比,本發(fā)明采用播放文件的方式來實現(xiàn)實時內(nèi)容的播放,采用標準 的Web服務(wù)器來發(fā)送文件,并利用超文本傳輸協(xié)議(HTTP)在客戶端與服務(wù)器端之間進行數(shù) 據(jù)傳輸,實現(xiàn)動態(tài)影像的網(wǎng)絡(luò)直播。本方法中標準的Web服務(wù)器費用較少,并且客戶端與服 務(wù)器端之間不需要其他特殊協(xié)議,不受協(xié)議類型的影響。另外,本實施例也可以在不增加任 何成本的前提下,擴充新的格式和編碼器。
圖1為本發(fā)明基于文件的動態(tài)影像網(wǎng)絡(luò)直播方法的流程圖。
具體實施例方式現(xiàn)在參考附圖描述本發(fā)明的實施例,附圖中類似的元件標號代表類似的元件。本方法的實現(xiàn)是建立在服務(wù)器端和客戶端組成的系統(tǒng)架構(gòu)上。所述服務(wù)器端的 硬件部分包括電視調(diào)諧器(timer)、攝像頭或攝像機、普通X86個人電腦。將電視調(diào)諧器(timer)、攝像頭或攝像機等在普通X86個人電腦主機上連接好。所述電視調(diào)諧器(timer) 的作用是提供標準電視接收功能。所述攝像頭或攝像機的作用是對其攝程范圍內(nèi)的的人或 者物體進行監(jiān)視或進行圖像捕捉。選用X86個人電腦主機是由于根據(jù)用戶所要求的視頻輸 出格式和視頻質(zhì)量很容易更換內(nèi)存和CPU,增加了硬件選配的靈活性。這樣,本發(fā)明可以對 電視調(diào)諧器(timer)、監(jiān)控攝像頭、攝像機等設(shè)備所捕捉的實時變化的動態(tài)影像在服務(wù)器端 進行編碼,進而在客戶端進行直播。另外,所述X86個人電腦中設(shè)置有錄制文件,如DVD,這 樣,本發(fā)明可以對錄制文件所保存的動態(tài)影像在服務(wù)器端進行編碼,進而在客戶端進行直 播。所述服務(wù)器端的軟件部分包括++TV軟件1.0、軟件編碼器。其中++TV軟件1.0包含 了本發(fā)明中所描述的Web服務(wù)器、CGI可執(zhí)行程序或腳本、編碼服務(wù)監(jiān)聽。所述客戶端的硬 件部分包括具有上網(wǎng)功能的普通個人電腦或終端。所述客戶端的軟件部分包括瀏覽器。由 于瀏覽器是具有上網(wǎng)功能的普通個人電腦或終端的一個必不可少的軟件,所以本實施例無 需額外安裝任何軟件。結(jié)合圖1,本實施例基于文件的動態(tài)影像網(wǎng)絡(luò)直播方法的步驟具體為步驟Si,客戶端的瀏覽器通過超文本傳輸協(xié)議(HTTP)向Web服務(wù)器發(fā)送請求,以 請求觀看某個頻道或某個設(shè)備上的動態(tài)影像,所述請求內(nèi)容包含請求獲得指定顯示格式、 指定音頻和視頻格式、指定波特率的直播節(jié)目視頻數(shù)據(jù)信息;步驟S2,服務(wù)器端的Web服務(wù)器接收所述請求,并對所述請求進行解析,判斷解 析的結(jié)果是否為觀看某個頻道或某個設(shè)備上的動態(tài)影像的請求,如果是,繼續(xù)下一步,如果 否,轉(zhuǎn)步驟S4 ;步驟S3,Web服務(wù)器記錄所述請求的內(nèi)容,并通過通用網(wǎng)關(guān)接口(CGI)標準調(diào)用服 務(wù)器端的CGI可執(zhí)行程序或腳本,轉(zhuǎn)步驟S5 ;步驟S4, Web服務(wù)器判斷解析的結(jié)果是否為請求發(fā)送編碼輸出文件的發(fā)送文件請 求,如果是,轉(zhuǎn)步驟S17 ;如果否,則向瀏覽器發(fā)送錯誤信息,結(jié)束。步驟S5,CGI可執(zhí)行程序或腳本對所述請求的內(nèi)容進行解析,判斷所述請求的內(nèi) 容是否合法,如果是,繼續(xù)下一步,如果否,轉(zhuǎn)步驟S7 ;步驟S6,CGI可執(zhí)行程序或腳本通過套接字(socket)與服務(wù)器端的編碼服務(wù)監(jiān) 聽建立連接,并通過套接字向編碼服務(wù)監(jiān)聽發(fā)送包含所述請求內(nèi)容的套接字報文,轉(zhuǎn)步驟 S8 ;步驟S7,CGI可執(zhí)行程序或腳本向瀏覽器發(fā)送錯誤信息,結(jié)束;步驟S8,編碼服務(wù)監(jiān)聽接收套接字報文,并對所述套接字報文進行解析,判斷所述 套接字報文是否合法,如果是,繼續(xù)下一步,如果否,轉(zhuǎn)步驟SlO ;步驟S9,編碼服務(wù)監(jiān)聽調(diào)用服務(wù)器端的編碼器(encoder),編碼器根據(jù)套接字報 文中指定的顯示格式、音頻和視頻格式、波特率,對視頻設(shè)備或者錄制文件(電視調(diào)諧器 (tuner)、攝像頭或攝像機、錄制文件如DVD)進行實時編碼輸出,此時,編碼服務(wù)監(jiān)聽向CGI 可執(zhí)行程序或腳本發(fā)送包含編碼輸出文件名(如tv. l.wmv)的報文,轉(zhuǎn)步驟Sll ;步驟S10,編碼服務(wù)監(jiān)聽向CGI可執(zhí)行程序或腳本發(fā)送失敗響應(yīng)報文,CGI可執(zhí)行 程序或腳本收到報文后,向客戶端的瀏覽器發(fā)送錯誤信息,結(jié)束;步驟Sll,CGI可執(zhí)行程序或腳本接收所述包含編碼輸出文件名的報文后,對所述 包含編碼輸出文件名的報文進行解析,判斷解析是否成功,如果是,繼續(xù)下一步,如果否,轉(zhuǎn)步驟S13 ; 步驟S12,CGI可執(zhí)行程序或腳本創(chuàng)建一個播放列表文件(如tv. asx),所述播 放列表文件包含所述CGI可執(zhí)行程序或腳本接收的報文中的實際編碼輸出文件名(如 tv. 1. wmv, tv. 2. wmv, tv. 3. wmv. · ·)的URL, CGI可執(zhí)行程序或腳本向瀏覽器發(fā)送包含所述 播放列表文件名URL(如http://59. 174. 46. 120/tv. asx)的報文,轉(zhuǎn)步驟S14 ;步驟S13,CGI可執(zhí)行程序或腳本向客戶端的瀏覽器發(fā)送錯誤信息,結(jié)束;步驟S14,瀏覽器接收所述包含所述播放列表文件名URL的報文,并對所述包含所 述播放列表文件名URL的報文進行解析,判斷所述包含所述播放列表文件名URL的報文內(nèi) 容是否為編碼輸出文件URL地址,如果是,繼續(xù)下一步,如果否,轉(zhuǎn)步驟S16 ;步驟S15,在瀏覽器頁面上嵌入播放器插件,準備播放Web服務(wù)器上的編碼輸出文 件,瀏覽器通過超文本傳輸協(xié)議發(fā)送請求發(fā)送編碼輸出文件(如tv. l.wmv)的發(fā)送文件請 求,轉(zhuǎn)步驟S17 ;步驟S16,瀏覽器將所收到的報文內(nèi)容顯示到顯示區(qū),結(jié)束;步驟S17, Web服務(wù)器接收所述發(fā)送文件請求后,發(fā)送編碼輸出文件;步驟S18,瀏覽器接收所述編碼輸出文件后,瀏覽器中的播放器插件播放所述編碼 輸出文件,結(jié)束。由上可以看出,本實施例采用B/S^rower/Server,瀏覽器/服務(wù)器)通信模式,能 實現(xiàn)將電視、直播監(jiān)控攝像頭、攝像機等設(shè)備捕捉的動態(tài)影像在網(wǎng)絡(luò)上直播。也可以遠程觀 看DVD、錄制文件等等。另外,本實施例采用播放文件的方式來實現(xiàn)實時內(nèi)容的播放,采用標準的Web服 務(wù)器來發(fā)送文件,并利用超文本傳輸協(xié)議(HTTP)在客戶端與服務(wù)器端之間進行數(shù)據(jù)傳輸, 實現(xiàn)動態(tài)影像的網(wǎng)絡(luò)直播。本方法中標準的Web服務(wù)器費用較少,并且客戶端與服務(wù)器端 之間不需要其他特殊協(xié)議,不受協(xié)議類型的影響。另外,本實施例也可以在不增加任何成本 的前提下,擴充新的格式和編碼器。在步驟S17中,Web服務(wù)器接收所述發(fā)送文件請求后,發(fā)送實際編碼輸出文件之 前,還包括步驟Web服務(wù)器向瀏覽器發(fā)送大容量通知報文,所述大容量通知報文包括將要發(fā)送的 編碼輸出文件為大容量(例如4G大小)的信息(此時,瀏覽器收到Web服務(wù)器通知的編碼 輸出文件是大容量信息后,瀏覽器則會等待接收大容量文件),貝丨J,所述步驟S18具體為所述瀏覽器持續(xù)接收所述Web服務(wù)器發(fā)送的編碼輸出文件的數(shù)據(jù)流,所述播放器 持續(xù)播放所述編碼輸出文件。由上可以看出,由于實際編碼輸出文件大小是實時增長的,Web服務(wù)器通知瀏覽器 文件大小時,不告訴瀏覽器編碼輸出文件(tv. l.wmv)的實際大小,而是通知瀏覽器將要發(fā) 送的編碼輸出文件是超大容量的,因而瀏覽器不斷接收編碼輸出文件數(shù)據(jù)流,播放器插件 持續(xù)播放所接收到的數(shù)據(jù)流。因此,本實施例利用超大文件通知技術(shù)來支持基于文件的視 頻內(nèi)容實時流化。在步驟S9中,所述編碼器對視頻設(shè)備進行編碼輸出的步驟具體為所述編碼器以預(yù)定的編碼時長(如30分鐘)或預(yù)定輸出文件大小(如200M)為單位對視頻設(shè)備進行編碼輸出。具體地,編碼時,編碼時長達到預(yù)定時長或編碼輸出文件達 到預(yù)定大小時,編碼器終止編碼輸出文件tv. 1. wmv,重新開始編碼輸出文件tv. 2. wmv,當 編碼輸出文件tv. 2. wmv達到預(yù)定時長或編碼輸出文件tv. 2. wmv達到預(yù)定大小時,終止編 碼輸出文件tv. 2. wmv,重新開始編碼輸出文件tv. 3. wmv直到編碼達到預(yù)定時長或預(yù)定大 小,依次類推;在步驟S12中,CGI可執(zhí)行程序或腳本生成并發(fā)送包含編碼輸出文件名的報文的 步驟具體為對應(yīng)各個編碼輸出文件(如編碼輸出文件tv. 1. wmv、編碼輸出文件tv. 2. wmv、編 碼輸出文件tv. 3.wmv等)創(chuàng)建通過外網(wǎng)訪問的各個URL ;新建一個文件(如tv. asx),在所述文件中依次寫入所述通過外網(wǎng)訪問各個編碼 輸出文件的各個URL;對應(yīng)所述文件(tv. asx)創(chuàng)建通過外網(wǎng)訪問的URL ;向瀏覽器發(fā)送包含所述文件的URL的報文,則,所述步驟S15中瀏覽器通過超文本傳輸協(xié)議發(fā)送請求發(fā)送編碼輸出文件的發(fā) 送文件請求具體為播放器插件在播放文件(tv. asx)時,發(fā)現(xiàn)該文件中記錄的是一個文件列表,根據(jù) 文件(tv.asx)中記錄的各個編碼輸出文件的URL,發(fā)送請求發(fā)送編碼輸出文件的發(fā)送文件 請求以獲取實際編碼輸出文件tv. 1. wmv、編碼輸出文件tv. 2. wmv、編碼輸出文件tv. 3. wm
寸,則,步驟S17中Web服務(wù)器發(fā)送編碼輸出文件的步驟具體為Web服務(wù)器依次發(fā)送實際編碼輸出文件tv. 1. wmv、編碼輸出文件tv. 2. wmv、編碼 輸出文件tv. 3. wmv等。貝U,步驟S18具體為瀏覽器接收編碼輸出文件tv. 1. wmv、編碼輸出文件tv. 2. wmv、編碼輸出文件 tv. 3. wmv等,在瀏覽器接收編碼輸出文件的同時,播放器插件依次播放編碼輸出文件 tv. 1. wmv、編碼輸出文件tv. 2. wmv、編碼輸出文件tv. 3. wmv等;播放器插件播放當前編碼輸出文件時,Web服務(wù)器會刪掉服務(wù)器上存儲的上一個 編碼輸出文件。例如當播放器開始播放編碼輸出文件tv. 2. wmv時,編碼輸出文件tv. 1. wmv 將會刪掉;當播放器開始播放編碼輸出文件tv. 3. wmv時,編碼輸出文件tv. 2. wmv將會刪掉 依次類推,以節(jié)省服務(wù)器有限的存儲空間。本實施例還包括步驟當服務(wù)器端收到瀏覽器發(fā)送的停止播放請求或者在指定時間內(nèi)瀏覽器未接收已 發(fā)送的編碼輸出文件的數(shù)據(jù)包時,所述編碼器停止編碼輸出,刪掉暫存的編碼輸出文件。在本實施例中,在客戶端的瀏覽器上輸入URL,如http //59. 174. 46. 120/ cgi-bin/tvview ? id = 013&size = 360 X 400&vbitrate = 400,客戶端瀏覽器艮口 向Web服務(wù)器(59.174.46.120)發(fā)送觀看電視頻道13、視頻大小為360X400、波特率 為400的請求,Web服務(wù)器(如59. 174. 46. 120)收到客戶端合法請求后,就會調(diào)用編 碼器對電視頻道13進行編碼,然后將包含各個實際編碼輸出文件信息的文件tv. asx 的URL(如http://59. 174. 46. 120/tv. asx)發(fā)送給瀏覽器??蛻舳藶g覽器收到文件(http://59. 174.46. 120/tv. asx) URL后,就會在瀏覽器頁面上嵌入播放器插件,并讓播放器插件開始播放文件(http://59. 174.46. 120/tv. asx),播放器插件播放文 件tv. asx時就會依次請求服務(wù)器發(fā)送tv. asx中記錄的各個實際編碼輸出文件(如 http://59. 174. 46. 120/tv. 1. wmv, http://59. 174. 46. 120/tv. 2. wmv...),服務(wù)器收到發(fā) 送文件請求后,首先通知瀏覽器該文件是超大容量的,然后不斷的向瀏覽器發(fā)送文件(如 http://59. 174. 46. 120/tv. 1. wmv)數(shù)據(jù)包,瀏覽器一邊接收數(shù)據(jù)包一邊使用播放器插件進 行播放。這樣就可在瀏覽器上看到直播內(nèi)容。 以上結(jié)合最佳實施例對本發(fā)明進行了描述,但本發(fā)明并不局限于以上揭示的實施 例,而應(yīng)當涵蓋各種根據(jù)本發(fā)明的本質(zhì)進行的修改、等效組合。
權(quán)利要求
一種基于文件的動態(tài)影像網(wǎng)絡(luò)直播方法,包括如下步驟瀏覽器通過超文本傳輸協(xié)議發(fā)送請求,以請求觀看某個頻道或某個設(shè)備上的動態(tài)影像;當Web服務(wù)器判斷所述請求為請求觀看某個頻道或某個設(shè)備上的動態(tài)影像并且所述請求的內(nèi)容合法時,編碼器對視頻設(shè)備或者錄制文件進行編碼輸出,CGI可執(zhí)行程序或腳本向瀏覽器發(fā)送包含各個編碼輸出文件信息的播放列表文件URL的報文;當所述瀏覽器判斷所述報文內(nèi)容為播放列表文件URL地址時,在頁面上嵌入播放器插件,準備播放編碼輸出文件,并向Web服務(wù)器發(fā)送請求發(fā)送編碼輸出文件的發(fā)送文件請求;Web服務(wù)器根據(jù)所述發(fā)送文件請求發(fā)送編碼輸出文件;瀏覽器中的播放器插件播放所述編碼輸出文件。
2.如權(quán)利要求1所述的基于文件的動態(tài)影像網(wǎng)絡(luò)直播方法,其特征在于,所述瀏覽器 發(fā)送的請求包含請求獲得指定顯示格式、指定音頻和視頻格式、指定波特率的直播節(jié)目視 頻數(shù)據(jù)信息,則,所述編碼器對視頻設(shè)備進行編碼輸出的步驟具體為所述編碼器根據(jù)套接字報文中指定的顯示格式、音頻和視頻格式、波特率,對視頻設(shè)備 或錄制文件進行編碼輸出。
3.如權(quán)利要求1所述的基于文件的動態(tài)影像網(wǎng)絡(luò)直播方法,其特征在于,所述瀏覽器 向Web服務(wù)器發(fā)送請求發(fā)送編碼輸出文件后,還包括步驟所述Web服務(wù)器向所述瀏覽器發(fā)送大容量通知報文,所述大容量通知報文包括將要發(fā) 送的編碼輸出文件為大容量的信息,則,所述Web服務(wù)器根據(jù)所述發(fā)送文件請求發(fā)送編碼輸出文件的步驟具體為 所述Web服務(wù)器不斷發(fā)送編碼輸出文件,則,所述瀏覽器中的播放器插件播放所述編碼輸出文件的步驟具體為 所述瀏覽器持續(xù)接收所述Web服務(wù)器發(fā)送的編碼輸出文件的數(shù)據(jù)流,所述播放器持續(xù) 播放編碼輸出文件。
4.如權(quán)利要求1所述的基于文件的動態(tài)影像網(wǎng)絡(luò)直播方法,其特征在于,所述編碼器 對視頻設(shè)備進行編碼輸出的步驟具體為所述編碼器以預(yù)定的編碼時長或預(yù)定輸出文件大小為單位對視頻設(shè)備或者錄制文件 進行編碼輸出。
5.如權(quán)利要求4所述的基于文件的動態(tài)影像網(wǎng)絡(luò)直播方法,其特征在于,所述CGI可執(zhí) 行程序或腳本向瀏覽器發(fā)送包含各個編碼輸出文件信息的播放列表文件URL的報文的步 驟具體為對應(yīng)各個編碼輸出文件創(chuàng)建通過外網(wǎng)訪問的各個URL ;新建一個文件,在所述文件中依次寫入所述通過外網(wǎng)訪問各個編碼輸出文件的各個 URL ;以及對應(yīng)所述文件創(chuàng)建通過外網(wǎng)訪問的URL ;以及 向所述瀏覽器發(fā)送包含所述文件的URL的報文,則,所述瀏覽器向Web服務(wù)器發(fā)送請求發(fā)送編碼輸出文件的發(fā)送文件請求的步驟具體為所述播放器插件在播放所述文件時,根據(jù)所述文件中記錄的各個編碼輸出文件的URL, 發(fā)送請求發(fā)送編碼輸出文件的發(fā)送文件請求以獲取實際編碼輸出文件,則,所述Web服務(wù)器根據(jù)所述發(fā)送文件請求發(fā)送編碼輸出文件的步驟具體為 Web服務(wù)器依次發(fā)送實際編碼輸出文件,則,所述瀏覽器中的播放器插件播放所述編碼輸出文件的步驟具體為 所述瀏覽器接收實際編碼輸出文件,所述播放器插件依次播放實際編碼輸出文件。
6.如權(quán)利要求5所述的基于文件的動態(tài)影像網(wǎng)絡(luò)直播方法,其特征在于,所述播放器 插件依次播放各個編碼輸出文件的步驟具體為所述播放器插件播放當前編碼輸出文件時,Web服務(wù)器刪掉服務(wù)器上存儲的上一個編 碼輸出文件。
7.如權(quán)利要求5所述的基于文件的動態(tài)影像網(wǎng)絡(luò)直播方法,其特征在于,還包括步驟 當所述Web服務(wù)器收到所述瀏覽器發(fā)送的停止播放請求或者在指定時間內(nèi)瀏覽器未接收已發(fā)送的編碼輸出文件數(shù)據(jù)包時,所述編碼器停止編碼輸出,刪掉暫存的編碼輸出文 件。
全文摘要
本發(fā)明公開了一種基于文件的動態(tài)影像網(wǎng)絡(luò)直播方法,主要包括當瀏覽器通過超文本傳輸協(xié)議發(fā)送的請求為請求觀看某個頻道或某個設(shè)備上的動態(tài)影像并且請求的內(nèi)容合法時,服務(wù)器端編碼器開始對視頻設(shè)備或者錄制文件進行編碼輸出,CGI可執(zhí)行程序或腳本發(fā)送包含各個編碼輸出文件信息的播放列表文件URL的報文,瀏覽器解析該報文,當解析的結(jié)果為編碼輸出文件URL地址時,瀏覽器在頁面上嵌入播放器插件,準備播放編碼輸出文件,并發(fā)送請求發(fā)送編碼輸出文件的發(fā)送文件請求;Web服務(wù)器根據(jù)發(fā)送文件請求發(fā)送編碼輸出文件,播放器插件播放編碼輸出文件。本方法使用標準的Web服務(wù)器并利用超文本傳輸協(xié)議進行數(shù)據(jù)傳輸,因而實現(xiàn)的費用較低,通信過程不受協(xié)議的局限。
文檔編號G06F17/30GK101848367SQ201010179110
公開日2010年9月29日 申請日期2010年5月14日 優(yōu)先權(quán)日2010年5月14日
發(fā)明者黃曉麟 申請人:武漢寬信科技有限公司