一種視頻分享方法和系統、視頻處理系統、及客戶端的制作方法
【專利摘要】本發明提供一種視頻分享方法和系統、視頻處理系統、及客戶端,當直播源單元接收到客戶端發送的視頻獲取請求時,將與視頻獲取請求對應的索引文件地址以及媒體文件地址向客戶端進行響應,以供客戶端將索引文件地址及媒體文件地址進行分享,或供客戶端根據索引文件地址以及媒體文件地址查詢點播源單元中是否存在對應的索引文件以及媒體文件,若是,則客戶端下載對應的索引文件以及媒體文件,若否,則客戶端根在直播源單元中查詢對應的索引文件以及媒體文件,并進行下載。本發明可以對視頻文件進行處理,且添加點播源單元,對索引文件以及媒體文件進行存儲,減小直播源單元的下載壓力,且令客戶端快捷方便的下載對應的視頻文件,并有利于視頻分享。
【專利說明】
一種視頻分享方法和系統、視頻處理系統、及客戶端
技術領域
[0001]本發明涉及一種視頻處理領域,特別是涉及一種視頻分享方法和系統、視頻處理系統、及客戶端。
【背景技術】
[0002]隨著編碼和傳輸技術的不斷完善,流媒體業務得到了越來越廣泛的應用。現在流行的流媒體應用有點播,直播,手機電視等。而實現流媒體視頻直播通常是通過INTERNET互聯網將正在播放的視頻信號通過特定方法推送用到用戶,并由用戶端的播放器將視頻信息展示為可視,可聽的視頻。
[0003]而在流媒體視頻直播的技術中,直播服務器是實現流媒體視頻直播很重要的一環,直播服務器一般需要完成三個任務,采集,編碼和發送。采集工作一般由專門的硬件負責,比如說Osprey系列采集卡。采集卡采完數據后把它們放在緩存中,然后等待服務器來讀取這些數據。當服務器獲得了音視頻原始數據后,將會調用相應的編碼器對它們進行編碼。AAC和MP3編碼器通常被用來編碼音頻數據,而視頻數據通常用Xvid,MPEG2,FFmpeg,和H264來編碼。流媒體一般使用TCP,UDP或者RTP等協議來傳輸。直播服務器系統包括了三個功能模塊,音視頻編碼模塊,差錯控制模塊,和傳輸控制模塊。這三個模塊可以構建一個穩定的直播服務器系統。音視頻模塊實現的主要功能是編碼數據,同時利用它的可擴展編碼技術實現多碼率編碼。由于在直播時,所有的壓縮數據都是實時編碼的,所以對服務器的運算處理能力有比較高的要求。而且當用比較復雜的編碼器壓縮大圖像時就會出現運算瓶頸問題,這時就需要對編碼器進行優化。差錯控制模塊可以用來傳輸過程中的處理丟包和比特差錯率等問題。把差錯控制模塊放置在信源端,它由兩個部分組成,編碼端的差錯規避和解碼端的差錯隱藏。差錯控制模塊也可以安排在傳輸過程中,把模塊放置在信源端的原因是實現簡單,而且在使用中具有很強的靈活性。傳輸控制模塊實現的功能主要是偵測可用帶寬,自適應的傳輸流媒體數據,避免擁塞以及和其它網絡流公平的分享帶寬。在這個模塊中使用RTSP(Real Time Streaming Protocol實時流傳輸協議)來進行傳輸前的握手,S卩匹配服務器和客戶端之間的傳輸參數。
[0004]以現在常用的RTSP技術為例,客戶端通過特定端口與服務器建立連接,服務器將當前的實時信號推送到客戶端,同時會接收客戶端的控制指令,以輸出的進行調整。這種方式可能產生的問題是:
[0005]1.服務器要對客戶端的指令實時響應,導致服務器負載過高;
[0006]2.服務器和客戶端的邏輯相對復雜;
[0007]3.視頻信號容錯機制低,服務器緩存有限,如果客戶端發生斷流重連,服務器只能從當如最新的內容提供服務;
[0008]4.服務器的直播內容不會保存,難于用來后期處理;
[0009]5.使用專用端口,容易被防火墻屏蔽。
[0010]多機負載均衡架構中,直播源單元與邊緣服務器之間必需保持連接,連接中斷會導致服務內容中斷。
【發明內容】
[0011]鑒于以上所述現有技術的缺點,本發明的目的在于提供一種視頻分享方法和系統、視頻處理系統、及客戶端,用于解決現有技術中客戶端不能在視頻直播過程中便捷高效的下載指定的視頻片段的問題。
[0012]為實現上述目的及其他相關目的,本發明提供一種視頻處理系統,包括:切片單元,用以對接收的視頻信號按照預設的切片時間進行切片以生成索引文件以及媒體文件;直播源單元,用以接收所述索引文件以及媒體文件以進行存儲;點播源單元,用以以預設時間周期從所述直播源單元下載所述索引文件以及媒體文件;其中,所述直播源單元接收到一客戶端發送的視頻獲取請求時,將與所述視頻獲取請求對應的索引文件地址以及媒體文件地址向所述客戶端進行響應,以供所述客戶端將所述索引文件地址以及媒體文件地址進行分享,或以供所述客戶端根據所述索引文件地址以及媒體文件地址查詢所述點播源單元中是否存在對應的索引文件以及媒體文件,若是,則所述客戶端下載所述對應的索引文件以及媒體文件,若否,則所述客戶端根據所述索引文件地址以及媒體文件地址在所述直播源單元中查詢對應的索引文件以及媒體文件,并進行下載。
[0013]于本發明一具體實施例中,所述切片單元對接收的所述視頻信號按照預設的切片時間進行切片以生成索引文件以及媒體文件后,對所述索引文件以及媒體文件進行封裝。
[0014]于本發明一具體實施例中,所述封裝格式為MpegTS。
[0015]于本發明一具體實施例中,所述點播源單元以預設時間周期從所述直播源單元下載所述索引文件以及媒體文件的操作包括:在當前預設時間周期內,判斷所述直播源單元中是否存在新的索引文件以及媒體文件,當為是時,下載所述新的索引文件以及媒體文件,并據以向所述直播源單元發送下載成功通知,并等待下一個時間周期的到來;當為否時,等待下一個時間周期的到來。
[0016]于本發明一具體實施例中,在當前預設時間周期內判斷所述直播源單元中存在新的索引文件以及媒體文件時,下載并存儲所述新的索引文件以及媒體文件,且對下載的所述新的索引文件以及媒體文件進行重新封裝,并對重新封裝的結果進行存儲。
[0017]于本發明一具體實施例中,所述預設時間周期根據所述切片時間以及所述點播源單元執行從所述直播源單元下載所述索引文件以及媒體文件的操作的時間來確定。
[0018]于本發明一具體實施例中,所述重新封裝后的格式為FLV。
[0019]于本發明一具體實施例中,所述客戶端通過內容分發網絡與所述直播源單元和所述點播源單元進行通信。
[0020]于本發明一具體實施例中,所述索引文件的格式為M3U8,所述媒體文件的格式為
TSo
[0021 ]為實現上述目的及其他相關目的,本發明還提供一種視頻分享方法,包括:向直播源單元發送視頻獲取請求;接收所述直播源單元根據所述視頻獲取請求反饋的索引文件地址以及媒體文件地址;將所述索引文件地址以及媒體文件地址進行分享,或根據所述索引文件地址以及媒體文件地址查詢點播源單元是否存在對應的索引文件以及媒體文件,當存在時,下載所述索引文件以及媒體文件;當不存在時,根據所述索引文件地址以及媒體文件地址在所述直播源單元中下載對應的索引文件以及媒體文件。
[0022]為實現上述目的及其他相關目的,本發明還提供一種視頻分享系統,包括:發送模塊,用以向直播源單元發送視頻獲取請求;接收模塊,用以接收所述直播源單元根據所述視頻獲取請求反饋的索引文件地址以及媒體文件地址;分享模塊,用以將所述索引文件地址以及媒體文件地址進行分享,下載模塊,用以根據所述索引文件地址以及媒體文件地址查詢點播源單元是否存在對應的索引文件以及媒體文件,當存在時,下載所述索引文件以及媒體文件;當不存在時,根據所述索引文件地址以及媒體文件地址在所述直播源單元中下載對應的索引文件以及媒體文件。
[0023]如上所述,本發明的視頻分享方法和系統、視頻處理系統、及客戶端,當直播源單元接收到一客戶端發送的視頻獲取請求時,將與視頻獲取請求對應的索引文件地址以及媒體文件地址向客戶端進行響應,以供所述客戶端將所述索引文件地址以及媒體文件地址進行分享,或以供客戶端根據索引文件地址以及媒體文件地址查詢點播源單元中是否存在對應的索引文件以及媒體文件,若是,則客戶端下載對應的索引文件以及媒體文件,若否,則客戶端根據索引文件地址以及媒體文件地址在直播源單元中查詢對應的索引文件以及媒體文件,并進行下載。本發明可以對視頻文件進行處理,且添加點播源單元,對索引文件以及媒體文件進行存儲,減小直播源單元的下載壓力,且令客戶端可以快捷方便的下載對應片段的視頻文件,并進行分享。
【附圖說明】
[0024]圖1顯示為本發明的視頻處理系統在一具體實施例中的結構示意圖。
[0025]圖2顯示為本發明的點播源單元在一具體實施例中運行的流程示意圖。
[0026]圖3顯示為本發明的視頻處理系統在一具體實施例中的應用示意圖。
[0027]圖4顯示為本發明的視頻分享方法在一具體實施例中的流程示意圖。
[0028]圖5顯示為本發明的視頻分享系統在一具體實施例中的模塊示意圖。
[0029]元件標號說明
[0030]I視頻處理系統
[0031]11切片單元
[0032]12直播源單元
[0033]13點播源單元
[0034]2視頻分享系統
[0035]21發送模塊
[0036]22接收模塊
[0037]23分享模塊
[0038]24下載模塊
[0039]Sll?S15 步驟
【具體實施方式】
[0040]以下通過特定的具體實例說明本發明的實施方式,本領域技術人員可由本說明書所揭露的內容輕易地了解本發明的其他優點與功效。本發明還可以通過另外不同的【具體實施方式】加以實施或應用,本說明書中的各項細節也可以基于不同觀點與應用,在沒有背離本發明的精神下進行各種修飾或改變。需說明的是,在不沖突的情況下,以下實施例及實施例中的特征可以相互組合。
[0041]需要說明的是,以下實施例中所提供的圖示僅以示意方式說明本發明的基本構想,遂圖示中僅顯示與本發明中有關的組件而非按照實際實施時的組件數目、形狀及尺寸繪制,其實際實施時各組件的型態、數量及比例可為一種隨意的改變,且其組件布局型態也可能更為復雜。
[0042]請參閱圖1,顯示為本發明的視頻處理系統在一具體實施例中的結構示意圖。所述視頻處理系統I包括:
[0043]切片單元11,用以對接收的視頻信號按照預設的切片時間進行切片以生成索引文件以及媒體文件;對視頻信號進行切片于一實施例中為實現單碼率轉多碼率。通過切片單元11對視頻信號進行轉碼切片操作,切片周期例如為10秒一個n.ts媒體文件,η為按順序排列的自然數,如1.ts、2.ts、3.ts等等,且同時會生成M3U8格式的索引文件。
[0044]直播源單元12,用以接收所述索引文件以及媒體文件以進行存儲。
[0045]點播源單元13,用以以預設時間周期從所述直播源單元下載所述索引文件以及媒體文件。
[0046]其中,所述直播源單元12接收到一客戶端發送的視頻獲取請求時,將與所述視頻獲取請求對應的索引文件地址以及媒體文件地址向所述客戶端進行響應,以供所述客戶端將所述索引文件地址以及媒體文件地址進行分享,例如分享至其他客戶端或其他服務器,和/或以供所述客戶端根據所述索引文件地址以及媒體文件地址查詢所述點播源單元13中是否存在對應的索引文件以及媒體文件,若是,則所述客戶端下載所述對應的索引文件以及媒體文件,若否,則所述客戶端根據所述索引文件地址以及媒體文件地址在所述直播源單元12中查詢對應的索引文件以及媒體文件,并進行下載。即客戶端可以選擇分享所述索引文件地址以及媒體文件地址或下載所述索引文件以及媒體文件,也可以同時進行分享所述索引文件地址以及媒體文件地址以及下載所述索引文件以及媒體文件的動作。
[0047]于具體應用中,所述客戶端例如為智能手機、平板電腦、臺式電腦、智能穿戴設備等具有數據處理能力的電子設備。
[0048]于本發明一具體實施例中,所述切片單元11對接收的所述視頻信號按照預設的切片時間進行切片以生成索引文件以及媒體文件后,對所述索引文件以及媒體文件進行封裝。
[0049]于本發明一具體實施例中,所述封裝格式為MpegTS。
[0050]于本發明一具體實施例中,所述客戶端通過內容分發網絡與所述直播源單元12和所述點播源單元13進行通信。
[0051 ]于本發明一具體實施例中,所述索引文件的格式為M3U8,即為一個文本,描述視頻的地址,內容例如為:
[0052]http://media.example.com/s_96ksegmentl.ts
[0053]http://media.example.com/s_96ksegment2.ts
[0054]http://media.example.com/s_96ksegment3.ts
[0055]優選的,所述媒體文件的格式為TS。
[0056]請參閱圖2,顯示為本發明的點播源單元在一具體實施例中運行的流程示意圖。具體為:
[0057]所述點播源單元13以預設時間周期從所述直播源單元12下載所述索引文件以及媒體文件的操作包括:在當前預設時間周期內,判斷所述直播源單元12中是否存在新的索引文件以及媒體文件,當為是時,下載所述新的索引文件以及媒體文件,并據以通知直播流服務進行,即據以向所述直播源單元發送下載成功通知,并等待下一個更新時間點,即等待下一個時間周期的到來;當為否時,等待下一個時間周期的到來。
[0058]于本實施例中,在當前預設時間周期內判斷所述直播源單元12中存在新的索引文件以及媒體文件時,下載并存儲所述新的索引文件以及媒體文件,且對下載的所述新的索引文件以及媒體文件進行轉封裝(重新封裝),并對重新封裝的結果進行存儲。
[0059]于本實施例中,所述預設時間周期根據所述切片時間以及所述點播源單元13執行從所述直播源單元下載所述索引文件以及媒體文件的操作的時間來確定。
[0060]于本發明一具體實施例中,所述重新封裝后的格式為FLV。這樣,點播源單元可以提供MpegTS和FLV兩種視頻流格式以及直播服務和視頻直播片段分享服務。
[0061]請參閱圖3,顯示為本發明的視頻處理系統在一具體實施例中的應用示意圖。
[0062]具體為包括以下運行步驟(其中圖中帶箭頭的連接線上的序號與下述的步驟序號對應):
[0063]步驟1:客戶端發送直播分享片段請求到⑶N(內容分發網絡)。
[0064]步驟2:⑶N接收客戶端請求,將請求發送給視頻直播源服務器。
[0065]步驟3:視頻直播源服務器接收請求,并把請求發送給點播源服務器。
[0066]步驟4:點播源服務器接收請求,并返回一個代碼200給視頻直播源服務器,告訴視頻直播源服務器已收到請求,并開始從視頻直播源服務器下載M3U8索引文件和TS媒體文件;
[0067]步驟5:視頻直播源服務器從點播源服務器接收到代碼200,并把當前最新的M3U8索引文件地址和當前直播視頻封面地址發送給⑶N。
[0068]步驟6:⑶N接收到M3U8索引文件地址和當前直播視頻封面地址,并發送給客戶端;
[0069]步驟7:客戶端根據接收到M3U8索引文件地址和當前直播視頻封面地址,訪問點播源服務器并判斷點播源服務器是否有請求需要的M3U8索引文件和TS媒體文件,是就從點播源服務器取M3U8索引文件和TS媒體文件,否就進行回源操作,也就是從視頻直播源服務器取M3U8索引文件和TS媒體文件。
[0070]請參閱圖4,顯示為本發明的視頻分享方法在一具體實施例中的流程示意圖。
[0071]所述視頻分享方法,應用于如上實施例中所述的客戶端中,于具體應用中,所述客戶端例如為智能手機、平板電腦、臺式電腦、智能穿戴設備等具有數據處理能力的電子設備。所述視頻分享方法包括以下步驟:
[0072]Sll:向所述直播源單元發送視頻獲取請求。
[0073]S12:接收所述直播源單元根據所述視頻獲取請求反饋的索引文件地址以及媒體文件地址。
[0074]SI 3:將所述索引文件地址以及媒體文件地址進行分享,和/或根據所述索引文件地址以及媒體文件地址查詢所述點播源單元是否存在對應的索引文件以及媒體文件,當存在時,執行步驟S14;當不存在時,執行步驟S15。即客戶端可以選擇分享所述索引文件地址以及媒體文件地址或下載所述索引文件以及媒體文件,也可以同時進行分享所述索引文件地址以及媒體文件地址以及下載所述索引文件以及媒體文件的動作。
[0075]S14:下載所述索引文件以及媒體文件。
[0076]S15:根據所述索引文件地址以及媒體文件地址在所述直播源單元中下載對應的索引文件以及媒體文件。
[0077]請參閱圖5,顯示為本發明的視頻分享系統在一具體實施例中的模塊示意圖。
[0078]所述視頻分享系統2應用于如上實施例中所述的客戶端中,于具體應用中,所述客戶端例如為智能手機、平板電腦、臺式電腦、智能穿戴設備等具有數據處理能力的電子設備。所述視頻分享系統包括以下模塊:
[0079]發送模塊21,用以向所述直播源單元12發送視頻獲取請求。
[0080]接收模塊22,用以接收所述直播源單元12根據所述視頻獲取請求反饋的索引文件地址以及媒體文件地址。
[0081 ]分享模塊23,用以將所述索引文件地址以及媒體文件地址進行分享,
[0082]下載模塊24,用以根據所述索引文件地址以及媒體文件地址查詢所述點播源單元13是否存在對應的索引文件以及媒體文件,當存在時,下載所述索引文件以及媒體文件;當不存在時,根據所述索引文件地址以及媒體文件地址在所述直播源單元12中下載對應的索引文件以及媒體文件。
[0083]綜上所述,本發明的視頻分享方法和系統、視頻處理系統、及客戶端,當直播源單元接收到一客戶端發送的視頻獲取請求時,將與視頻獲取請求對應的索引文件地址以及媒體文件地址向客戶端進行響應,以供所述客戶端將所述索引文件地址以及媒體文件地址進行分享,或以供客戶端根據索引文件地址以及媒體文件地址查詢點播源單元中是否存在對應的索引文件以及媒體文件,若是,則客戶端下載對應的索引文件以及媒體文件,若否,則客戶端根據索引文件地址以及媒體文件地址在直播源單元中查詢對應的索引文件以及媒體文件,并進行下載。本發明可以對視頻文件進行處理,且添加點播源單元,對索引文件以及媒體文件進行存儲,減小直播源單元的下載壓力,且令客戶端可以快捷方便的下載對應片段的視頻文件,并有利于視頻進行分享。所以,本發明有效克服了現有技術中的種種缺點而具高度產業利用價值。
[0084]上述實施例僅例示性說明本發明的原理及其功效,而非用于限制本發明。任何熟悉此技術的人士皆可在不違背本發明的精神及范疇下,對上述實施例進行修飾或改變。因此,舉凡所屬技術領域中具有通常知識者在未脫離本發明所揭示的精神與技術思想下所完成的一切等效修飾或改變,仍應由本發明的權利要求所涵蓋。
【主權項】
1.一種視頻處理系統,其特征在于,包括: 切片單元,用以對接收的視頻信號按照預設的切片時間進行切片以生成索引文件以及媒體文件; 直播源單元,用以接收所述索引文件以及媒體文件以進行存儲; 點播源單元,用以以預設時間周期從所述直播源單元下載所述索引文件以及媒體文件; 其中,所述直播源單元接收到一客戶端發送的視頻獲取請求時,將與所述視頻獲取請求對應的索引文件地址以及媒體文件地址向所述客戶端進行響應,以供所述客戶端將所述索引文件地址以及媒體文件地址進行分享,和/或以供所述客戶端根據所述索引文件地址以及媒體文件地址查詢所述點播源單元中是否存在對應的索引文件以及媒體文件,若是,則所述客戶端下載所述對應的索引文件以及媒體文件,若否,則所述客戶端根據所述索引文件地址以及媒體文件地址在所述直播源單元中查詢對應的索引文件以及媒體文件,并進行下載。2.根據權利要求1所述的視頻處理系統,其特征在于:所述切片單元對接收的所述視頻信號按照預設的切片時間進行切片以生成索引文件以及媒體文件后,對所述索引文件以及媒體文件進行封裝。3.根據權利要求1所述的視頻處理系統,其特征在于:所述點播源單元以預設時間周期從所述直播源單元下載所述索引文件以及媒體文件的操作包括: 在當前預設時間周期內,判斷所述直播源單元中是否存在新的索引文件以及媒體文件, 當為是時,下載所述新的索引文件以及媒體文件,并據以向所述直播源單元發送下載成功通知,并等待下一個時間周期的到來; 當為否時,等待下一個時間周期的到來。4.根據權利要求3所述的視頻處理系統,其特征在于:在當前預設時間周期內判斷所述直播源單元中存在新的索引文件以及媒體文件時,下載并存儲所述新的索引文件以及媒體文件,且對下載的所述新的索引文件以及媒體文件進行重新封裝,并對重新封裝的結果進行存儲。5.根據權利要求3所述的視頻處理系統,其特征在于:所述預設時間周期根據所述切片時間以及所述點播源單元執行從所述直播源單元下載所述索引文件以及媒體文件的操作的時間來確定。6.根據權利要求1所述的視頻處理系統,其特征在于:所述客戶端通過內容分發網絡與所述直播源單元和所述點播源單元進行通信。7.根據權利要求1所述的視頻處理系統,其特征在于:所述索引文件的格式為M3U8,所述媒體文件的格式為TS。8.一種視頻分享方法,其特征在于,包括: 向直播源單元發送視頻獲取請求;接收所述直播源單元根據所述視頻獲取請求反饋的索引文件地址以及媒體文件地址;將所述索引文件地址以及媒體文件地址進行分享,和/或根據所述索引文件地址以及媒體文件地址查詢點播源單元是否存在對應的索引文件以及媒體文件,當存在時,下載所述索引文件以及媒體文件;當不存在時,根據所述索引文件地址以及媒體文件地址在所述直播源單元中下載對應的索引文件以及媒體文件。9.一種視頻分享系統,其特征在于:包括: 發送模塊,用以向直播源單元發送視頻獲取請求; 接收模塊,用以接收所述直播源單元根據所述視頻獲取請求反饋的索引文件地址以及媒體文件地址; 分享模塊,用以將所述索引文件地址以及媒體文件地址進行分享; 下載模塊,用以根據所述索引文件地址以及媒體文件地址查詢點播源單元是否存在對應的索引文件以及媒體文件,當存在時,下載所述索引文件以及媒體文件;當不存在時,根據所述索引文件地址以及媒體文件地址在所述直播源單元中下載對應的索引文件以及媒體文件。10.一種客戶端,其特征在于:運行如權利要求9所述的視頻分享系統。
【文檔編號】H04N21/858GK105872858SQ201610270248
【公開日】2016年8月17日
【申請日】2016年4月27日
【發明人】黃思鈞, 應偉, 潘載杰, 凌飛鵬
【申請人】亦非云互聯網技術(上海)有限公司