專利名稱:多路音視頻數(shù)據(jù)網(wǎng)絡(luò)傳輸與同步播放的方法
技術(shù)領(lǐng)域:
本發(fā)明屬于網(wǎng)絡(luò)傳輸技術(shù)領(lǐng)域,特別是涉及一種在網(wǎng)絡(luò)上可同時傳輸多路音視頻數(shù)據(jù)的方法。
背景技術(shù):
隨著多媒體技術(shù)、計算機技術(shù)和網(wǎng)絡(luò)技術(shù)的發(fā)展,使得數(shù)字化音視頻數(shù)據(jù)的網(wǎng)絡(luò)實時傳輸和控制成為可能。網(wǎng)絡(luò)視頻監(jiān)控系統(tǒng)就是在這種情況下出現(xiàn)的。它是一種以計算機技術(shù)、圖像視頻壓縮技術(shù)和視頻數(shù)據(jù)實時傳輸技術(shù)為核心的新型數(shù)字視頻監(jiān)控系統(tǒng),具有附屬設(shè)備少,造價低、操作簡單、維護方便等特點。適用于銀行、郵電、交通、電力、水電、倉庫、教學、醫(yī)療、軍事、公安等系統(tǒng)。網(wǎng)絡(luò)視頻監(jiān)控系統(tǒng)的應(yīng)用領(lǐng)域非常廣泛,而且市場需求也十分巨大。提高監(jiān)控的質(zhì)量、節(jié)約現(xiàn)有通信資源、提高通信線路的利用率是當前具有重大意義的課題。目前國內(nèi)外廠家生產(chǎn)的監(jiān)控系統(tǒng),大多只提供單一通道的監(jiān)控,傳輸線路利用率低;而且很多網(wǎng)絡(luò)監(jiān)控系統(tǒng)只提供視頻的監(jiān)視而不提供音頻監(jiān)聽,單一的功能限制了其應(yīng)用范圍,因此急需開發(fā)能實現(xiàn)多路音視頻傳輸與同步播放方法,提高其傳輸線路的利用率和音視監(jiān)控設(shè)備的性能價格比。
技術(shù)內(nèi)容
為了解決現(xiàn)有網(wǎng)絡(luò)數(shù)據(jù)傳輸過程存在的問題,本發(fā)明提供一種在同一IP網(wǎng)絡(luò)上同時傳輸多路音視頻信號,并實現(xiàn)多路網(wǎng)絡(luò)音視頻實時監(jiān)控的多路音視頻數(shù)據(jù)網(wǎng)絡(luò)傳輸與同步播放的方法。
本發(fā)明將多路視頻信號和多路音頻信號分別進行MPEG一4與ADPCM壓縮,構(gòu)造數(shù)據(jù)包并標記時間戳進行網(wǎng)絡(luò)傳輸,在客戶端接收數(shù)據(jù)、解壓縮、差錯與同步控制,最后播放出來,系統(tǒng)主要包括服務(wù)器端軟件、客戶端軟件以及音視頻播放控件。
本發(fā)明的信號處理流程為服務(wù)器端軟件從設(shè)備驅(qū)動程序中讀取硬件壓縮的多路音視頻數(shù)據(jù),將其封裝成在IP網(wǎng)絡(luò)上傳送的數(shù)據(jù)包并標記該數(shù)據(jù)包的采集時刻,封裝好的數(shù)據(jù)包通過IP網(wǎng)絡(luò)進行發(fā)送,并按照一定格式保存為錄像文件提供給HTTP服務(wù)器;客戶端軟件通過IP網(wǎng)絡(luò)接收媒體數(shù)據(jù)包并對其進行差錯控制,提取音視頻數(shù)據(jù)和時間戳傳遞給ActiveX播放控件;播放控件調(diào)用DirectShow對音視頻數(shù)據(jù)進行解壓縮,通過時間戳對音頻流與視頻流進行同步,最后播放出來。
服務(wù)器軟件數(shù)據(jù)處理線程從設(shè)備文件讀出音視頻數(shù)據(jù),檢查完整性并標記時間戳,然后送入指針隊列;數(shù)據(jù)發(fā)送線程由指針隊列取出數(shù)據(jù),構(gòu)造數(shù)據(jù)包向網(wǎng)絡(luò)發(fā)送,同時構(gòu)造錄像文件存入硬盤;控制線程監(jiān)聽用戶連接,并對用戶命令做出響應(yīng);客戶端軟件主線程實現(xiàn)UI界面的繪制與用戶事件的響應(yīng);控制線程完成參數(shù)的設(shè)定與控制消息的傳遞;數(shù)據(jù)線程接收音視頻數(shù)據(jù)包,取出相關(guān)信息傳遞給音視頻播放控件;音視頻播放控件采用雙隊列緩沖控制媒體的播放時機,完成音頻流與視頻流的同步;采用數(shù)據(jù)線程推動DirectShow播放媒體數(shù)據(jù)。
本發(fā)明實現(xiàn)在同一IP網(wǎng)絡(luò)上同時傳輸多路音視頻,解決了多路媒體數(shù)據(jù)的音視頻同步播放問題,從而實現(xiàn)了多路網(wǎng)絡(luò)音視頻實時監(jiān)控,提高了服務(wù)器與客戶機的資源利用率與性價比。
本發(fā)明實現(xiàn)了在IP網(wǎng)絡(luò)上同時傳輸多路音視頻數(shù)據(jù),解決了多路媒體數(shù)據(jù)的音視頻同步播放問題,從而實現(xiàn)了多路網(wǎng)絡(luò)音視頻實時監(jiān)控,提高了服務(wù)器與客戶機的資源利用率與性價比。利用該技術(shù)開發(fā)出高效實用的音視頻傳輸設(shè)備無疑將有廣闊的市場前景和巨大的經(jīng)濟、社會效益?;贒irectShow實現(xiàn)多路音視頻網(wǎng)絡(luò)傳輸與同步播放方法的實用化、產(chǎn)品化,可為網(wǎng)絡(luò)多路音視頻通信提供高效、實時、并可方便靈活多用及具有良好兼容性的通信平臺,可為網(wǎng)絡(luò)的音視頻通信提供了一個高性能價格比的選擇。
圖1是服務(wù)器數(shù)據(jù)獲取線程和數(shù)據(jù)發(fā)送線程工作流程;圖2是服務(wù)器控制線程以錄像、發(fā)送模塊工作流程;圖3是客戶端主程序工作流程;圖4是客戶端控制線程和數(shù)據(jù)線程工作流程;圖5是通信協(xié)議頭結(jié)構(gòu);圖6是媒體數(shù)據(jù)消息報頭結(jié)構(gòu);圖7是音視頻同步播放示意。
具體實施例方式
本發(fā)明將多路視頻信號和多路音頻信號分別進行MPEG-4與ADPCM壓縮,構(gòu)造數(shù)據(jù)包并標記時間戳進行網(wǎng)絡(luò)傳輸,在客戶端接收數(shù)據(jù)、解壓縮、差錯與同步控制,最后播放出來,系統(tǒng)主要包括服務(wù)器端軟件、客戶端軟件以及音視頻播放控件。
本發(fā)明信號處理流程是服務(wù)器端軟件從設(shè)備驅(qū)動程序中讀取硬件壓縮的多路音視頻數(shù)據(jù),將其封裝成在IP網(wǎng)絡(luò)上傳送的數(shù)據(jù)包并標記該數(shù)據(jù)包的采集時刻,封裝好的數(shù)據(jù)包通過IP網(wǎng)絡(luò)進行發(fā)送,并按照一定格式保存為錄像文件提供給HTTP服務(wù)器;客戶端軟件通過IP網(wǎng)絡(luò)接收媒體數(shù)據(jù)包并對其進行差錯控制,提取音視頻數(shù)據(jù)和時間戳傳遞給ActiveX播放控件;播放控件調(diào)用DirectShow對音視頻數(shù)據(jù)進行解壓縮,通過時間戳對音頻流與視頻流進行同步,最后播放出來。
服務(wù)器軟件數(shù)據(jù)處理線程從設(shè)備文件讀出音視頻數(shù)據(jù),檢查完整性并標記時間戳,然后送入指針隊列;數(shù)據(jù)發(fā)送線程由指針隊列取出數(shù)據(jù),構(gòu)造數(shù)據(jù)包向網(wǎng)絡(luò)發(fā)送,同時構(gòu)造錄像文件存入硬盤;控制線程監(jiān)聽用戶連接,并對用戶命令做出響應(yīng);客戶端軟件主線程實現(xiàn)UI界面的繪制與用戶事件的響應(yīng);控制線程完成參數(shù)的設(shè)定與控制消息的傳遞;數(shù)據(jù)線程接收音視頻數(shù)據(jù)包,取出相關(guān)信息傳遞給音視頻播放控件;音視頻播放控件采用雙隊列緩沖控制媒體的播放時機,完成音頻流與視頻流的同步;采用數(shù)據(jù)線程推動DirectShow播放媒體數(shù)據(jù)。
本發(fā)明多路音視頻數(shù)據(jù)網(wǎng)絡(luò)傳輸與同步播放方法的實現(xiàn)原理是
多路音視頻網(wǎng)絡(luò)傳輸與同步播放不需要太多太復(fù)雜的算法,主要實現(xiàn)的服務(wù)器同客戶機的控制信息交換、音視頻數(shù)據(jù)與時間戳等信息的傳送以及解碼播放等功能。服務(wù)器端采用多個線程來協(xié)同工作實現(xiàn)媒體數(shù)據(jù)的獲取、打包、發(fā)送等過程,為了實現(xiàn)客戶機同服務(wù)器的通信,必須約定它們之間的傳輸規(guī)范。在本發(fā)明中定義了一個協(xié)議棧,客戶機首先同服務(wù)器建立控制連接,進行身份認證,確定連接種類與權(quán)限,然后通過該控制連接獲取服務(wù)器傳輸?shù)囊粢曨l數(shù)據(jù)的采樣率、尺寸、編碼器等參數(shù),初始化本機播放環(huán)境,最后根據(jù)控制連接協(xié)商的結(jié)果建立數(shù)據(jù)線程。在數(shù)據(jù)線程中依然采用同樣的協(xié)議,將音頻、視頻流按照采集時刻分解為幀,標記每一幀數(shù)據(jù)的通道號、幀號、時間戳等信息,最后構(gòu)造網(wǎng)絡(luò)數(shù)據(jù)包進行發(fā)送。在客戶端的數(shù)據(jù)線程中接收服務(wù)器送來的媒體數(shù)據(jù)包,取出每一幀的附帶信息,根據(jù)通道號將數(shù)據(jù)送入相應(yīng)通道的播放控件,從而實現(xiàn)了多路音視頻的網(wǎng)絡(luò)傳輸。同時,客戶端可以通過控制連接對播放過程進行靈活的控制。
本發(fā)明對音視頻同步播放的實現(xiàn)則采用了時間戳。首先選擇一個參考時鐘(要求參考時鐘上的時間是線性遞增的);生成數(shù)據(jù)流時依據(jù)參考時鐘上的時間給每個數(shù)據(jù)塊都打上時間戳(一般包括開始時間和結(jié)束時間);在播放時,讀取數(shù)據(jù)塊上的時間戳,同時參考當前參考時鐘上的時間來安排播放(如果數(shù)據(jù)塊的開始時間大于當前參考時鐘上的時間,則不急于播放該數(shù)據(jù)塊,直到參考時鐘達到數(shù)據(jù)塊的開始時間;如果數(shù)據(jù)塊的開始時間小于當前參考時鐘上的時間,則“盡快”播放這塊數(shù)據(jù)或者索性將這塊數(shù)據(jù)“丟棄”,以使播放進度追上參考時鐘)。
服務(wù)器程序開始執(zhí)行的時候,首先進行初始化工作,包括打開MPEG-4編碼芯片IME6400的設(shè)備文件、向Linux內(nèi)核注冊IME6400中斷、拉低相應(yīng)的GPIO引腳使能IME6400并按需求設(shè)置其寄存器,然后就可以通過IME6400的I2C總線接口配置視頻合路FPGA和視頻Codec SAA7114,使它們工作在需要的解析度與幀速率。通過這些設(shè)置,視頻Codec按需要的解析度對采集進來的多路模擬視頻信號進行A/D轉(zhuǎn)換,輸出的多路數(shù)字信號經(jīng)FPGA整合后傳遞給MPEG-4編碼芯片IME6400。IME6400完成每幀音、視頻數(shù)據(jù)的MPEG-4編碼,并在編碼完成后用中斷的方式通知CPU,后者便可以通過異步總線接口讀取壓縮好的音、視頻碼流進行進一步的處理。當程序的初始化工作完成以后,系統(tǒng)硬件便按上述過程開始工作,此時通過IME6400驅(qū)動程序已經(jīng)能夠從IME6400設(shè)備文件獲取需要的音視頻數(shù)據(jù)流。此后,服務(wù)器端程序便會開啟三條工作線程,并發(fā)執(zhí)行,每個線程的功能與流程介紹如下數(shù)據(jù)獲取線程的工作流程如圖1左所示該線程在一個無限循環(huán)中從IME6400的設(shè)備文件中讀取壓縮好的音、視頻數(shù)據(jù)。首先檢查讀取的媒體幀的類型與長度,如果是一個無效的幀類型,則說明當前讀取數(shù)據(jù)的指針并不指向媒體幀的開始位置,此時清除媒體數(shù)據(jù)有效標志,丟棄讀入的數(shù)據(jù)并在媒體數(shù)據(jù)流中進行搜索,直到找到下一個有效的媒體幀的起始位置,從新開始從設(shè)備文件讀入媒體數(shù)據(jù)。讀入的有效媒體數(shù)據(jù)包括視頻I幀、視頻P幀與音頻幀。如果讀入視頻I幀,則設(shè)置媒體有效標志,根據(jù)長度信息申請內(nèi)存緩沖區(qū)并將整幀數(shù)據(jù)完整讀入,檢查通道標志與數(shù)據(jù)接收情況,倘若出錯則丟棄讀入數(shù)據(jù)并清除媒體數(shù)據(jù)有效標志。對于視頻P幀,讀入前要首先檢查媒體數(shù)據(jù)有效標志,如果該標志有效,則進行與視頻I幀相同的操作,否則直接丟棄該幀,以防止播放時發(fā)生馬賽克現(xiàn)象。如果讀入的是音頻幀,也進行與視頻幀類似的處理。讀入完整有效的幀數(shù)據(jù)之后,就填充附加的幀序列號、幀通道號、幀類型等信息,并通過gettimeofday系統(tǒng)調(diào)用獲得高精度系統(tǒng)時間,換算成時間戳(100ns精度,64位)加以保存。所有信息完備之后,就可以將指向該媒體數(shù)據(jù)的指針推入指針隊列,供數(shù)據(jù)發(fā)送線程使用。最后,清理狀態(tài),開始下一循環(huán)對IME6400設(shè)備文件的讀取。
數(shù)據(jù)發(fā)送線程工作流程如圖1右所示該線程也在一個無限循環(huán)中從指針隊列中,以阻塞方式讀取數(shù)據(jù)獲取線程傳遞的音視頻數(shù)據(jù)流,然后按照具體的需要進行處理。當系統(tǒng)需要實現(xiàn)錄像的功能的時候,則執(zhí)行錄像模塊,流程如圖2中。首先分別為每個通道創(chuàng)建一個錄像文件,隨后將該幀數(shù)據(jù)寫入錄像文件,并增加文件記錄的總幀數(shù),當達到該通道對錄像長度的要求時,結(jié)束該通道當前文件的錄制,在文件頭部寫入錄像的解析度,編碼器,音頻采樣率等參數(shù),然后按照寫入各幀時建立的鏈表在錄像的尾部添加索引,最后關(guān)閉當前錄像文件并創(chuàng)建新文件為繼續(xù)錄像做好準備。當系統(tǒng)需要實現(xiàn)網(wǎng)絡(luò)實時傳輸?shù)臅r候,則執(zhí)行發(fā)送模塊,流程如圖二右??紤]到公網(wǎng)上傳輸UDP數(shù)據(jù)包長度通常不超過2K,因此需要對媒體數(shù)據(jù)幀進行拆分。將每幀數(shù)據(jù)分成不超過2K的數(shù)據(jù)包,并標記好包號,這樣就可以在網(wǎng)絡(luò)上傳輸了。最后根據(jù)具體的網(wǎng)絡(luò)情況與業(yè)務(wù)需求,采用單播、廣播、組播的方式傳遞出去。
數(shù)據(jù)獲取線程與數(shù)據(jù)發(fā)送線程能夠準確地讀取并投遞數(shù)據(jù),離不開控制線程的協(xié)調(diào),其工作流程如圖2左所示在線程開始執(zhí)行的時候首先初始化socket套接字,綁定端口,對于廣播socket需要設(shè)置廣播socket屬性,而組播socket需要加入組播分組。完成初始化后,線程進入無限循環(huán),等待來自TCP端口的控制連接。一旦發(fā)現(xiàn)某客戶端傳遞的連接請求,則創(chuàng)建一個單獨的線程接受并處理該連接。驗證用戶身份,并按照用戶的需求與權(quán)限確定用戶采用的連接方式。告知當前每個通道播放的媒體信息的細節(jié),幫助客戶端程序構(gòu)造播放環(huán)境。最后根據(jù)客戶選擇的連接類型將音、視頻數(shù)據(jù)流發(fā)送出去。
服務(wù)器端程序?qū)崿F(xiàn)了多路音視頻數(shù)據(jù)的采集與網(wǎng)絡(luò)發(fā)送,而這些媒體數(shù)據(jù)的接收與差錯控制則由客戶端程序負責,其主程序工作流程如圖3所示同一般的Windows一樣,程序開始執(zhí)行的時候進行環(huán)境的初始化,建立Document與View結(jié)構(gòu),打開網(wǎng)絡(luò)準備連接到服務(wù)器。然后程序進入消息循環(huán),接受用戶與系統(tǒng)傳遞過來的各種消息,進行相應(yīng)的處理。當用戶希望播放多路媒體數(shù)據(jù)流的時候,單擊“打開網(wǎng)絡(luò)”按鈕,系統(tǒng)傳遞相應(yīng)的消息,主程序創(chuàng)建TCP控制線程進行處理。
TCP控制線程負責用戶的命令連接,其工作流程如圖4左在線程開始的時候初始化Socket,發(fā)送連接請求,向服務(wù)器提供登陸的用戶名與密碼,完成身份驗證后,進入循環(huán)監(jiān)聽連接端口,等待服務(wù)器命令。每當收到命令的時候,分析命令的合法性并對有效的命令加以執(zhí)行,發(fā)送命令應(yīng)答。服務(wù)器首先通知服務(wù)器支持的媒體通道數(shù)目,線程函數(shù)根據(jù)接收數(shù)據(jù)初始化這些通道的音視頻播放控件,完成媒體參數(shù)的設(shè)置以及連接方式的協(xié)商。一切準備就緒后,啟動UDP數(shù)據(jù)線程。此時根據(jù)連接的種類決定TCP控制線程的工作狀態(tài)。如果是廣播或者組播方式,則控制線程立刻斷開TCP連接并返回,以節(jié)約系統(tǒng)資源。如果是點對點連接方式則保持連接,繼續(xù)監(jiān)聽服務(wù)器命令,提供對播放過程更好的控制。
UDP數(shù)據(jù)線程負責用戶的數(shù)據(jù)連接,其工作流程如圖4右在線程啟動的時候初始化Socket并按照需要加入組播分組,監(jiān)聽協(xié)商好的連接端口。然后初始化接收緩沖區(qū)與接收狀態(tài)機。每當收到一個數(shù)據(jù)包的時候,讀出其頭部,驗證幀類型與序列號,將多個小于2K的數(shù)據(jù)包拼接成完整的媒體幀,進行差錯檢查與完整性檢查,丟棄出錯的幀并填零,將服務(wù)器提供的絕對時間戳換算為本地播放的相對時間戳,最后識別媒體幀的通道標識,把收到的數(shù)據(jù)發(fā)送給對應(yīng)通道的播放控件。當收到結(jié)束命令的時候,釋放緩沖區(qū)、關(guān)閉Socket并退出線程執(zhí)行。
服務(wù)器同客戶端之間的通信還有一個需要考慮的問題就是通信協(xié)議。不論TCP還是UDP信道,每條消息都有一個8字節(jié)長的報頭,標志消息的具體類型與功能,其具體結(jié)構(gòu)如圖5,結(jié)構(gòu)介紹如下表。
在上面定義的消息頭傳遞了每個消息的基本信息,其中MainType段標識了該消息的種類,而在Data段是該消息的具體數(shù)據(jù),例如每個媒體數(shù)據(jù)幀都由若干個DATA_PACKET類型的消息發(fā)送(消息MainType值為0x8000),該消息Data段包括媒體幀的詳細信息,結(jié)構(gòu)如圖6。所有消息字段內(nèi)部采用little endian格式,通過上述方法,不同通道、不同類型的媒體數(shù)據(jù)便可以沒有歧義地在服務(wù)器與客戶機之間傳輸。
對于播放過程中的音視頻同步,采用時間戳的辦法加以解決,具體見圖7。時間戳選擇64位長整數(shù),采用100納秒為記時單位,在服務(wù)器端用Linux系統(tǒng)調(diào)用gettimeofday,獲得系統(tǒng)當前時間,標記時間戳。客戶端還原時間戳,減去Filter Graph開始運行時傳遞的服務(wù)器系統(tǒng)時間,得到流時間,以此為參考,決定音視頻的播放時機。對于音頻,進行一幀緩沖,以平滑播放效果,避免停頓,并根據(jù)音頻的播放調(diào)整參考時鐘。視頻按照音頻尺度進行緩沖,如果落后則加速播放,提前則等待。對于網(wǎng)絡(luò)原因引起的丟幀現(xiàn)象,采用比較簡單的填零技術(shù),即如果發(fā)現(xiàn)幀序列號不連續(xù),就插入一個全零的幀填補空白。
最后調(diào)用DirectShow機制完成音視頻數(shù)據(jù)的播放,多個音視頻播放控件協(xié)同工作,完成了本發(fā)明提出的多路音視頻網(wǎng)絡(luò)傳輸與同步播放。
權(quán)利要求
1.一種多路音視頻數(shù)據(jù)網(wǎng)絡(luò)傳輸與同步播放的方法,其特征在于將多路視頻信號和多路音頻信號分別進行MPEG-4與ADPCM壓縮,構(gòu)造數(shù)據(jù)包并標記時間戳進行網(wǎng)絡(luò)傳輸,在客戶端接收數(shù)據(jù)、解壓縮、差錯與同步控制,最后播放出來,系統(tǒng)主要包括服務(wù)器端軟件、客戶端軟件以及音視頻播放控件。
2.根據(jù)權(quán)利要求1所述的多路音視頻數(shù)據(jù)網(wǎng)絡(luò)傳輸與同步播放的方法,其信號處理流程為服務(wù)器端軟件從設(shè)備驅(qū)動程序中讀取硬件壓縮的多路音視頻數(shù)據(jù),將其封裝成在IP網(wǎng)絡(luò)上傳送的數(shù)據(jù)包并標記該數(shù)據(jù)包的采集時刻,封裝好的數(shù)據(jù)包通過IP網(wǎng)絡(luò)進行發(fā)送,并按照一定格式保存為錄像文件提供給HTTP服務(wù)器;客戶端軟件通過IP網(wǎng)絡(luò)接收媒體數(shù)據(jù)包并對其進行差錯控制,提取音視頻數(shù)據(jù)和時間戳傳遞給ActiveX播放控件;播放控件調(diào)用DirectShow對音視頻數(shù)據(jù)進行解壓縮,通過時間戳對音頻流與視頻流進行同步,最后播放出來。
3.根據(jù)權(quán)利要求1或2所述的多路音視頻數(shù)據(jù)網(wǎng)絡(luò)傳輸與同步播放的方法,其特征在于服務(wù)器軟件數(shù)據(jù)處理線程從設(shè)備文件讀出音視頻數(shù)據(jù),檢查完整性并標記時間戳,然后送入指針隊列;數(shù)據(jù)發(fā)送線程由指針隊列取出數(shù)據(jù),構(gòu)造數(shù)據(jù)包向網(wǎng)絡(luò)發(fā)送,同時構(gòu)造錄像文件存入硬盤;控制線程監(jiān)聽用戶連接,并對用戶命令做出響應(yīng);客戶端軟件主線程實現(xiàn)UI界面的繪制與用戶事件的響應(yīng);控制線程完成參數(shù)的設(shè)定與控制消息的傳遞;數(shù)據(jù)線程接收音視頻數(shù)據(jù)包,取出相關(guān)信息傳遞給音視頻播放控件;音視頻播放控件采用雙隊列緩沖控制媒體的播放時機,完成音頻流與視頻流的同步;采用數(shù)據(jù)線程推動DirectShow播放媒體數(shù)據(jù)。
全文摘要
一種多路音視頻數(shù)據(jù)網(wǎng)絡(luò)傳輸與同步播放的方法,屬于網(wǎng)絡(luò)傳輸技術(shù)領(lǐng)域。為了解決現(xiàn)有網(wǎng)絡(luò)傳輸過程中存在的問題,本發(fā)明提供一種在同一IP網(wǎng)絡(luò)上同時傳輸多路音視頻信號,并實現(xiàn)多路網(wǎng)絡(luò)音視頻實時監(jiān)控的多路音視頻數(shù)據(jù)網(wǎng)絡(luò)傳輸與同步播放的方法。本發(fā)明將多路視頻信號和多路音頻信號分別進行MPEG-4與ADPCM壓縮,構(gòu)造數(shù)據(jù)包并標記時間戳進行網(wǎng)絡(luò)傳輸,在客戶端接收數(shù)據(jù)、解壓縮、差錯與同步控制,最后播放出來,系統(tǒng)主要包括服務(wù)器端軟件、客戶端軟件以及音視頻播放控件。本發(fā)明實現(xiàn)在同一IP網(wǎng)絡(luò)上同時傳輸多路音視頻,解決了多路媒體數(shù)據(jù)的音視頻同步播放問題,從而實現(xiàn)了多路網(wǎng)絡(luò)音視頻實時監(jiān)控,提高了服務(wù)器與客戶機的資源利用率與性價比。
文檔編號H04N7/18GK1933594SQ20051001713
公開日2007年3月21日 申請日期2005年9月14日 優(yōu)先權(quán)日2005年9月14日
發(fā)明者王世剛, 楊曄輝 申請人:王世剛