省流助手:全文約4800字,可以插個眼備不時之需(但願)。
兄弟們好,今天和大家聊一下音頻的錄製與收聽。
1、聲音的產生。
我們先從最淺顯易懂的部分講起,初中物理就講過聲音是由物體振動產生的,物體通過振動產生對應的聲波,這裏不難理解物體的振動頻率越高那麼對應聲波的頻率也越高,而後聲波經由介質傳入我們的耳中,被我們識別。我們在下文中稱這種最初的聲波信號爲“原始信號”。
纔沒有求贊呢
2、採集錄音!原始信號轉化爲數字信號。
爲了將原始信號進行存儲傳播,我們需要對振動聲波進行採集錄音。錄音實質上是將原始信號採集下來,後經由一定方式的編制與壓縮,變成可以存儲在我們電腦之中的數字信號(即0、1組成的數字信號流,通俗來講便是.mp3、.flac或其它後綴格式文件;有關數字信號的知識後面會講)。
在採集錄音階段,便涉及到了兩個度量名詞:“採樣率”和“比特深度”。
- 我們先從較好理解的採樣率講起。
採樣率是指每秒對原始信號的採集次數,單位是Hz。舉個例子,一段5Hz的音頻錄音,便是指每秒對原始信號進行5次採集。
問:是不是採集率越高越好?爲什麼常見的歌曲採樣率是44.1kHz或48kHz?
爲了解答這個問題,我們先繪製如下的一張圖來代表某段原始信號:
我們在上面講過,物體的振動頻率越高那麼對應聲波的頻率越高,這段示意圖左端代表歌曲的低頻部分,右端則代表高頻部分。
如果對該信號進行5Hz採集率的採集(如上圖)
不難理解在左端(即低頻部分)我們的採集效果更好,因爲低頻段相較高頻段每秒產生的波形更少,我們的低頻段採集是對很少的波形進行了5次的採集,而在高頻段則是對很多的波形進行了5次的採集,最後分別得到的五個點前者更像原始信號。講得更淺顯一點,就是高頻段信息相對更多,採集率越高對高頻段信息的影響越大,得到的採集效果越好。
我們人類的聽覺頻率範圍在20-20000Hz,也就是說我們的錄音只需要採集原始信號在20-20000Hz的聲波,這個時候便涉及到了電信號的尼奎斯特採樣定理(Nyquist's law)。這個定理簡單來講就是:如果我們想要最低限度地對一個波形(注意是一個)進行較好的採集,那麼我們就要採集這個波形的最高點和最低點。
其實不難理解,這就像數學中畫sinX圖像一樣,確定了一個波形的最高點和最低點我們便可以大體地描繪出來波形了。而我們人耳的最高可識別頻率是20000Hz,即每秒存在20000個波形,那麼根據尼奎斯特採樣定理,我們的採樣精度最少應該爲40000Hz纔可以較好地對原始信號進行採集。但這個時候又相應地產生了一個問題,我們不能確保該採樣率下每秒的40000個採樣點都採集到波形的最低或最高點(即完全滿足採樣定理的理想情況)
如圖1,因爲原始信號的聲波是不規律的,在等間隔採集的條件下對高頻段密集波形的採集,我們往往不能精確地採集到聲波的最高和最低點。
圖1
圖2
那這個時候該怎麼辦呢?其實很簡單,我們只需要再稍提高採樣率,對聲波進行精度更高的採集(即每秒採集更多的點,如圖2)便可以較好地解決問題。
所以後來sony和philips這倆公司合計出的解決辦法就是以44100Hz爲普適採樣率。而在製作歌曲時某些製作人更喜歡用48000Hz以提高操作空間。
圖爲44.1kHz和48kHz的歌曲,主流音樂平臺歌曲的採樣率基本上都爲這兩種規格。
- 再來講比特深度。
我們已經說過,採集原始信號的根本目的是要得到數字信號,而比特深度便是以某種標度去刻畫採集到的聲波信息點。
還是以圖爲例,假設我們用5個等級去刻畫我們以5Hz採集到的若干信息點,並規定這五個等級分別爲KLMNO,那麼我們便可以通過座標來表示圖中框住的點了,該點應爲(0.4s,N),所表示的意思爲:在開始採集後的第0.4秒發出N等級的聲波。我們實際用二進制去描述等級,即把KLMNO這五個等級用二進制表示出來,以達到轉化爲數字信號的目的。可以粗淺地認爲比特深度是配合採樣時間去組成一個座標系來描述信息。比特深度越高(即等級越多),我們對應的標度越精確,主流音樂媒體的錄音比特率爲16bit,總有2^16=65536種等級。
問:比特深度的提高可以對錄音質量帶來什麼影響?是不是比特深度越高越好?
經由前面的解釋,我們不難理解,比特深度是一種量化的描繪方式,它只能記錄下特定等級的信息點,而有另一部分的信息點因爲不符合規定等級被排除在外不被進行記錄。當比特深度提高,我們對原始信號的刻畫就會變得更加細膩(例如剛纔的圖中有些點是不準確落於等級線上的,要進行模糊處理,等級越多需要迷糊處理的點就越少,也就是我所謂的更加細膩)。
比如8bit規格總有2^8=256種等級,相較16bit少了很多,我們將16bit音頻降爲8bit的音頻後再次播放,會明顯聽到背景有沙沙聲,這些聲音的產生就是因爲8bit規格下的刻畫不夠細膩,有一部分的信息點被迷糊處理,沙沙聲就是因此而來的。而對於16bit規格,它的刻畫已經十分細膩,再進一步提升到24bit,即總有2^24=16777216種等級去刻畫信息,客觀上來講最後呈現的音頻質量肯定是更加還原的,但是人耳可以明顯感受到的提升卻微乎其微。而且礙於錄製設備和各種原因,很多錄音原生就是16bit,我們在播放時選擇往上提升的意義並不太大。
問:.mp3和.flac格式文件究竟有什麼聯繫和區別?
爲了解決這個問題,我們先要介紹採集錄音階段的兩種不同調制系統:DSD和PCM。我們上文所介紹的以採樣時間爲橫軸、一定數量的比特深度爲縱軸的採集錄音方式大體上便是PCM調製的錄音原理。我們不難理解,當我們播放一首PCM調製的音頻,其實質就是去一個一個地調度記錄下時間、比特深度的採樣點(說白了就是用點去畫線)這樣的調製下每個採樣點間都是相互獨立、不相關聯的。
而對於DSD調製系統,仍是以採樣時間、比特深度爲橫、縱兩軸來記錄信息,但不同的是,在縱軸DSD調製只有1bit深度,即只有兩個記錄等級。
DSD調製系統下,我們規定一個固定值*(我們先暫且成這一固定值爲“*”),通過比較當前採樣點和前一個採樣點之間的深度差是否滿足*,若“滿足”則輸出“1”,“不滿足”則輸出“0”。有別於PCM提升採樣率和比特深度以提升採樣效果,DSD調製系統需要調小比較量度“*”和提高採樣率以提升採樣效果,同時採樣率必須非常非常的高(相應記錄的數據也更多,最終展現爲音頻文件的大小更大),最低規格的DSD64採樣率爲2.8224MHz是CD採樣率(44.1kHz)的64倍。
DSD64採樣率爲2.8224MHz
我們不難理解,DSD系統下各採樣點間是彼此相依存的,有了前一個採樣點纔會有後一個採樣點,雖然其橫縱兩軸的度量單位與PCM相同,但其記錄方式是與PCM截然不同的。由於其記錄方式的特殊性(各記錄點之間相互關聯),想要對DSD調製音頻進行調整、修改是極其極其困難的,這也是其不常被使用的原因之一。那麼是否意味着“DSD=音質更好”?是又不是。其音質更好是確鑿無疑的,但較PCM人們能明顯感知到的差別已經很小了,所以客觀上更好,但主觀上基本無差。
我們常見的.mp3或.flac都是PCM調製,主流音樂媒體中歌曲均爲PCM調製;而較爲罕見的.dsf、.dsdiff則爲DSD調製。而對於.mp3和.flac間的區別,這就是老生常談了。粗淺地去理解,flac是未經壓縮過的數字信號,採集錄音時是什麼樣,轉化成的數字信號就是什麼樣;而mp3是經過壓縮的數字信號,即聲音由原始信號過渡爲數字信號後損失掉了一些信息,在壓縮成.mp3後又損失掉了一些信息。
3、解碼與收聽!數字信號轉化爲模擬信號。
當我們在音樂平臺上點擊一首歌曲到收聽的過程,實際上是一個黑盒。前面已經講過,歌曲在電腦中的存儲形式是數字信號,是0和1構成的數字碼流,我們碳基生物是識別不了這些東西的,這個時候便需要將數字信號轉變爲模擬信號。
問:模擬信號又是個啥?模擬信號、數字信號、原始信號間有啥區別?
我覺得對於第一個問題最準確的回答就是管話兒:模擬信號是指用連續變化的物理量表示的信息,其信號的幅度,或頻率,或相位隨時間作連續變化,或在一段連續的時間間隔內,其代表信息的特徵量可以在任意瞬間呈現爲任意數值的信號。看不懂?沒關係,我也看不懂。簡單解釋一下,模擬信號,就是通過一種模擬方式來模擬現實世界中的信號,它可以被我們碳基生物識別,但不能被計算器識別。模擬信號最重要的特徵是連續性,比如我們汽車的儀表盤,其所表示的車輛速度信息就是一種具有連續性的模擬信號。
那啥是連續性?依舊來拿儀表盤舉例,儀表盤上的數字指針可以表示出儀表盤量程範圍內的任意數值,比如其既可以表示出15km/h也可以表示出來15.0000001km/h;
但我們如果用屏顯式的測速儀去測量車輛的速度,屏顯出的數字就是數字信號,因爲其是非連續的,只能顯示出規定精度範圍內的數字,15.0000001或許就被四捨五入成了15.0km/h。我們最開始說的所謂“原始信號”,實際上也是一種模擬信號,不過爲了更好理解,我稱它爲原始信號,正式是沒有這個名稱的。話說回來,我們向錄音設備輸入的,或者說,錄音設備檢測到的聲音就是模擬信號,而其輸出的則是數字信號,是不100%精確的。而“原始信號”(這裏我就得給原始信號加上引號了哈哈哈)、數字信號和模擬信號三者間的關係可以用下圖表示:
單拿歌曲來舉例,我們第二次信號轉換的過程有以下步驟:
- 經軟件或者數字播放器識別格式進行初解,在這個過程中,我們使用的播放軟件要可以識別音頻的調製編制格式(即後綴),才能繼續進行到更後面的步驟。說白了就是你想播放一首.mp3的歌曲,那你就得用網易雲播放,不能用愛奇藝播放。
- 軟件進行初解後,會產生PCM或者DSD格式的音頻碼流,通過以下方式繼續傳輸:通過主板傳送到板載聲卡或內置聲卡(經由PCIE);通過SPDIF(即同軸線或光纖線)、通過Usb(AtoB)或者rca蓮花線傳送到DAC(也就是數模轉化器,我們俗稱的解碼器)
注意,這裏比較容易引起歧義,我所謂的碼流只傳輸到聲卡或者DAC兩者之一,同時只經過SPDIF、USB、rca以及其他線路傳輸方式之中的一種傳輸到DAC。
光纖(左)和同軸(右)接口
光纖線(我手上沒有同軸線)
USB-A
USB-B
PCI-E插槽
一根3.5轉rca的線
- 經由我們的解碼電路進行最後的解碼,輸出爲可以被我們的耳機、音響或者耳放、功放識別的模擬信號
- 我們通過耳機與音響喇叭的振動接受可以被我們識別的聲波,完成收聽行爲。
問:我怎樣才能播放DSD音樂?
想要播放DSD音樂也算是比較費勁的事了。首先我們要有DSD調製的音樂,光這步就十分困難,因爲DSD的稀有性,我們要去特定的音樂平臺購買DSD音樂,價格一般不便宜。而市面上流傳的免費的DSD音樂的性質我也不好說,難辨真假,主要聽個樂呵吧……但是可以保證的是正規購買的DSD音樂是100%的DSD。因爲主流音樂媒體是沒有DSD音樂的解碼插件的,所以有了DSD音樂之後我們還需要找一款可以解碼DSD的音樂軟件。到這步還沒算完,光輸入進去了DSD音樂,那輸出呢?如果只給軟件加裝了decoder即解碼插件,它僅能實現識別DSD,而輸出得仍是PCM,這仍不是我們想要的效果。我們還需要一個支持ASIO模式的解碼器,以實現輸入DSD同時輸出DSD的效果。(後續我會出詳細教程,感興趣可以關注)
還想看?沒啦!
我僅僅是通過搜索網上相關信息進行學習,並不系統,如果有紕漏還望在評論區指正!喜歡的話點個贊吧!
更多遊戲資訊請關註:電玩幫遊戲資訊專區
電玩幫圖文攻略 www.vgover.com