TW201445989A - 分散式編解碼系統及方法 - Google Patents
分散式編解碼系統及方法 Download PDFInfo
- Publication number
- TW201445989A TW201445989A TW102119034A TW102119034A TW201445989A TW 201445989 A TW201445989 A TW 201445989A TW 102119034 A TW102119034 A TW 102119034A TW 102119034 A TW102119034 A TW 102119034A TW 201445989 A TW201445989 A TW 201445989A
- Authority
- TW
- Taiwan
- Prior art keywords
- document
- server
- encoding
- servers
- client
- Prior art date
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/06—Protocols specially adapted for file transfer, e.g. file transfer protocol [FTP]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/60—Network streaming of media packets
- H04L65/75—Media network packet handling
- H04L65/765—Media network packet handling intermediate
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1001—Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
- H04L67/1004—Server selection for load balancing
- H04L67/1008—Server selection for load balancing based on parameters of servers, e.g. available memory or workload
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1001—Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
- H04L67/1004—Server selection for load balancing
- H04L67/101—Server selection for load balancing based on network conditions
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/21—Server components or server architectures
- H04N21/222—Secondary servers, e.g. proxy server, cable television Head-end
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/25—Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
- H04N21/258—Client or end-user data management, e.g. managing client capabilities, user preferences or demographics, processing of multiple end-users preferences to derive collaborative data
- H04N21/25808—Management of client data
- H04N21/25825—Management of client data involving client display capabilities, e.g. screen resolution of a mobile phone
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/25—Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
- H04N21/258—Client or end-user data management, e.g. managing client capabilities, user preferences or demographics, processing of multiple end-users preferences to derive collaborative data
- H04N21/25808—Management of client data
- H04N21/25833—Management of client data involving client hardware characteristics, e.g. manufacturer, processing or storage capabilities
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/80—Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
- H04N21/83—Generation or processing of protective or descriptive data associated with content; Content structuring
- H04N21/845—Structuring of content, e.g. decomposing content into time segments
- H04N21/8456—Structuring of content, e.g. decomposing content into time segments by decomposing the content in the time domain, e.g. in time segments
Abstract
一種分散式編解碼系統,包括傳送模組、選擇模組、計算模組等多個功能模組。利用上述功能模組,可確定用戶端所需的目標文檔;選擇儲存該目標文檔的源伺服器;確定各個源伺服器的優先順序,並確定編碼伺服器;將該目標文檔分割為多個文檔區塊,並依序分配各個編碼伺服器所需處理的文檔區塊;生成分配記錄表並同步至所有的編碼伺服器及所述用戶端中,所述編碼伺服器根據所述分配記錄表對所分配的文檔區塊進行編碼處理。本發明還提供一種分散式編解碼方法。
Description
本發明涉及編解碼技術,尤其涉及一種分散式編解碼系統及方法。
通常,視頻信號在傳送前需要先進行壓縮編碼,即對視頻源進行壓縮編碼,然後利用網路進行傳送,從而節省傳送帶寬和儲存空間等。隨著視頻編碼標準的提高,解析度越來越高,位元率減少,然而,計算複雜度也相應提升了。例如,高效率的視頻編碼(HEVC,High Efficiency Video Coding),最多可節省40~50% 之位元率,然而計算複雜度可能會提升2~10倍,甚至更多。
因此,計算複雜度的提示必然會造成對視頻信號的編解碼的計算時間出現提升,如此,必然影響對視頻信號的編解碼的效率。
鑒於以上內容,有必要提供一種分散式編解碼系統及方法,可對多媒體文檔進行分割處理,並利用分散式的多伺服器分別對分割後的不同的文檔區塊進行編碼處理,從而提高編碼效率。
進一步地,還有必要提供一種分散式編解碼系統及方法,可在用戶端接收從多個伺服器傳送的編碼後的文檔區塊,依序進行解碼,並對解碼後的多個文檔區塊進行整合以生成完整的多媒體文檔,從而實現資料傳送的頻寬(band width)消耗得以降低。
一種分散式編解碼方法,應用於主伺服器,所述主伺服器與多個從伺服器及用戶端相連接,該方法包括:接收用戶端需求,並確定用戶端所需的多媒體文檔為目標文檔;選擇多個儲存了該目標文檔的從伺服器為源伺服器;確定各個源伺服器的優先順序;根據優先順序從所述源伺服器中確定多個編碼伺服器;根據其中一個編碼伺服器中存儲的目標文檔的資訊,將該目標文檔分割為多個文檔區塊;根據預設的分配方法,依序分配各個編碼伺服器所需處理的文檔區塊,生成分配記錄表並記錄每個編碼伺服器所需處理的文檔區塊;及將所述分配記錄表同步至所有的編碼伺服器及所述用戶端中,所述編碼伺服器根據所述分配記錄表對所分配的文檔區塊進行編碼處理。
一種分散式編解碼方法,應用於用戶端,所述用戶端與主伺服器及多個從伺服器相連接,該方法包括:發送需求至所述主伺服器,該需求包括所述用戶端所需的多媒體文檔的資訊,該多媒體文檔確定為目標文檔;接收從所述主伺服器同步傳送的分配記錄表,所述分配記錄表記錄了編碼伺服器的編號及順序、及編碼伺服器所需處理的文檔區塊;接收從每個編碼伺服器傳回的編碼後的文檔區塊,並根據預設順序對編碼後的文檔區塊進行解碼處理;及根據所述分配記錄表確定在已經接收到所有的編碼後的文檔區塊時,對解碼後的文檔區塊進行重組並生成完整的目標文檔。
一種分散式編解碼系統,應用於主伺服器,所述主伺服器與多個從伺服器及用戶端相連接,該系統包括:傳送模組,用於接收用戶端需求,並確定用戶端所需的多媒體文檔為目標文檔;選擇模組,用於選擇多個儲存了該目標文檔的從伺服器為源伺服器;計算模組,用於確定各個源伺服器的優先順序;確定模組,用於根據優先順序從所述源伺服器中確定多個編碼伺服器;分割模組,用於根據其中一個編碼伺服器中存儲的目標文檔的資訊,將該目標文檔分割為多個文檔區塊;分配模組,用於根據預設的分配方法,依序分配各個編碼伺服器所需處理的文檔區塊,生成分配記錄表並記錄每個編碼伺服器所需處理的文檔區塊;及同步模組,用於將所述分配記錄表同步至所有的編碼伺服器及所述用戶端中,所述編碼伺服器根據所述分配記錄表對所分配的文檔區塊進行編碼處理。
一種分散式編解碼系統,應用於用戶端,所述用戶端與主伺服器及多個從伺服器相連接,該系統包括:傳送模組,用於發送需求至所述主伺服器,該需求包括所述用戶端所需的多媒體文檔的資訊,該多媒體文檔確定為目標文檔;所述的傳送模組,還用於接收從所述主伺服器同步傳送的分配記錄表,以及接收從每個編碼伺服器傳回的編碼後的文檔區塊,所述分配記錄表記錄了編碼伺服器的編號及順序、及編碼伺服器所需處理的文檔區塊;解碼模組,用於根據預設順序對編碼後的文檔區塊進行解碼處理;及整合模組,用於根據所述分配記錄表確定在已經接收到所有的編碼後的文檔區塊時,對解碼後的文檔區塊進行重組並生成完整的目標文檔。
相較於習知技術,所述的分散式編解碼系統及方法,可對多媒體文檔進行分割處理,並利用分散式的多伺服器分別對分割後的不同的影像片段(或影像區塊)進行編碼處理,從而提高編碼效率,並減少利用單一伺服器進行編碼而造成該伺服器負載過重的問題。此外,所述的分散式編解碼系統及方法,還可在用戶端接收從多個伺服器傳送的編碼後的文檔區塊,依序進行解碼,並對解碼後的多個文檔區塊進行整合以生成完整的多媒體文檔,從而實現資料傳送的頻寬消耗得以降低。
1...伺服器
11...處理器
12...儲存裝置
2...用戶端
21...處理器
22...儲存裝置
3...分散式編解碼系統
30...傳送模組
31...選擇模組
32...計算模組
33...確定模組
34...分割模組
35...分配模組
36...同步模組
37...編碼模組
38...解碼模組
39...整合模組
圖1是本發明分散式編解碼系統的較佳實施方式的運行環境圖。
圖2是本發明分散式編解碼系統的較佳實施方式的硬體架構圖。
圖3是本發明分散式編解碼系統的較佳實施方式的功能模組圖。
圖4是本發明分散式編解碼系統的分配記錄表的示意圖。
圖5是本發明分散式編解碼方法的較佳實施方式的編碼流程圖。
圖6是本發明分散式編解碼方法的較佳實施方式的解碼流程圖。
如圖1所示,是本發明分散式編解碼系統的較佳實施方式的運行環境圖。如圖2所示,是本發明分散式編解碼系統的較佳實施方式的硬體架構圖。下文結合圖1、圖2進行說明。
所述的分散式編解碼系統3應用於多個伺服器1及用戶端2中,所述的伺服器1可以是電腦、電腦主機等裝置,所述的用戶端2可以是電腦、手機、電視、平板電腦、筆記本電腦、個人數位助理等電子裝置。在本較佳實施方式中,所述伺服器1與用戶端2、以及多個伺服器1之間可藉由網際網路(Internet)、內部網路(Intranet)或其他類型的通訊網路進行連接,以實現資料的傳輸。
在第一實施方式中,可預先指定多個伺服器1中的一個伺服器1為主伺服器(例如圖1中的伺服器A),則其餘伺服器1(例如圖1中的伺服器B、C、D等)可被認為是從伺服器。該主伺服器的指定可以根據實際需求進行修改,例如,可將伺服器B指定為主伺服器。對所述主伺服器和從伺服器的確定可以利用所述的分散式編解碼系統3進行。
此外,在第二實施方式中,可以有一個特定的主伺服器獨立於其他所有的伺服器。
在本較佳實施方式中,所述的分散式編解碼系統3可應用於各個伺服器1和所述用戶端2中。所述的分散式編解碼系統3用於確定所述用戶端2所需的目標文檔,確定多個編碼伺服器,對所述目標文檔進行分割,生成多個文檔區塊,根據預設的分配方法將該多個文檔區塊分配至所述編碼伺服器進行分散式編碼,然後根據預設的傳送方式將編碼後的文檔區塊傳至所述用戶端2。
進一步地,所述的分散式編解碼系統3還用於在所述用戶端2接收從各個編碼伺服器傳送的編碼後的文檔區塊,並進行相應的解碼處理,以及將解碼後的文檔區塊進行整合以生成一個完整的多媒體文檔。
所述的伺服器1包括處理器11以及儲存裝置12,所述的用戶端2包括處理器21以及儲存裝置22。所述處理器11、21用於執行所述分散式編解碼系統3以及在所述伺服器1或所述用戶端2內安裝的各類軟體,例如作業系統等。所述儲存裝置12、22可以是硬碟,或者其他類型的儲存卡或儲存設備。所述的儲存裝置12、22用於儲存各類資料,例如,視頻、音頻、影像、文字檔案等資訊,以及用於儲存利用所述分散式編解碼系統3所設置、接收的資料。
如圖3所示,是本發明分散式編解碼系統的較佳實施方式的功能模組圖。在本實施方式中,所述分散式編解碼系統3包括多個功能模組,分別是:傳送模組30、選擇模組31、計算模組32、確定模組33、分割模組34、分配模組35、同步模組36、編碼模組37、解碼模組38以及整合模組39。
本發明所稱的模組是完成一特定功能的程式段,比程式更適合於描述軟體在所述用戶端2中的執行過程。以下將結合圖5和圖6說明各模組的具體功能。
如圖5所示,是本發明分散式編解碼方法的較佳實施方式的編碼流程圖。在本實施方式中,假設所述的伺服器A為主伺服器,除了下文中特別說明的不同實施例中的不同執行方式之外,本流程圖中的步驟由安裝在所述主伺服器中的分散式編解碼3中的各個功能模組所執行。
首先,步驟S2,所述的傳送模組30接收所述用戶端需求,並根據該需求確定所述用戶端2所需的多媒體文檔為目標文檔。例如,所述的目標文檔可以是視頻文檔、音頻文檔、影像文檔或文字檔案。
例如,所述的分散式編解碼系統3可提供用戶介面及相應的欄位元或文檔清單,供用戶輸入所需的多媒體文檔的名稱或其他資訊進行檢索,或接收用戶所選擇的視頻文檔。
步驟S4,所述的選擇模組31從所述多個伺服器1中選擇多個儲存了該目標文檔的伺服器1為源伺服器。此外,在其他實施方式中,儲存了該目標文檔的片段的伺服器1也可視為源伺服器。
步驟S6,所述的計算模組32確定各個源伺服器的優先順序。
所述的計算模組32可以根據公式“P=QoS ÷ Overhead”計算各個源伺服器的優先順序,其中,“P”代表每個源伺服器的優先順序,“QoS”表示每個源伺服器與該用戶端2所連接的網路的品質參數,及“Overhead”表示每個源伺服器所消耗的資源。例如,所述“QoS”是指該每個源伺服器與用戶端2之間網路所傳送的封包數(例如,每個源伺服器相應於所述用戶端2的已傳送或已收到的封包數,或者所述用戶端2與每個源伺服器之間的已傳送或已收到的封包數等)、流量或者速度,“Overhead”是每個源伺服器中的處理器或記憶體的佔用率(或稱使用率)。
假設,源伺服器A的與該用戶端2所連接的網路的速度是1.0Gbps,源伺服器A中的處理器的佔用率為20%,則源伺服器A的優先順序為1.0÷20%=5。源伺服器B的與該用戶端2所連接的網路的速度是0.9Gbps,源伺服器B中的處理器的佔用率為30%,則源伺服器B的優先順序為0.9÷30%=3。
此外,在其他實施方式中,所述的計算模組32還可根據其他方式計算各個源伺服器的優先順序,例如,依據各個源伺服器與該用戶端2所連接的網路的品質參數、依據各個源伺服器的當前的負載、依據各個源伺服器的當前的工作排程等。所述計算模組32可根據實際需求對該計算源伺服器的優先順序的方式進行預先設置及修改。
步驟S8,所述的確定模組33根據優先順序從所述源伺服器中確定多個編碼伺服器。
所述的確定模組33可根據各個源伺服器的優先順序從高至低的順序,依序選擇預設數量為M個的編碼伺服器。例如,參考圖1所示,假設多個源伺服器A、B、C、D被選擇為編碼伺服器,其中,伺服器A為主伺服器,伺服器B、C、D為從伺服器。每個編碼伺服器皆與所述用戶端2相連接,並且每個從伺服器與所述主伺服器相連接。此外,各個從伺服器之間也可進行連接。
步驟S10,所述的分割模組34根據其中一個編碼伺服器中存儲的目標文檔的資訊,將該目標文檔分割為多個文檔區塊。所述對目標文檔的分割方式包括:虛擬分割及實體分割。如果是虛擬分割,則所述的分割模組34僅是根據一個完整的目標文檔的資訊(例如,文檔的大小,或者文檔的播放時間的長度等資訊)來確定多個文檔區塊的相關資訊,此時,所述的分割模組34並非對該目標文檔進行實體的分割,而僅僅是確定相應的多個文檔區塊的資訊,例如,記錄每個文檔區塊的大小,該文檔區塊對應的片段(例如,視頻、音頻等片段)所播放的起始時間、終止時間等。因此,後續涉及編碼流程時,各個編碼伺服器根據被分配到的文檔區塊的相關資訊來確定需要進行編碼的文檔區塊,然後再對確定的文檔區塊進行編碼。
如果是實體分割,則所述的分割模組34可直接對其中一個編碼伺服器(例如,所述的主伺服器A)中存儲的完整的目標文檔進行分割,並得到多個分割後的文檔區塊,然後確定每個文檔區塊的如上所述的相應資訊。
上述每個文檔區塊的相應資訊需要寫入下文進行詳細介紹的分配記錄表,以供各個編碼伺服器識別及確定各自所需進行編碼的文檔區塊。
所述的分割模組34可以根據預設的分割方式及分割數量對該目標文檔進行分割,還可藉由提供多個分割數量供所述用戶端2選擇,然後根據用戶端所選擇的分割數量將該目標文檔分割為N×N個文檔區塊。例如,該分割數量可以是1×1、2×2、4×4、16×16等。
此外,所述的編碼伺服器的數量M可以是根據所述用戶端2所選擇的對目標文檔的分割數量所確定,所述的編碼伺服器的數量M大於等於N×N。例如,當分割數量為2×2時,編碼伺服器的數量M≧4。
步驟S12,所述的分配模組35根據預設的分配方法,依序分配各個編碼伺服器所需處理(例如,編碼)的文檔區塊,生成分配記錄表並記錄每個編碼伺服器所需處理的文檔區塊的相關資訊。所述的分配記錄表先儲存在所述的主伺服器中。
所述的預設的分配方法為根據優先順序的高低順序並採用輪叫(Round-Robin)方法,依序並逐個分配各個編碼伺服器所需處理的文檔區塊。
所述的分配記錄表記錄了所述目標文檔的大小、分割後文檔區塊的大小、順序及在所述目標文檔中的位置、依據預設順序排列的編碼伺服器的編號及順序、各個編碼伺服器所分配到的需處理的文檔區塊的識別碼以及各個編碼伺服器被分配到的文檔區塊的數量,其中,所述識別碼在所述目標文檔被分割時所賦予。
例如,參考如圖4所示的分配記錄表,所述的分配模組35依序將文檔區塊1分配給伺服器A(主伺服器),將文檔區塊2分配給伺服器B,將文檔區塊3分配給伺服器C,將文檔區塊4分配給伺服器D,然後,繼續將文檔區塊5分配給伺服器A,將文檔區塊6分配給伺服器B,以此類推。
此外,在其他實施方式中,所述的源伺服器還包括儲存了該目標文檔的片段的伺服器1。在有一個或多個編碼伺服器中儲存的是該目標文檔的片段時,所述的分配模組35分配該一個或多個編碼伺服器對各自儲存的目標文檔的片段所對應的文檔區塊進行編碼,並依據預設的分配方法將剩餘的文檔區塊分配給其餘的編碼伺服器進行處理。
在有多個編碼伺服器中儲存的該目標文檔的片段所對應的文檔區塊為相同時,並且在該相同的文件區塊為單個時,所述的分配模組35選擇具備較高優先順序的編碼伺服器對該相同的文檔區塊進行編碼處理。或者,在該相同的文檔區塊為多個時,所述的分配模組35根據預設的分配方法將該多個相同的文檔區塊分配給該多個編碼伺服器進行編碼處理。
步驟S14,所述的同步模組36將所述分配記錄表同步至所有的編碼伺服器及所述用戶端2中。例如,所述的同步模組36可根據預設的同步週期定期將所述主伺服器中儲存的分配記錄表同步至其他的編碼伺服器及用戶端2中。
如上述舉例說明,在本實施方式中,主伺服器也是編碼伺服器中的一個時,則本流程繼續執行後續的步驟S16至S18,同時步驟S16至S18也執行於其他的編碼伺服器中。
步驟S16,所述的編碼模組37根據所述分配記錄表對每個編碼伺服器被分配到的文檔區塊進行編碼處理。所述的編碼模組37可根據預設的格式或編碼的方式對被分配到的文檔區塊進行編碼處理。
此步驟應用於所有的編碼伺服器中以實現對分割及分配後的文檔區塊進行分散式編碼。
步驟S18,所述的傳送模組30將編碼後的文檔區塊依據預設的傳送方式傳送至所述用戶端,然後,結束本流程。
在本較佳實施方式中,所述的預設的傳送方式可以包括,但不限於:每個編碼伺服器直接將編碼後的文檔區塊分別傳送給所述用戶端2;或每個編碼伺服器依據預設的傳送排程將編碼後的文檔區塊傳送給所述用戶端2;或每個編碼伺服器將編碼後的文檔區塊先傳送至指定的編碼伺服器,並利用該指定的編碼伺服器將所述的文檔區塊傳送至用戶端2,該指定的編碼伺服器是主伺服器或從伺服器中的一個或多個。
在其他實施方式中,若主伺服器並非編碼伺服器,則步驟S16將執行於各個編碼伺服器中,而步驟S18則視預設的傳送方式的內容來確定是執行於各個編碼伺服器中(例如,預設的傳送方式為“每個編碼伺服器直接將編碼後的文檔區塊分別傳送給所述用戶端”等時),或是執行於主伺服器及各個編碼伺服器中(例如,預設的傳送方式為“每個編碼伺服器將編碼後的文檔區塊先傳送至指定的編碼伺服器,並利用該指定的編碼伺服器將所述的文檔區塊傳送至用戶端,並且該指定的編碼伺服器是主伺服器”時)。
如圖6所示,是本發明分散式編解碼方法的較佳實施方式的解碼流程圖,本流程應用於所述的用戶端2。
步驟S20,所述的傳送模組30發送所述用戶端2的需求至所述主伺服器。該需求包括所述用戶端所需的多媒體文檔的資訊,該多媒體文檔被確定為目標文檔。
步驟S22,所述的傳送模組30接收從所述的主伺服器所同步傳送的分配記錄表,以及接收從每個編碼伺服器傳回的編碼後的文檔區塊。
所述的分配記錄表記錄了所述目標文檔的大小、分割後文檔區塊的大小、順序及在所述目標文檔中的位置、依據預設順序排列的編碼伺服器的編號及順序、各個編碼伺服器所分配到的需處理的文檔區塊的識別碼以及各個編碼伺服器被分配到的文檔區塊的數量,其中,所述識別碼在所述目標文檔被分割時所賦予。
步驟S24,所述的解碼模組38根據預設順序對編碼後的文檔區塊進行解碼處理。
所述的預設順序可以是所述用戶端2接收各個編碼後的文檔區塊的接收順序、或者是各個編碼伺服器的預設排列順序、或者是所述編碼後的文檔區塊的排列順序(例如,依照文檔區塊的識別碼所確定的排列順序)。
步驟S26,所述的整合模組39根據所述分配記錄表判斷所述用戶端2是否已經接收到所有的編碼後的文檔區塊。若所述用戶端2尚未接收到所有的編碼後的文檔區塊,流程返回至步驟S24。若所述用戶端2已經接收到所有的編碼後的文檔區塊,執行步驟S28。
步驟S28,所述的整合模組39在所述用戶端已經接收到所有的編碼後的文檔區塊時,根據該分配記錄表對解碼後的文檔區塊進行重組並生成完整的目標文檔,然後,結束本流程。
此外,在其他實施方式中,所述的整合模組39還可進一步調用播放軟體以播放所述完整的目標文檔。
最後應說明的是,以上實施方式僅用以說明本發明的技術方案而非限制,儘管參照較佳實施方式對本發明進行了詳細說明,本領域的普通技術人員應當理解,可以對本發明的技術方案進行修改或等同替換,而不脫離本發明技術方案的精神和範圍。
3...分散式編解碼系統
30...傳送模組
31...選擇模組
32...計算模組
33...確定模組
34...分割模組
35...分配模組
36...同步模組
37...編碼模組
38...解碼模組
39...整合模組
Claims (21)
- 一種分散式編解碼方法,應用於主伺服器,所述主伺服器與多個從伺服器及用戶端相連接,該方法包括:
接收用戶端需求,並確定用戶端所需的多媒體文檔為目標文檔;
選擇多個儲存了該目標文檔的從伺服器為源伺服器;
確定各個源伺服器的優先順序;
根據優先順序從所述源伺服器中確定多個編碼伺服器;
根據其中一個編碼伺服器中存儲的目標文檔的資訊,將該目標文檔分割為多個文檔區塊;
根據預設的分配方法,依序分配各個編碼伺服器所需處理的文檔區塊,生成分配記錄表並記錄每個編碼伺服器所需處理的文檔區塊;及
將所述分配記錄表同步至所有的編碼伺服器及所述用戶端中,所述編碼伺服器根據所述分配記錄表對所分配的文檔區塊進行編碼處理。 - 如申請專利範圍第1項所述的分散式編解碼方法,該方法還包括:
根據所述分配記錄表,各個編碼伺服器對被分配到的文檔區塊進行編碼處理;及
將編碼後的文檔區塊依據預設的傳送方式傳送至所述用戶端。 - 如申請專利範圍第2項所述的分散式編解碼方法,所述的預設的傳送方式包括:
每個編碼伺服器直接將編碼後的文檔區塊分別傳送給所述用戶端;或
每個編碼伺服器依據預設的傳送排程將編碼後的文檔區塊傳送給所述用戶端;或
每個編碼伺服器將編碼後的文檔區塊先傳送至指定的編碼伺服器,並利用該指定的編碼伺服器將所述的文檔區塊傳送至用戶端,該指定的編碼伺服器是主伺服器或從伺服器。 - 如申請專利範圍第1項所述的分散式編解碼方法,所述的各個源伺服器的優先順序根據公式P=QoS ÷ Overhead進行計算,其中,“P”代表每個源伺服器的優先順序,“QoS”表示每個源伺服器與該用戶端所連接的網路的品質參數,及“Overhead”表示每個源伺服器所消耗的資源。
- 如申請專利範圍第4項所述的分散式編解碼方法,所述“QoS”是指該每個源伺服器與用戶端之間網路所傳送的封包數、流量或者速度,以及“Overhead”是每個源伺服器中的處理器或記憶體的佔用率。
- 如申請專利範圍第1至5項中任一項所述的分散式編解碼方法,該方法還包括:
提供多個分割數量供所述用戶端選擇對所述目標文檔進行分割;及
根據用戶端所選擇的分割數量將該目標文檔分割為N×N個文檔區塊。 - 如申請專利範圍第6項所述的分散式編解碼方法,所述的編碼伺服器的數量是根據所述用戶端所選擇的對目標文檔的分割數量所確定,所述的編碼伺服器的數量大於等於N×N。
- 如申請專利範圍第1至5項中任一項所述的分散式編解碼方法,所述的預設的分配方法為根據優先順序的高低順序並採用輪叫方法,依序並逐個分配各個編碼伺服器所需處理的文檔區塊。
- 如申請專利範圍第1至5項中任一項所述的分散式編解碼方法,所述的分配記錄表記錄了所述目標文檔的大小、分割後文檔區塊的大小、順序及在所述目標文檔中的位置、依據預設順序排列的編碼伺服器的編號及順序、各個編碼伺服器所分配到的需處理的文檔區塊的識別碼以及各個編碼伺服器被分配到的文檔區塊的數量,其中,所述識別碼在所述目標文檔被分割時所賦予。
- 如申請專利範圍第1至5項中任一項所述的分散式編解碼方法,所述的源伺服器還包括儲存了該目標文檔的片段的伺服器。
- 如申請專利範圍第10項所述的分散式編解碼方法,該方法還包括:
在有一個或多個編碼伺服器中儲存的是該目標文檔的片段時,分配該一個或多個編碼伺服器對各自儲存的目標文檔的片段所對應的文檔區塊進行編碼,並依據預設的分配方法將剩餘的文檔區塊分配給其餘的編碼伺服器進行處理。 - 如申請專利範圍第11項所述的分散式編解碼方法,在有多個編碼伺服器中儲存的該目標文檔的片段所對應的文檔區塊為相同時,該方法還包括:
在該相同的文檔區塊為單個時,選擇具備較高優先順序的編碼伺服器對該相同的文檔區塊進行編碼處理;或
在該相同的文檔區塊為多個時,根據預設的分配方法將該多個相同的文檔區塊分配給該多個編碼伺服器進行編碼處理。 - 如申請專利範圍第1至5項中任一項所述的分散式編解碼方法,所述的目標文檔是視頻、音頻或影像。
- 如申請專利範圍第1至5項中任一項所述的分散式編解碼方法,所述的編碼伺服器包括所述的主伺服器及/或從伺服器中的一個或多個。
- 一種分散式編解碼方法,應用於用戶端,所述用戶端與主伺服器及多個從伺服器相連接,該方法包括:
發送需求至所述主伺服器,該需求包括所述用戶端所需的多媒體文檔的資訊,該多媒體文檔確定為目標文檔;
接收從所述主伺服器同步傳送的分配記錄表,所述分配記錄表記錄了編碼伺服器的編號及順序、及編碼伺服器所需處理的文檔區塊;
接收從每個編碼伺服器傳回的編碼後的文檔區塊,並根據預設順序對編碼後的文檔區塊進行解碼處理;及
根據所述分配記錄表確定在已經接收到所有的編碼後的文檔區塊時,對解碼後的文檔區塊進行重組並生成完整的目標文檔。 - 如申請專利範圍第15項所述的分散式編解碼方法,所述目標文檔的大小、分割後文檔區塊的大小、順序及在所述目標文檔中的位置、各個編碼伺服器所分配到的需處理的文檔區塊的識別碼以及各個編碼伺服器被分配到的文檔區塊的數量,其中,所述識別碼在所述目標文檔被分割時所賦予。
- 如申請專利範圍第15項所述的分散式編解碼方法,所述的預設順序是所述用戶端接收各個編碼後的文檔區塊的接收順序、或者是各個編碼伺服器的預設排列順序、或者是所述編碼後的文檔區塊的排列順序。
- 如申請專利範圍第15至17項中任一項所述的分散式編解碼方法,該方法還包括:
調用相應的播放軟體以播放所述完整的目標文檔。 - 一種分散式編解碼系統,應用於主伺服器,所述主伺服器與多個從伺服器及用戶端相連接,該系統包括:
傳送模組,用於接收用戶端需求,並確定用戶端所需的多媒體文檔為目標文檔;
選擇模組,用於選擇多個儲存了該目標文檔的從伺服器為源伺服器;
計算模組,用於確定各個源伺服器的優先順序;
確定模組,用於根據優先順序從所述源伺服器中確定多個編碼伺服器;
分割模組,用於根據其中一個編碼伺服器中存儲的目標文檔的資訊,將該目標文檔分割為多個文檔區塊;
分配模組,用於根據預設的分配方法,依序分配各個編碼伺服器所需處理的文檔區塊,生成分配記錄表並記錄每個編碼伺服器所需處理的文檔區塊;及
同步模組,用於將所述分配記錄表同步至所有的編碼伺服器及所述用戶端中,所述編碼伺服器根據所述分配記錄表對所分配的文檔區塊進行編碼處理。 - 如申請專利範圍第19項所述的分散式編解碼系統,該系統還包括:
編碼模組,用於根據所述分配記錄表對每個編碼伺服器被分配到的文檔區塊進行編碼處理;及
所述的傳送模組,還用於將編碼後的文檔區塊依據預設的傳送方式傳送至所述用戶端。 - 一種分散式編解碼系統,應用於用戶端,所述用戶端與主伺服器及多個從伺服器相連接,該系統包括:
傳送模組,用於發送需求至所述主伺服器,該需求包括所述用戶端所需的多媒體文檔的資訊,該多媒體文檔確定為目標文檔;
所述的傳送模組,還用於接收從所述主伺服器同步傳送的分配記錄表,以及接收從每個編碼伺服器傳回的編碼後的文檔區塊,所述分配記錄表記錄了編碼伺服器的編號及順序、及編碼伺服器所需處理的文檔區塊;
解碼模組,用於根據預設順序對編碼後的文檔區塊進行解碼處理;及
整合模組,用於根據所述分配記錄表確定在已經接收到所有的編碼後的文檔區塊時,對解碼後的文檔區塊進行重組並生成完整的目標文檔。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW102119034A TW201445989A (zh) | 2013-05-30 | 2013-05-30 | 分散式編解碼系統及方法 |
US14/288,859 US20140358996A1 (en) | 2013-05-30 | 2014-05-28 | Distributed encoding and decoding system, method, and device |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW102119034A TW201445989A (zh) | 2013-05-30 | 2013-05-30 | 分散式編解碼系統及方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
TW201445989A true TW201445989A (zh) | 2014-12-01 |
Family
ID=51986384
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW102119034A TW201445989A (zh) | 2013-05-30 | 2013-05-30 | 分散式編解碼系統及方法 |
Country Status (2)
Country | Link |
---|---|
US (1) | US20140358996A1 (zh) |
TW (1) | TW201445989A (zh) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9661106B2 (en) * | 2013-12-04 | 2017-05-23 | Facebook, Inc. | Uploading and transcoding media files |
CN106170968B (zh) * | 2014-12-18 | 2019-09-20 | 华为技术有限公司 | 一种数据压缩存储方法、装置,及分布式文件系统 |
CN105933722B (zh) * | 2016-04-20 | 2019-12-13 | 深圳市特纳电子有限公司 | 一种数据发送方法和装置 |
CN108108747B (zh) * | 2017-09-21 | 2020-07-28 | 西安交通大学 | 一种解决大数据聚类的基于视觉原理的聚类方法 |
CN112114779B (zh) * | 2020-08-26 | 2024-02-09 | 北京奇艺世纪科技有限公司 | 动效对象的处理方法、系统、装置、电子设备和存储介质 |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2001358692A (ja) * | 2000-06-14 | 2001-12-26 | Nec Corp | 直交周波数分割多重変復調回路 |
US7469295B1 (en) * | 2001-06-25 | 2008-12-23 | Network Appliance, Inc. | Modified round robin load balancing technique based on IP identifier |
US20040184450A1 (en) * | 2003-03-19 | 2004-09-23 | Abdu H. Omran | Method and system for transport and routing of packets over frame-based networks |
US9386064B2 (en) * | 2006-06-09 | 2016-07-05 | Qualcomm Incorporated | Enhanced block-request streaming using URL templates and construction rules |
US8671179B2 (en) * | 2007-06-19 | 2014-03-11 | International Business Machines Corporation | Dynamically adding best suited servers into clusters of application servers |
KR101021059B1 (ko) * | 2007-11-07 | 2011-03-15 | 삼성전자주식회사 | 광대역 무선접속 시스템의 연결 수락 제어 장치 및 방법 |
US8462632B1 (en) * | 2010-12-28 | 2013-06-11 | Amazon Technologies, Inc. | Network traffic control |
US20130041808A1 (en) * | 2011-08-10 | 2013-02-14 | Nathalie Pham | Distributed media access |
-
2013
- 2013-05-30 TW TW102119034A patent/TW201445989A/zh unknown
-
2014
- 2014-05-28 US US14/288,859 patent/US20140358996A1/en not_active Abandoned
Also Published As
Publication number | Publication date |
---|---|
US20140358996A1 (en) | 2014-12-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP7214295B2 (ja) | 分散型システムのデータ同期方法、装置、コンピュータプログラム、及び電子機器 | |
JP6743235B2 (ja) | マルチメディアシステムにおけるメディアパケット送信方法 | |
US10757453B2 (en) | Distributed multi-datacenter video packaging system | |
US11374995B2 (en) | Multimedia file processing | |
CN105451031B (zh) | 一种视频转码方法和系统 | |
US20160323351A1 (en) | Low latency and low defect media file transcoding using optimized storage, retrieval, partitioning, and delivery techniques | |
US9712835B2 (en) | Video encoding system and method | |
TW201445989A (zh) | 分散式編解碼系統及方法 | |
JP2014532338A (ja) | ストリーミングメディアを伝送するための方法およびデバイス | |
CN111290841A (zh) | 任务调度方法、装置、计算设备及存储介质 | |
CN103152606A (zh) | 视频文件处理方法及装置、系统 | |
US9166804B2 (en) | Packet transmission control device, packet transmission control method, and program | |
CN110049133B (zh) | 一种dns区文件全量下发的方法和装置 | |
US10289312B2 (en) | Method of reordering a queue of write requests | |
KR20200141651A (ko) | 기계 학습 모델에 기초한 블록 체인을 이용한 hevc 분산형 복호화 방법, 장치 및 시스템 | |
JP2023031248A (ja) | エッジコンピューティングネットワーク、データ伝送方法、装置、機器、及び記憶媒体 | |
Qiang et al. | A Hyper-converged video management system based on object storage | |
Chandio et al. | Clouds based smart video transcoding system | |
JP7292901B2 (ja) | 送信装置、送信方法、及びプログラム | |
JP2017143475A (ja) | 配信管理装置、受信装置、分散処理システム、及びプログラム | |
CN104219540B (zh) | 分散式编解码系统及方法 | |
JP2004221756A (ja) | 情報処理装置および情報処理方法、並びにコンピュータ・プログラム | |
JP5580253B2 (ja) | 呼接続装置およびその動作方法 | |
CN117880570A (zh) | 一种数据传输方法及装置 | |
KR20130046892A (ko) | 분할 디스플레이를 위한 데이터 관리 장치, 시스템 및 방법과 그 기록 매체 |