跳至內容

音訊號處理

出自Taiwan Tongues 台語維基
這是此頁批准,以及是最近的修訂。

音訊號處理,閣稱音訊處理音樂訊號處理(英語:Audio signal processing)等,用來調整音樂訊號的振幅、頻率、波形等等的資訊。利用一寡四則運算,升降頻,佮窗仔門式,就會當處理出各種的聲音訊號。甚至透過一寡訊號來處理的技巧,會當對聲音訊號取得背後所代表的頻率懸低,做閣較進一步的分析佮應用。

音訊的來源

  • 當當時物體發生動的時,會產生聲音,比如講伊:做用力擛動手掌的時,會產生聲音,猶閣有蠓仔翼快速震動的時陣,所發出來的擾人聲。
  • 猶毋過,咧講古例中,所聽著的聲是來自空氣震動,毋是因為這手蹄仔咧排,
  • 原因是人耳會當聽著的聲音訊率介於二十 Hz 到二四界 Hz 之間,所以咱會當聽著空氣振動產生的聲音,煞聽袂著手蹄仔擺動產生的聲,因為排的頻率無夠緊。

彼个音訊的資訊

  • 聲音訊號是一種力學波,所以佇咧傳播過程當中是一種類比連續的訊號,毋過因為人耳是天然的傅立葉轉換器,因此音訊經過人耳了後會變做數位訊號。佇遮的訊號中,有三个特徵是處理不時定定考慮的部份,咱會當來參考落圖:

一 . 音量:對訊號來看,音量代表的是訊號的振幅,訊號振幅愈大,所發出的音量嘛愈大。 二 . 音訊:訊號的頻率,就是所謂的音訊,也就是聲音震動的頻率。其代表的是音調的懸低,頻率愈懸,音調就愈懸。除了這以外,樂器所產生的聲音訊號,毋是單一頻率的訊號,是有基頻佮泛音(倍頻)的存在矣。 三 . 音色:每一个人抑是樂器所發出的音色攏無仝,對訊號起來看,音色就是訊號的波形,所以只要利用波形分析,就會當判斷出聲音的來源,對下圖會當看著小提琴佮鋼琴的音色差異有夠大。

  • # # 音訊的檔案
  • 音訊的檔案儲存會當分做壓縮佮無壓縮兩種,捷看的無壓縮檔案格式為 \ * . wav,壓縮檔案格式為 \ * . mp 三,關於這一部份的詳細資料會當參考音訊檔案格式。聲音檔的存取的時,主要有三个需要考慮這个因素:

一 . 取樣的頻率:佇訊號咧處理中,取樣頻率所代表的是聲音的品質,取樣的頻率愈懸,數位訊號的波形愈接近類比訊號的波形,毋才會聲音的品質也愈好。咧做取樣的時陣,必須遵守奈奎斯特頻率,簡單來講,頻率咧取樣時上無愛大於原訊號頻率的二倍,才會當得著有意義的訊號,嘛會當閣原成原本的訊號。 二 . 聲音解析度:存取訊號資料點所用的位元數,就代表其解析度。所使用的位元數愈大,每一个資料點的數值就愈精確,聲音的解析度嘛愈好。較十六 bit 佮八 bit 兩種存取位元,十六 bit 會當存取著較精確的數值,毋過嘛會當開較大的硬體儲存空間。 三 . 聲道:這聲道就是聲音的來源數,定定聽著的單聲道佮雙聲道,一个代表的聲音敢有立體感。利用兩个喇叭,撥放單聲道的聲音,左右兩个喇叭發出的聲音完全仝款,因此會感覺聲音是較對兩个喇叭中央,但是雙聲道聲音,左右兩个喇叭所發出來的聲音會有一定差異,自按呢會感覺聽起來有立體感。

  • 比如講伊,藉由 MATLAB 輸入指令 audioinfo(音訊檔案名稱), 會當得著音訊檔案的相關資訊如下圖:

一 . 因為檔案格式是 \ * . wav,所以是無壓縮 ( uncompressed )。 二 . 聲道 ( NumChannels ):一三 . 取樣的頻率 ( SampleRate ):四四千一百 Hz 四 . 聲音解析度 ( BitsPerSample ):十六 * # # 音訊的處理

  • 因為聲音訊號是一段長時間的訊號,因此咧處理的時陣必須愛分段進行,咧處理進前會先開一个範圍,選擇出想欲處理的部份,才閣針對範圍內的部份做處理,聲音資訊主要包含:響度、音色佮音懸,三个部份,嘛是上捷處理的部份。

