24bit?還是32bit? 相同資料不同傳法
關注TerraTec錄音卡的讀者應該經常在產品的規格上看到「Bus master傳輸支援24-bit
4byte模式」,這到底是什麼意思呢?跟錄音有什麼關係呢?
其實這項規格主要是說明錄音時取樣資料是以什麼方式透過PCI匯流排傳送,這對於取樣精度為8bit或是16bit時並不構成任何問題,但在精度為24bit是就會有所差異,在傳送24bit精度取樣資料時的方式基本上大分為二種,一為3byte
packed模式,而另一種為4byte unpacked模式。底下就讓筆者簡述這二者的差別。
首先,所謂的3byte packed是指,每個聲音取樣精度的資料長度為24bit,但PCI匯流排寬度為32bit,如果32bit的位址只放24bit資料,可能會覺得浪費了傳輸的效能,所以會將第二個聲音的取樣拆下前8bit放在前個取樣的後面,填滿PCI匯流排的資料位址而後送出,第二個取樣剩下的16bit資料放在第二次的PCI匯流排資料位址,再將第三個聲音取樣的前16bit拆下放在一起填滿32bit資料送出,第三個聲音取樣剩下的8bit放在第三次資料,PCI
匯流排剩下的24bit 就用第四個聲音取樣填滿再送出,以此類推,此為3byte packed模式。
而4byte unpacked則是每一次PCI匯流排都只填24bit的資料,24bit以後其餘空位補0
後就送出,所以每一次送出一個取樣資料,不必先拆開再填入PCI匯流排。由於3byte pack mode會大量使用到CPU的運算將取樣資料拆開再填入每次傳送的資料串中,因而造成效能降低,4byte
mode 就不會出現這種現象,目前許多專業的錄音軟體及錄音卡都支援4byte unpacked模式傳送資料。
|