wave格式音訊檔案取樣率轉換

2021-08-19 20:38:09 字數 1238 閱讀 5813

一、此轉換方法為檔案轉換方式,需要對現在的檔案分析的基礎上生成新的音訊檔案。

二、方法占用時間比較多,但速度在允許範圍之內

三、分析檔案與寫入新檔案的時候是按位元組操作

四、本方法轉換生成的新檔案的精度只能為16位,如果需要其他的精度,需要另外進行精度轉換。

操作流程:

一、分析原始檔的頭結構,取得原始檔的取樣率、聲道數、資料長度、資料流量等引數。

二、根據檔案頭結構生成新檔案的頭結構,確定各項引數,其中取樣率由使用者自行指定。

三、根據原始檔的取樣率與聲道數確定轉換的迴圈次數。

四、對原始檔的語音資料進行獲取與轉換,轉換公式:

(((itmp <<8)+itmp)-32768) << 16

其中,itmp為取得的雙位元組資料。

五、將轉換後的資料傳給需要寫入的檔案,再次進行轉換,公式如下:

1、c = (((c + 0x80000000) >> 16) & 0xffff) ^ 0x8000;

其中c為傳入的取樣率資料

需要將上面轉換的資料進行位元組轉換,公式如下:

第乙個位元組c&0xff

第二個位元組c>>8

將第一位元組與第二位元組依次寫入新生成的檔案.

六、對原始檔與目標檔案進行迴圈操作,只到原始檔末尾。

備註:關於重取樣

頻率對應於時間軸線,振幅對應於電平軸線。波是無限光滑的,弦線可以看成由無數點組成,

由於儲存空間是相對有限的,數字編碼過程中,必須對弦線的點進行取樣。

取樣的過程就是抽取某點的頻率值,很顯然,在一秒中內抽取的點越多,獲取得頻率資訊更豐富,

為了復原波形,一次振動中,必須有2個點的取樣,人耳能夠感覺到的最高頻率為20khz,

因此要滿足人耳的聽覺要求,則需要至少每秒進行40k次取樣,用40khz表達,這個40khz就是取樣率。

我們常見的cd,取樣率為44.1khz。光有頻率資訊是不夠的,我們還必須獲得該頻率的能量值並量化,

用於表示訊號強度。量化電平數為2的整數次冪,我們常見的cd位16bit的取樣大小,即2的16次方。

取樣大小相對取樣率更難理解,因為要顯得抽象點,舉個簡單例子:假設對乙個波進行8次取樣,

取樣點分別對應的能量值分別為a1-a8,但我們只使用2bit的取樣大小,

結果我們只能保留a1-a8中4個點的值而捨棄另外4個。如果我們進行3bit的取樣大小,

則剛好記錄下8個點的所有資訊。取樣率和取樣大小的值越大,記錄的波形更接近原始訊號。

from:

wave格式音訊檔案取樣率轉換

一 此轉換方法為檔案轉換方式,需要對現在的檔案分析的基礎上生成新的音訊檔案。二 方法占用時間比較多,但速度在允許範圍之內 三 分析檔案與寫入新檔案的時候是按位元組操作 四 本方法轉換生成的新檔案的精度只能為16位,如果需要其他的精度,需要另外進行精度轉換。操作流程 一 分析原始檔的頭結構,取得原始檔...

關於音訊取樣率

於網上收集整理 音訊取樣率是指錄音裝置在一秒鐘內對聲音頻號的取樣次數,取樣頻率越高聲音的還原就越真實越自然。在當今的主流採集卡上,取樣頻率一般共分為22.05khz 44.1khz 48khz三個等級,22.05khz只能達到fm廣播的聲音品質,44.1khz則是理論上的cd音質界限,48khz則更...

音訊取樣位數,取樣率,位元率

一 關於數字音訊 數字音訊是指使用數字編碼的方式也就是使用0和1來記錄音訊資訊,它是相對於模擬音訊來說的。在cd光碟和計算機技術未出現之前都是模擬音訊 如錄音帶 其中數字 模擬轉換器簡稱 dac 模擬 數字轉換器簡稱 adc 1 數字音訊裡幾個重要的引數 1 取樣位數 可以理解數字音訊裝置處理聲音的...