一 . 響度控制:音量是一種相對訊號,佇訊號中代表甲是振幅,其計算方式是將範圍內的訊號取平方相加,佇咧以十為底取 log,單位是分貝(dB)這馬公式:$ Amplitude ( dB )=十 log _ { 十 } \ sum _ { k=一 } ^ { N } k ^ { 二 } $ 猶毋過,佇咧對人耳仔來講,音量是一種主觀的感受,根據佛萊徹森曲線(Fletcher-Munson Curve), 佇無仝頻率之下,人耳空欲聽著聲音的話,對音量有一个上低要求,如下圖所示。反過來講,雖然聲音訊號的振幅相仝,但是因為頻率懸低無仝,對人耳的感受大細嘛會無仝,仝聲音強度,耳空對低頻的感受度較䆀,嘿三千 Hz 左右的聲感受度上懸,愈來愈懸頻閣會當慢慢仔降低。調整音量上簡單的方式就是用加減法,首先愛共處理的範圍框出來,來計算出振幅大細,最後閣減掉想欲減少的振幅強度,就會當降低音量,反之用加法就會當增強區域的音量。* 一 . 音訊控制:音訊是聲音訊號處理的核心的部份,上捷用的簡單處理方式是增頻佮降頻。彼音訊代表著是訊號的音懸,中音 Do 的頻率約佇咧兩百六十二 Hz,佇音樂內底,有 C(Do), # C(# Do , ♭Re), D(Re), # D(# Re , ♭Mi), E(Mi , ♭Fa), F(Fa), # F(# Fa , ♭Sol), G(Sol), # G(# Sol , ♭La), A(La), # A(# La , ♭Si), B(Si), 十二个特定的音階,差十二个音階,頻率會變做原來的兩倍,其頻率設定是以四百四十 Hz 為標準音訊,做進一步數學推算,其頻率是四百十乘上兩的 n / 十二次方,其中 n 是頂頭拍出來的第幾个音階。音訊的處理上捷用的是升頻佮降頻,先選出想欲處理的區域,紲落去做升降頻的動作,這其中必須愛注意奈奎斯特理論,避免訊號失真。frequency=二 n / 十二 \ * 四仔四仔二 . 頻率分析:透過離散傅立葉轉換(Discrete Fourier Transform), 通常簡稱做 DFT,會當共一段聲音訊號轉換做其各種頻率的正弦波分量,方便做閣較進一步的分析、運算。下圖是將頻率為四百四十 Hz 的正弦波訊號,藉由 MATLAB function : fft,會當得著訊號組成頻率的分量,對圖裡會當看著佇咧四百四十 Hz 的所在有特別大的價值。

一 . 音色:每一組聲音訊號的波形攏無仝,其物理意義是音色,因此若改變波形的變化,就會當產生出音色類似的聲音,處理波形上簡單的方法就是用窗函式 ( window function ),利用既有抑是家己製的窗函式,共訊號做簡單的拗積運算就會當改變訊號的波形,會當創造出無仝的音色。 二 . 倍頻:通常音樂的訊號毋是單一頻率的訊號,是由基頻,猶閣有其泛音 ( 基頻的整數倍,倍頻 ) 所組成,因此若自製電子音樂的時陣,著愛注意倍頻對聲音飽和度產生的影響。下圖共音樂訊號經過頻率分析了後,會當看著除了佇 $ f _ { 零 }=三百三十 Hz $ 左右的基頻外,佇咧 $ 二 f _ { 零 } $、$ 三 f _ { 零 } $ 的部份嘛會較大的量。* 一 . 端點偵測:端點偵測的目的是使訊號處理的範圍閣較精確,辦法真簡單,只要設定一个音量見笑,若訊號小於寢值,是共其他的無訊號,但是若是雜訊過懸,會產生精差。

MATLAB 聲音訊號處理指令

  • [y , fs]=audioread ( 檔名 ):y 是聲音訊號的向量,fs 是取樣的頻率。
  • audioinfo ( 檔名 ):回傳各種聲音檔案的相關資訊,親像取樣的頻率、通道數量、聲音解析度 . . . 等。
  • sound ( y , fs ):以 fs 的頻率放送聲音訊號 y。
  • wavwrite ( y , fs , filename ):將 y 訊號,以取樣速率 fs,寫甲 filename . wav 之中。
  • Y=fft ( y ):共時間軸上的訊號 y,轉換做頻率軸上的訊號 Y。

參考資料

http : / / djj . ee . ntu . edu . tw / ADSP 七 . pdf