專利名稱:一種基于usb傳輸?shù)囊粢曨l數(shù)據(jù)處理方法及裝置的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及音視頻數(shù)據(jù)處理技術(shù)領(lǐng)域,具體地說是一種基于USB傳輸?shù)囊粢曨l數(shù)據(jù)處理方法及裝置。
背景技術(shù):
隨著數(shù)字技術(shù)和網(wǎng)絡(luò)技術(shù)的發(fā)展,音視頻數(shù)據(jù)的采集在各個行業(yè)有著廣泛地使用以及重要的意義。傳統(tǒng)的采集方案是使用PCI或者PCI-E來進(jìn)行數(shù)據(jù)傳輸。PCI/PCI-E接口雖然在帶寬以及傳輸速度上有著明顯的優(yōu)勢,但是由于需要接口的支持,此類采集卡不能使用在便攜式計算機(jī)上。隨著便攜式計算機(jī)的大量普及,使用PCI/PCI-E進(jìn)行音視頻采集的方式已經(jīng)不能滿足人們的需求。USB以其即插即用、便于攜帶以及標(biāo)準(zhǔn)統(tǒng)一的優(yōu)勢已經(jīng)成為個人計算機(jī)的標(biāo)準(zhǔn)接 口,幾乎100%的個人計算機(jī)均支持USB。USB2. O協(xié)議最高傳輸速度能夠達(dá)到480Mbps,這就使得使用USB進(jìn)行音視頻數(shù)據(jù)采集成為了可能。在這樣的背景下,本發(fā)明提出了一種基于USB傳輸?shù)囊粢曨l數(shù)據(jù)處理方法。
發(fā)明內(nèi)容
為克服以上技術(shù)的不足,本發(fā)明提供了一種基于USB傳輸?shù)囊粢曨l數(shù)據(jù)處理方法及裝置,其充分地利用USB2. O接口帶寬,能夠?qū)崿F(xiàn)最大可傳輸8路實時音視頻的同步數(shù)據(jù)。為了解決上述技術(shù)問題,本發(fā)明提供了一種基于USB傳輸?shù)囊粢曨l數(shù)據(jù)處理方法,其特征是,包括以下步驟S100,采集音視頻數(shù)據(jù);S200,對采集的音視頻數(shù)據(jù)進(jìn)行解析;S300,將解析后的音視頻數(shù)據(jù)進(jìn)行組合;S400,將組合后的音視頻數(shù)據(jù)通過USB協(xié)議進(jìn)行同步傳輸。進(jìn)一步地,所述采集音視頻數(shù)據(jù)的步驟為采集至少一路音視頻數(shù)據(jù),并將采集的模擬信號音視頻數(shù)據(jù)轉(zhuǎn)換為數(shù)字信號音視頻數(shù)據(jù)。進(jìn)一步地,所述對采集的音視頻數(shù)據(jù)進(jìn)行解析的步驟包括以下步驟S210,對音頻數(shù)據(jù)進(jìn)行處理S211,將數(shù)字信號音頻數(shù)據(jù)存儲到FIFO中;S212,等待音頻數(shù)據(jù)傳輸命令;S220,對視頻數(shù)據(jù)進(jìn)行解析S221,將數(shù)字信號視頻數(shù)據(jù)進(jìn)行拆分;S222,對拆分的視頻數(shù)據(jù)進(jìn)行解析,并判斷是否為有效視頻數(shù)據(jù)。進(jìn)一步地,所述對視頻數(shù)據(jù)的解析是通過視頻數(shù)據(jù)的EAV和SAV,對數(shù)據(jù)的行、場信息進(jìn)行檢測,解析出有效數(shù)據(jù)。進(jìn)一步地,所述將解析后的音視頻數(shù)據(jù)進(jìn)行組合的步驟包括以下步驟
S301,獲取4個字節(jié)數(shù)據(jù);S302,判斷數(shù)據(jù)是否為視頻數(shù)據(jù)幀頭數(shù)據(jù);S303,如果是視頻幀頭,則添加視頻幀標(biāo)識,然后再添加一行視頻數(shù)據(jù);S304,如果不是幀頭,則判斷是否是視頻數(shù)據(jù)行頭,如果是則添加視頻數(shù)據(jù)行標(biāo)識,然后再添加一行視頻數(shù)據(jù);S305,如果以上兩個判斷均不成立,則添加音頻數(shù)據(jù)標(biāo)識;S306,添加32字節(jié)的音頻數(shù)據(jù),形成一個同步的音視頻數(shù)據(jù)包;S307,重復(fù)上述S301至S306步驟,繼續(xù)形成同步的音視頻數(shù)據(jù)包。
本發(fā)明還提供了一種基于USB傳輸?shù)囊粢曨l數(shù)據(jù)處理裝置,其特征是,包括數(shù)據(jù)采集單元,所述數(shù)據(jù)采集單元包括音頻采集設(shè)備、視頻采集設(shè)備和A/D轉(zhuǎn)換模塊,所述A/D轉(zhuǎn)換模塊的輸入端分別與音頻采集設(shè)備和視頻采集設(shè)備連接,輸出端與中央處理單元連接,用以將模擬信號轉(zhuǎn)換為數(shù)字信號,實現(xiàn)音視頻數(shù)據(jù)的采集;中央處理單元,所述中央處理單元采用FPGA芯片,用以將接收到的音視頻數(shù)據(jù)進(jìn)行解析并重新組合; USB控制單元,所述USB控制單元包括USB控制器和USB接口,所述USB控制器分別與中央處理單元和USB接口連接,用以接收中央處理單元發(fā)來的組合后的音視頻數(shù)據(jù),并通過USB傳輸方式與上位機(jī)進(jìn)行交互;電源單元,用以提供工作電源。本發(fā)明的有益效果本發(fā)明通過對音視頻數(shù)據(jù)進(jìn)行解析、組合,并利用USB2. O協(xié)議實現(xiàn)了實時音視頻數(shù)據(jù)的無損同步傳輸,不僅占用的硬件資源少,而且實現(xiàn)了多路音視頻數(shù)據(jù)的同步傳輸。
下面結(jié)合附圖對本發(fā)明作進(jìn)一步說明圖I是本發(fā)明的方法流程圖;圖2是本發(fā)明對解析后的音視頻數(shù)據(jù)進(jìn)行組合的方法流程圖;圖3是本發(fā)明所述音視頻數(shù)據(jù)處理裝置的原理框圖;圖4是本發(fā)明所述對音視頻數(shù)據(jù)進(jìn)行組合后的數(shù)據(jù)包格式的示意圖;圖5是本發(fā)明所述ITU-RBT. 656視頻行格式的示意圖;圖6是本發(fā)明所述對視頻數(shù)據(jù)解析后的有效數(shù)據(jù)區(qū)示意圖。
具體實施例方式如圖I所示,本發(fā)明的一種基于USB傳輸?shù)囊粢曨l數(shù)據(jù)處理方法,它包括以下步驟S100,采集音視頻數(shù)據(jù),所述采集音視頻數(shù)據(jù)的步驟為采集四路音視頻數(shù)據(jù),并將采集的模擬信號音視頻數(shù)據(jù)轉(zhuǎn)換為數(shù)字信號音視頻數(shù)據(jù)。S200,對采集的音視頻數(shù)據(jù)進(jìn)行解析,所述對采集的音視頻數(shù)據(jù)進(jìn)行解析的步驟包括以下步驟S210,對音頻數(shù)據(jù)進(jìn)行處理
S211,將數(shù)字信號音頻數(shù)據(jù)存儲到FIFO中;S212,等待音頻數(shù)據(jù)傳輸命令;S220,對視頻數(shù)據(jù)進(jìn)行解析S221,將數(shù)字信號視頻數(shù)據(jù)進(jìn)行拆分;S222,對拆分的視頻數(shù)據(jù)進(jìn)行解析,并判斷是否為有效視頻數(shù)據(jù)。S300,將解析后的音視頻數(shù)據(jù)進(jìn)行組合。S400,將組合后的音視頻數(shù)據(jù)通過USB協(xié)議進(jìn)行同步傳輸。圖2是本發(fā)明對解析后的音視頻數(shù)據(jù)進(jìn)行組合的方法流程圖。如圖2所示,所述 將解析后的音視頻數(shù)據(jù)進(jìn)行組合的步驟包括以下步驟S301,獲取4個字節(jié)數(shù)據(jù);S302,判斷數(shù)據(jù)是否為視頻數(shù)據(jù)幀頭數(shù)據(jù);S303,如果是視頻幀頭,則添加視頻幀標(biāo)識,然后再添加一行視頻數(shù)據(jù);S304,如果不是幀頭,則判斷是否是視頻數(shù)據(jù)行頭,如果是則添加視頻數(shù)據(jù)行標(biāo)識,然后再添加一行視頻數(shù)據(jù);S305,如果以上兩個判斷均不成立,則添加音頻數(shù)據(jù)標(biāo)識;S306,添加32字節(jié)的音頻數(shù)據(jù),形成一個同步的音視頻數(shù)據(jù)包,所述的音視頻數(shù)據(jù)包格式如圖4所示;S307,重復(fù)上述S301至S306步驟,繼續(xù)形成同步的音視頻數(shù)據(jù)包。如圖3所示,本發(fā)明還提供了一種基于USB傳輸?shù)囊粢曨l數(shù)據(jù)處理裝置,它包括數(shù)據(jù)采集單元、中央處理單元、USB控制單元和電源單元,所述中央處理單元分別與數(shù)據(jù)采集單元和USB控制單元連接,所述電源單元為數(shù)據(jù)采集單元、中央處理單元和USB控制單元提供電源。其中,所述數(shù)據(jù)采集單元包括音頻采集設(shè)備、視頻采集設(shè)備和A/D轉(zhuǎn)換模塊,所述A/D轉(zhuǎn)換模塊采用CX26824芯片,CX26824芯片的輸入端分別與音頻采集設(shè)備和視頻采集設(shè)備連接,輸出端與中央處理單元連接,用以將模擬信號轉(zhuǎn)換為數(shù)字信號,實現(xiàn)音視頻數(shù)據(jù)的采集;所述中央處理單元采用型號為XC3S50A的FPGA芯片,用以將接收到的音視頻數(shù)據(jù)進(jìn)行解析并重新組合;所述USB控制單元包括USB控制器和USB接口,所述USB控制器分別與中央處理單元和USB接口連接,所述USB控制器采用USB控制器CY7C68013A,用以接收中央處理單元發(fā)來的組合后的音視頻數(shù)據(jù),并通過USB接口與上位機(jī)進(jìn)行交互;所述電源單元用以為所述的音視頻數(shù)據(jù)處理裝置提供工作電源。從以下幾個方面對本發(fā)明做進(jìn)一步說明一、視頻數(shù)據(jù)解析A/D轉(zhuǎn)換模塊從音頻采集設(shè)備和視頻采集設(shè)備接收到的視頻數(shù)據(jù)是按照ITU-RBT. 656視頻標(biāo)準(zhǔn)來傳輸?shù)?,該?biāo)準(zhǔn)PAL制式(720*576)每場由四部分組成。I)有效視頻數(shù)據(jù)分為奇場和偶場,均由288行組成。每行有1440個字節(jié),其中720個字節(jié)為Y分量,360個字節(jié)為Cb分量,360個字節(jié)為Cr分量。Y分量的取值為16 235 ;Cb和Cr分量的取值為16 240。2)水平消隱,有280個字節(jié)。3)垂直消隱。4)控制字。
對于有效數(shù)據(jù)行,ITU-RBT. 656視頻行格式如圖5所示。EAV和SAV為嵌入式控制字,分別表示有效視頻的終點(diǎn)和起點(diǎn)。EAV和SAV均為4個字節(jié)構(gòu)成,前3個字節(jié)FF、00、00為固定頭,“XY”為控制字?!癤Y”的8個bit含義如下Bit7 (Const),常數(shù),總為 I。Bit6 (F),場同步信號,表示該行數(shù)據(jù)處于奇場還是偶場。Bit5 (V),垂直同步信號,表示處于場消隱區(qū)間還是正程區(qū)間(有效數(shù)據(jù)行)。Bit4 (H),水平同步信號,表示是“SAV”還是“EAV”。Bit3-0 (P3P2P1P0),糾錯位。P3=V(XOR)H ;P2=F(XOR)H ;P1=F(XOR) V ;P0=F(XOR)V(XOR)H0本發(fā)明對EAV與SAV的詳細(xì)定義如表I所示 表I :
Bit7|Bit6~|Bit5 |Bit4~|Bit3-0 (P3P2P1P0)~[Hex !Description OO O00000x80~ Even, Active, SAV
100 111010x9d Even, Active, EAV
I0 I 0 Τ0 Oxab~ Even, Blank, SAV
I0 I I01100Ib6~ Even, Blank, EAV
0 0 0 Τ 0xc7~ Odd, Active, SAV
0 1010Oxda~ Odd, Active, EAV
01100Oxec~ Odd, Blank, SAV
OOOiOrfl~ Odd, Blank, EAV對于圖5中的Valid data (有效數(shù)據(jù))區(qū),其數(shù)據(jù)排列順序如圖6所示。即Y Cb: Cr=4:2: 2。從圖像的像素點(diǎn)上來理解,就是每個像素點(diǎn)有一個單獨(dú)的Y值,而相鄰的兩個像素點(diǎn)的Cb和Cr數(shù)據(jù)是一樣的。本發(fā)明所述對視頻數(shù)據(jù)解析的方法是通過EAV和SAV對行、場信息進(jìn)行檢測,分離出有效數(shù)據(jù)。為了能夠有效利用USB帶寬,需要只傳輸解析后的有效數(shù)據(jù)。為了使上位機(jī)軟件能夠正確識別一幀的開始,將每一幀圖像的首行數(shù)據(jù)加上有效的標(biāo)志。本文方法是通過將每幀的第一個有效行的SAV的第三個字節(jié)標(biāo)記為OXFF來實現(xiàn)的。二、音頻數(shù)據(jù)解析音頻數(shù)據(jù)是按照I2S協(xié)議來進(jìn)行采集的。音頻數(shù)據(jù)是在聲道同步信號有效后第二個數(shù)據(jù)周期開始采集的。音頻數(shù)據(jù)有不同于視頻的特點(diǎn),它沒有同步的概念并且數(shù)據(jù)是持續(xù)不斷的。由于視頻和音頻是共用USB帶寬進(jìn)行傳輸,為了不丟失數(shù)據(jù),在傳輸視頻數(shù)據(jù)的時候需要保存視頻傳輸期間采集到的音頻數(shù)據(jù)。
三、音視頻數(shù)據(jù)組合基于上述對音視頻數(shù)據(jù) 的分析和解析,結(jié)合USB2. O協(xié)議數(shù)據(jù)傳輸?shù)奶攸c(diǎn),提出以下音視頻數(shù)據(jù)組合方法。視頻數(shù)據(jù)經(jīng)過格式解析后是以行為單位的數(shù)據(jù)塊,并且行與行之間有一定的時間間隙。因此,音頻數(shù)據(jù)可以在視頻行與行之間的間隙進(jìn)行傳輸。為了能夠分辨音頻和視頻數(shù)據(jù),在音頻數(shù)據(jù)上也加一個類似于視頻行同步的標(biāo)識頭,并且根據(jù)視頻格式特點(diǎn),選擇合適大小的FIFO作為音頻存儲空間。在傳輸視頻的時候存儲音頻,在視頻一行傳輸完成后去詢問FIFO是否準(zhǔn)備好了 32字節(jié)的音頻數(shù)據(jù),如果準(zhǔn)備好則傳輸32字節(jié)的音頻數(shù)據(jù),否則傳輸下一行視頻數(shù)據(jù)。此處的32字節(jié)是根據(jù)音頻傳輸特點(diǎn)以及AD芯片視頻輸出格式綜合確定的。通過上述方法對音視頻數(shù)據(jù)進(jìn)行組合后的數(shù)據(jù)包格式如圖4所示。本發(fā)明采用Xilinx公司型號為XC3S50A的低端FPGA,在同時采集4路音視頻時,不僅FPGA資源利用占用率很低,只用了芯片不到1/3的資源,而且采集的音視頻數(shù)據(jù)無損,圖像清晰細(xì)膩流暢,實現(xiàn)了在使用很少的硬件資源的情況下,完成多路音視頻數(shù)據(jù)的無損同步傳輸。
權(quán)利要求
1.一種基于USB傳輸?shù)囊粢曨l數(shù)據(jù)處理方法,其特征是,包括以下步驟S100,采集音視頻數(shù)據(jù);S200,對采集的音視頻數(shù)據(jù)進(jìn)行解析;S300,將解析后的音視頻數(shù)據(jù)進(jìn)行組合;S400,將組合后的音視頻數(shù)據(jù)通過USB協(xié)議進(jìn)行同步傳輸。
2.根據(jù)權(quán)利要求I所述的一種基于USB傳輸?shù)囊粢曨l數(shù)據(jù)處理方法,其特征是,所述采集音視頻數(shù)據(jù)的步驟為采集至少一路音視頻數(shù)據(jù),并將采集的模擬信號音視頻數(shù)據(jù)轉(zhuǎn)換為數(shù)字信號音視頻數(shù)據(jù)。
3.根據(jù)權(quán)利要求I所述的一種基于USB傳輸?shù)囊粢曨l數(shù)據(jù)處理方法,其特征是,所述對采集的音視頻數(shù)據(jù)進(jìn)行解析的步驟包括以下步驟S210,對音頻數(shù)據(jù)進(jìn)行處理S211,將數(shù)字信號音頻數(shù)據(jù)存儲到FIFO中;S212,等待音頻數(shù)據(jù)傳輸命令;S220,對視頻數(shù)據(jù)進(jìn)行解析S221,將數(shù)字信號視頻數(shù)據(jù)進(jìn)行拆分;S222,對拆分的視頻數(shù)據(jù)進(jìn)行解析,并判斷是否為有效視頻數(shù)據(jù)。
4.根據(jù)權(quán)利要求I或3所述的一種基于USB傳輸?shù)囊粢曨l數(shù)據(jù)處理方法,其特征是,所述對視頻數(shù)據(jù)的解析是通過視頻數(shù)據(jù)的EAV和SAV,對數(shù)據(jù)的行、場信息進(jìn)行檢測,解析出有效數(shù)據(jù)。
5.根據(jù)權(quán)利要求I所述的一種基于USB傳輸?shù)囊粢曨l數(shù)據(jù)處理方法,其特征是,所述將解析后的音視頻數(shù)據(jù)進(jìn)行組合的步驟包括以下步驟S301,獲取I個字節(jié)數(shù)據(jù);S302,判斷數(shù)據(jù)是否為視頻數(shù)據(jù)幀頭數(shù)據(jù);5303,如果是視頻幀頭,則添加視頻幀標(biāo)識,然后再添加一行視頻數(shù)據(jù);5304,如果不是幀頭,則判斷是否是視頻數(shù)據(jù)行頭,如果是則添加視頻數(shù)據(jù)行標(biāo)識,然后再添加一行視頻數(shù)據(jù);S305,如果以上兩個判斷均不成立,則添加音頻數(shù)據(jù)標(biāo)識,再添加32字節(jié)的音頻數(shù)據(jù), 形成一個同步的音視頻數(shù)據(jù)包;S306,重復(fù)上述S301至S305步驟,繼續(xù)形成同步的音視頻數(shù)據(jù)包。
6.一種基于USB傳輸?shù)囊粢曨l數(shù)據(jù)處理裝置,其特征是,包括數(shù)據(jù)采集單元,用以將模擬信號轉(zhuǎn)換為數(shù)字信號,實現(xiàn)音視頻數(shù)據(jù)的采集;中央處理單元,用以將接收到的音視頻數(shù)據(jù)進(jìn)行解析并重新組合;USB控制單元,用以接收中央處理單元發(fā)來的組合后的音視頻數(shù)據(jù),并通過USB傳輸方式與上位機(jī)進(jìn)行交互;電源單元,用以提供工作電源。
全文摘要
本發(fā)明公開了一種基于USB傳輸?shù)囊粢曨l數(shù)據(jù)處理方法及裝置,所述方法包括以下步驟S100,采集音視頻數(shù)據(jù);S200,對采集的音視頻數(shù)據(jù)進(jìn)行解析;S300,將解析后的音視頻數(shù)據(jù)進(jìn)行組合;S400,將組合后的音視頻數(shù)據(jù)通過USB協(xié)議進(jìn)行傳輸。所述裝置包括數(shù)據(jù)采集單元,用以將模擬信號轉(zhuǎn)換為數(shù)字信號;中央處理單元,用以將接收到的音視頻數(shù)據(jù)進(jìn)行解析并重新組合;USB控制單元,用以將組合后的音視頻數(shù)據(jù)通過USB傳輸方式與上位機(jī)進(jìn)行交互;電源單元,用以提供工作電源。本發(fā)明通過對音視頻數(shù)據(jù)進(jìn)行解析、組合,并利用USB2.0協(xié)議實現(xiàn)了實時音視頻數(shù)據(jù)的無損同步傳輸,不僅占用的硬件資源少,而且實現(xiàn)了多路音視頻數(shù)據(jù)的同步傳輸。
文檔編號H04N21/234GK102932669SQ20121049878
公開日2013年2月13日 申請日期2012年11月29日 優(yōu)先權(quán)日2012年11月29日
發(fā)明者馮彬, 王正彬, 王英杰, 張 杰, 程行通 申請人:濟(jì)南中維世紀(jì)科技有限公司