專利名稱:一種m3u8直播流防盜鏈方法和系統(tǒng)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及流媒體技術(shù) 領(lǐng)域,尤其涉及一種M3U8直播流防盜鏈方法和系統(tǒng)。
背景技術(shù):
常用的流媒體協(xié)議主要有HTTP漸進下載和基于RTSP/RTP的實時流媒體協(xié)議,HTTP漸進下載的方法中以蘋果公司的HTTP Live Streaming為代表。其最初是蘋果公司針對iPhone、iPod、iTouch和iPad等移動設(shè)備而開發(fā)的流,現(xiàn)在在桌面也有很多應(yīng)用了,如HTML5直接支持這種方式。一般直播技術(shù)中,播放模式中必須等待整個文件下載完才行,在HLS (HTTP LiveStreaming)技術(shù)中WEB服務(wù)器向客戶端提供接近實時的音視頻流,但在使用的過程中是使用的標準的HTTP協(xié)議,所以這時只要使用HLS的技術(shù),就能在普通的HTTP的應(yīng)用上直接提供點播和直播。現(xiàn)有的HLS工作原理是從視頻采集、編碼器、流分割、普通WEB服務(wù)(索引文件和視頻文件)到客戶端。內(nèi)容準備的過程大約有兩種,一是視頻采集,編碼器首先將衛(wèi)星或有線信號實時采集的音視頻數(shù)據(jù)壓縮編碼為符合特定標準的音視頻基本流(H264+AAC),第二是已經(jīng)完成編碼的音視頻文件(使用札264視頻和AAC音頻),然后將這些封裝成為符合MPEG-2 (MPEG 2TS、MPEG2 PS,之所以使用這個,主要是因為音頻和視頻會交織在一起,也會有關(guān)鍵幀來讓視頻可以直接播放)。流分割部分是將MPEG-2分割成很多個TS的文件。分割過程大多是按時間來切,可以切10秒一個的文件,如果碼流高可以5秒一次。在分割還有一點不同,就是這時流分割器會生成一個含有指向這些小TS文件指針的索引文件。所以這個文件也必須在WEB服務(wù)器上,不能少。每多10秒時,就會增加一個TS文件,所以索引文件也會隨著修改成最新的幾段視頻。然后這些切分了的小的一系列的TS文件,放到普通的WEB服務(wù)器中就行了。這時客戶端請求這些文件會使用標準的HTTP協(xié)議。索引文件后綴是.M3U8,索引文件采用擴展的M3U8播放列表格式,其實就一文本文件。內(nèi)部的視頻的地址描述如下
#EXTM3U
#EXT-X-TARGETDURATION:10#EXT-X-MEDIA-SEQUENCE:9622212#EXTINF:10,
http://live, tvmining. com/cctv/CCTVl_512000_20110118_162202654_9622212. ts#EXTINF:10,
http://live, tvmining. com/cctv/CCTVl_512000_20110118_162212654_9622213. ts#EXTINF:10,http://live, tvmining. com/cctv/CCTVl_512000_20110118_162222654_9622214. ts同時修改WEB服務(wù)器的MME輸出信息,目的是修改加入TS和M3U8的后綴支持.M3U8 application/x-mpegURL.ts video/MP2T
最后就是客戶端,如果是HTML,直接在HTML5中支持這種視頻可以使用如下標簽 〈video tabindex=〃0〃 height=〃480〃 width=〃640〃>
〈source src=〃/cctv/cctvl. M3U8〃>
</video>
如果是應(yīng)用客戶端(Safari QuickTime之類),就需要裝軟件來支持,客戶端會根據(jù)video標簽中給定的M3U8文件索引來下載TS文件,當下載了最少二段后開始播放,直到M3U8文件的索引結(jié)束,如果沒有結(jié)束客戶端會不斷的下載video中給定的M3U8文件來判斷是否有新添加進來的流媒體文件,如果有添加就下載并播放。另外,HTTP服務(wù)器可以設(shè)計成的自適應(yīng)比特率流,在不同網(wǎng)絡(luò)環(huán)境,選擇下載不同碼流的視頻。所以整個HTTP LiveStreaming無論是直播還是點播,都能做到近似實時的方式來進行流播放,理論的最小時延是每個切片的長。但是在上述HLS架構(gòu)的播放過程當中,因為video標簽是嵌入的WEB瀏覽器中的,任何人只要打開web瀏覽器的源代碼查看,就能獲得這個M3U8文件的直播流,如果用戶把這個M3U8文件嵌入到自己的網(wǎng)站,而M3U8文件是使用HTTP方式下載,M3U8文件又是一個文本文件,無法在HTTP服務(wù)器上做防盜鏈控制,這樣盜鏈者就成功的實現(xiàn)直播流的盜鏈。如果直播流被成功盜鏈,提供直播服務(wù)的廠家由于本身也在對外提供直播服務(wù),但又由于HTTP的協(xié)議規(guī)定原因,無法區(qū)分是合法的用戶在使用直播流還是被盜鏈用戶使用直播流,這樣提供直播服務(wù)的廠家將蒙受巨大損失,其中包括服務(wù)器、帶寬和合法用戶的并發(fā)數(shù)等。
發(fā)明內(nèi)容
本發(fā)明的目的在于提出一種M3U8直播流防盜鏈方法和系統(tǒng),能夠有效地防止非法用戶的盜鏈行為,并且提高對直播服務(wù)的處理能力。為達此目的,本發(fā)明采用以下技術(shù)方案
一種M3U8直播流防盜鏈方法,包括以下步驟
A、存儲播放M3U8直播流合法用戶的資料;
B、用戶通過WEB瀏覽器請求M3U8直播流的同時發(fā)送用戶資料,HTTP服務(wù)器根據(jù)存儲的合法用戶的資料對用戶資料進行驗證,如果沒有通過驗證,向WEB瀏覽器反饋用戶權(quán)限不夠的信息,如果通過 驗證,轉(zhuǎn)至步驟C ;
C、HTTP服務(wù)器將M3U8文件的真實地址映射成一個隨機M3U8文件地址,并設(shè)置所述隨機M3U8文件地址的有效期限;
D、HTTP服務(wù)器將所述隨機M3U8文件地址返回給WEB瀏覽器;
E、WEB瀏覽器獲得所述隨機M3U8文件地址,解析對應(yīng)的M3U8文件中包含的TS碎片音視頻流進行直播播放;
F、當所述隨機M3U8文件地址的有效期限結(jié)束后,所述隨機M3U8文件地址被銷毀,重復步驟B至步驟E,直到直播結(jié)束。ー種M3U8直播流防盜鏈系統(tǒng),包括視頻采集編碼及碎片處理器、TS碎片存儲器、HTTP服務(wù)器、用戶資料存儲器和WEB瀏覽器,視頻采集編碼及碎片處理器、TS碎片存儲器、HTTP服務(wù)器和WEB瀏覽器依次連接,用戶資料存儲器與HTTP服務(wù)器連接,其中,
視頻采集編碼及碎片處理器用于對音視頻信號進行采集和編碼,并將持續(xù)的音視頻流封裝和拆分成TS碎片音視頻流;
TS碎片存儲器用于存儲TS碎片音視頻流;
HTTP服務(wù)器用于根據(jù)用戶資料存儲器中合法用戶的資料驗證用戶,將M3U8文件的真實地址映射成一個隨機M3U8文件地址,返回給WEB瀏覽器,并設(shè)置所述隨機M3U8文件地址的有效期限,到期后銷毀所述隨機M3U8文件地址;
用戶資料存儲器用于存儲合法用戶的資料;
WEB瀏覽器用于向HTTP服務(wù)器發(fā)送用戶資料,并獲取隨機M3U8文件地址,解析所述隨機M3U8文件地址中包含的TS碎片音視頻流進行直播播放。采用了本發(fā)明的技術(shù)方案,可以有效地防止非法用戶的防盜鏈行為,保護了所有者的勞動成果,同時提高對直播服務(wù)的處理能力,降低運營成本,另外不影響合法用戶的直播服務(wù)請求,保護了合法用戶的合法權(quán)益。
圖1是本發(fā)明具體實施方式
中M3U8直播流防盜鏈系統(tǒng)的結(jié)構(gòu)示意圖。圖2是本發(fā)明具體實施方式
中M3U8直播流防盜鏈的流程圖。
具體實施例方式下面結(jié)合附圖并通過具體實施方式
來進ー步說明本發(fā)明的技術(shù)方案。本發(fā)明技術(shù)方案的主要思想是如果能夠把暴露在公眾面前m3u8文件的真實地址隱藏起來,讓用戶看到的是ー個在一段時間內(nèi)有效的隨機m3u8文件地址,在這段時間內(nèi)用戶可以對這個隨機m3u8文件包含的流媒體進行直播,如果超出這段時間,那么這個隨機m3u8文件地址失效,即使盜鏈用戶在這段時間內(nèi)獲得了這個隨機m3u8地址,也只能盜鏈這一段時間內(nèi)的直播流。圖I是本發(fā)明具體實施方式
中M3U8直播流防盜鏈系統(tǒng)的結(jié)構(gòu)示意圖。如圖I所示,該M3U8直播流防盜鏈系統(tǒng)包括視頻采集編碼及碎片處理器101、TS碎片存儲器102、HTTP服務(wù)器103、用戶資料存儲器104和WEB瀏覽器105。視頻采集編碼及碎片處理器、TS碎片存儲器、HTTP服務(wù)器和WEB瀏覽器依次連接,用戶資料存儲器與HTTP服務(wù)器連接。視頻采集編碼及碎片處理器對音視頻信號進行采集和編碼,并將持續(xù)的音視頻流封裝和拆分成TS碎片音視頻流。TS碎片存儲器存儲TS碎片音視頻流。HTTP服務(wù)器根據(jù)用戶資料存儲器中合法用戶的資料驗證用戶,將M3U8文件的真實地址映射成一個隨機M3U8文件地址,返回給WEB瀏覽器,并設(shè)置隨機M3U8文件地址的有效期限,到期后銷毀隨機M3U8文件地址;用戶資料存儲器存儲合法用戶的資料;
WEB瀏覽器向HTTP服務(wù)器發(fā)送用戶資料,并獲取隨機M3U8文件地址,解析隨機M3U8文件地址中包含的TS碎片音視頻流進行直播播放。在M3U8直播流防盜鏈的流程之前,要完成M3U8直播流的準備工作。首先由視頻采集編碼及碎片處理器對衛(wèi)星及有線電視信號進行采集編碼(H264+AAC),并把持續(xù)的音視頻流封裝和拆分成10秒或者5秒一段的TS碎片音視頻流,然后利用TS碎片存儲器把TS 碎片音視頻流保存起來,并對TS碎片音視頻流建立m3u8文件索引。圖2是本發(fā)明具體實施方式
中M3U8直播流防盜鏈的流程圖。如圖2所示,該M3U8直播流防盜鏈的流程包括以下步驟
步驟201、用戶資料存儲器存儲播放M3U8直播流合法用戶的資料,以備驗證,并為下一步直播的提供建立相關(guān)數(shù)據(jù)。步驟202、用戶通過WEB瀏覽器請求M3U8直播流的同時發(fā)送用戶資料。步驟203、HTTP服務(wù)器根據(jù)存儲的合法用戶的資料對用戶資料進行驗證,如果沒有通過驗證,轉(zhuǎn)至步驟204,如果通過驗證,轉(zhuǎn)至步驟205。步驟204、向WEB瀏覽器反饋用戶權(quán)限不夠的信息。步驟205、HTTP服務(wù)器將M3U8文件的真實地址映射成一個隨機M3U8文件地址,并設(shè)置隨機M3U8文件地址的有效期限。步驟206、HTTP服務(wù)器將隨機M3U8文件地址返回給WEB瀏覽器。步驟207、WEB瀏覽器獲得隨機M3U8文件地址,解析對應(yīng)的M3U8文件中包含的TS碎片音視頻流進行直播播放。步驟208、當隨機M3U8文件地址的有效期限結(jié)束后,隨機M3U8文件地址被銷毀,重復步驟202至步驟207,直到直播結(jié)束。以上所述,僅為本發(fā)明較佳的具體實施方式
,但本發(fā)明的保護范圍并不局限于此,任何熟悉該技術(shù)的人在本發(fā)明所揭露的技術(shù)范圍內(nèi),可輕易想到的變化或替換,都應(yīng)涵蓋在本發(fā)明的保護范圍之內(nèi)。因此,本發(fā)明的保護范圍應(yīng)該以權(quán)利要求的保護范圍為準。
權(quán)利要求
1.一種M3U8直播流防盜鏈方法,其特征在于,包括以下步驟 A、存儲播放M3U8直播流合法用戶的資料; B、用戶通過WEB瀏覽器請求M3U8直播流的同時發(fā)送用戶資料,HTTP服務(wù)器根據(jù)存儲的合法用戶的資料對用戶資料進行驗證,如果沒有通過驗證,向WEB瀏覽器反饋用戶權(quán)限不夠的信息,如果通過驗證,轉(zhuǎn)至步驟C ; C、HTTP服務(wù)器將M3U8文件的真實地址映射成一個隨機M3U8文件地址,并設(shè)置所述隨機M3U8文件地址的有效期限; D、HTTP服務(wù)器將所述隨機M3U8文件地址返回給WEB瀏覽器; E、WEB瀏覽器獲得所述隨機M3U8文件地址,解析對應(yīng)的M3U8文件中包含的TS碎片音視頻流進行直播播放; F、當所述隨機M3U8文件地址的有效期限結(jié)束后,所述隨機M3U8文件地址被銷毀,重復步驟B至步驟E,直到直播結(jié)束。
2.—種M3U8直播流防盜鏈系統(tǒng),其特征在于,包括視頻采集編碼及碎片處理器、TS碎片存儲器、HTTP服務(wù)器、用戶資料存儲器和WEB瀏覽器,視頻采集編碼及碎片處理器、TS碎片存儲器、HTTP服務(wù)器和WEB瀏覽器依次連接,用戶資料存儲器與HTTP服務(wù)器連接,其中, 視頻采集編碼及碎片處理器用于對音視頻信號進行采集和編碼,并將持續(xù)的音視頻流封裝和拆分成TS碎片音視頻流; TS碎片存儲器用于存儲TS碎片音視頻流; HTTP服務(wù)器用于根據(jù)用戶資料存儲器中合法用戶的資料驗證用戶,將M3U8文件的真實地址映射成一個隨機M3U8文件地址,返回給WEB瀏覽器,并設(shè)置所述隨機M3U8文件地址的有效期限,到期后銷毀所述隨機M3U8文件地址; 用戶資料存儲器用于存儲合法用戶的資料; WEB瀏覽器用于向HTTP服務(wù)器發(fā)送用戶資料,并獲取隨機M3U8文件地址,解析所述隨機M3U8文件地址中包含的TS碎片音視頻流進行直播播放。
全文摘要
本發(fā)明公開了一種M3U8直播流防盜鏈方法和系統(tǒng),把暴露在公眾面前m3u8文件的真實地址隱藏起來,讓用戶看到的是一個在一段時間內(nèi)有效的隨機m3u8文件地址,在這段時間內(nèi)用戶可以對這個隨機m3u8文件包含的流媒體進行直播,如果超出這段時間,那么這個隨機m3u8文件地址失效。采用了本發(fā)明的技術(shù)方案,即使盜鏈用戶在這段時間內(nèi)獲得了這個隨機m3u8地址,也只能盜鏈這一段時間內(nèi)的直播流,從而能夠有效地防止非法用戶的盜鏈行為,并且提高對直播服務(wù)的處理能力。
文檔編號H04L29/08GK102624752SQ20111002836
公開日2012年8月1日 申請日期2011年1月26日 優(yōu)先權(quán)日2011年1月26日
發(fā)明者于江, 伍昕, 吳鵬 申請人:天脈聚源(北京)傳媒科技有限公司