無損音頻

無損音頻指的是數字音樂檔案在經過壓縮後保持了原有音質,並且可完全回復原始數據而不引起任何失真。

概述

作為數字音樂檔案格式的標準, WAV 格式容量過大,因而使用起來很不方便。因此,一般情況下我們把它壓縮為MP3或 WMA 格式。壓縮方法有無損壓縮有損壓縮,以及混成壓縮。MPEG, JPEG就屬於混成壓縮,如果把壓縮的數據還原回去,數據其實是不一樣的。當然,人耳是無法分辨的。因此,如果把 MP3, OGG格式從壓縮的狀態還原回去的話,就會產生損失。然而, APE和FLAC格式即使還原,也能毫無損失地保留原有音質。所以, APE和FLAC可以無損失高音質地壓縮和還原。在完全保持音質的前提下,APE的壓縮容量有了適當的減小。
而要將APE這種音頻無損壓縮形式運用到MP3播放器上來是很多人很早以前就有的一個想法,比起CD來,MP3顯得更為方便、實用!而此前對 MP3取代CD、MD的說法也正是由於音質原因成為最大的阻礙。

APE格式

1、APE源檔案的獲得

早幾年大家有個錄音機聽聽磁帶上的音樂就覺得不錯了,現在有大量的CD與DVD,聲音效果比磁帶不知道要好到那裡去了。但是,CD上的音樂在 windows中是不能夠直接認出的,不能夠直接拷貝到硬碟中(其它的格式windows是可以認識的,比如數據檔案,VCD,DVD等,惟獨CD是不能夠直接認出的)。所以,為了把CD上的歌曲拷貝到硬碟中,就需要專門的軟體來實現,這被叫做抓軌,有很多軟體可以實現這個功能,最常見的、大家認為最好的、就是EAC(EAC.exe)這個軟體,經過抓軌出來的音樂是以wav的形式保留在硬碟中。

2、APE格式的壓縮:

當把CD上的歌曲拷貝到硬碟(即抓軌)以後,這個最原始的檔案(WAV)通常是很大的,比如一盤CD上的音樂,就是700M左右,如果把它分離成每首歌曲,那每首歌曲檔案的大小在20——60M。這樣大的檔案既占用硬碟空間,也不適合在網上進行傳遞。所以,通常要把這個原始的大檔案進行壓縮。其壓縮方式有多種,可以分為兩大類,一類是沒有損失的壓縮,比如用猴子(monkey.exe)這個軟體就可以實現,它可以把這個原始的音樂檔案(WAV檔案)壓縮到原來大小的50——60%,檔案格式是APE。
另外一類壓縮方式叫做有損失的壓縮,優點是可以把檔案壓縮得更小,比如比ape檔案還要小1倍以上,常見的音樂有損壓縮形式是MP3。但缺點是聲音質量下降,一般,檔案被壓縮得越小,聲音質量就越差。

3、網上傳遞:

目前越來越多的人選擇APE格式,網路傳播是功不可滅的,眾多的音樂發燒友在網上交流APE格式音樂,在百度搜尋“APE音樂下載”竟然有 150多萬多條連結,而且數量在每日俱增。現在流行BT也出現了APE音樂的蹤跡,各大BT下載都開闢了APE音樂下載交流的地方,所以用戶根本不用擔心 APE音頻的資源問題。

4、APE檔案的播放:

如果在電腦的硬碟上播放,你只要安裝winamp或者foobar2000這樣的軟體以後,就可以直接進行播放。特別是foobar2000效果很好,下載這個很小的軟體(選取installer這項下載,可以支持各種版本的windows,還支持各種音效卡,包括ac97軟音效卡),安裝到你的硬碟中,不需要做任何設定,就直接可以播放ape格式的音樂了。你只需要對你想聽的那首歌曲用滑鼠進行雙擊,就可以放出最高質量(最接近CD)的音樂。

FLAC格式

1.FLAC概述

 FLAC代表 Free Lossless Audio Codec - 免費的無損音頻壓縮。也就是說音頻以FLAC方式壓縮不會丟失任何信息。這種壓縮與Zip的方式類似,但是FLAC將給你更大的壓縮比率,因為FLAC是專門針對音頻的特點設計的壓縮方式,並且你可以使用播放器播放FLAC壓縮的檔案,就象通常播放你的MP3檔案一樣

2.FLAC系統支持

FLAC是免費的並且支持大多數的作業系統,包括Windows, " unix" (Linux, *BSD, Solaris, OS X, IRIX), BeOS, OS/2, 和Amiga。並且FLAC提供了在開發工具autotools, MSVC, Watcom C, 和Project Builder上的build系統。

3.FLAC項目內容

 數據流的格式以庫的形式提供的參考編碼器和解碼器FLAC, 一個以命令行方式工作的可以編解碼FLAC檔案的程式(譯註:有些象Lame吧?) metaFLAC, 以命令行方式工作的FLAC檔案的metadata編輯器不同音頻播放器的輸入外掛程式

4.FLAC的特性:

 無損失壓縮:被編碼的音頻(PCM)數據沒有任何信息損失,解碼輸出的音頻與編碼器的輸入的每一個位元組都是一樣的。每個數據幀都有一個當前幀的 16-bit CRC 校驗碼,用於監測數據傳輸錯誤。對整段音頻數據,在檔案頭中還保存有一個針對原始未壓縮音頻數據的MD5標記,用於在解碼和測試時對數據進行校驗。
快速:FLAC更看重解碼的速度。解碼只需要整數運算,並且相對於大多數編碼方式而言,對計算速度要求很低。在很普通的硬體上就可以輕鬆實現實時解碼。
硬體支持:由於FLAC提供了免費的解碼範例,而且解碼的複雜程度低,所以FLAC是目前唯一獲得硬體支持的無損壓縮編碼。
可以流化:FLAC的每個數據幀都包含了解碼所需的全部信息。解碼當前幀無需參照它前面或後面的數據幀。FLAC使用了同步代碼和CRC(類似於MPEG等編碼格式),這樣解碼器在數據流中跳躍定位時可以有最小的時間延遲。
可以定位:FLAC支持快速採樣精確定位。這不僅對於播放有益,更使得FLAC檔案便於編輯。
富於彈性的metadata:可以定義和實現新類型的metadata數據塊,而不會影響舊的數據流和解碼器的使用。目前已有的metadata類型包括 tag,cue表,和定位表。 已經註冊的應用程式可以定義自己專用的metadata類型(譯註:這一點與MIDI標準相似)。
非常適合於存檔套用:FLAC是一個開放的編碼格式,並且沒有任何數據的損失,你可以將它轉換為你需要的任何其他格式。除了每個數據幀的CRC和MD5標記對數據完整性的保障,FLAC(譯註:FLAC項目提供的命令行方式編碼工具)還提供了一個verify(校驗)選項,當使用該選項進行編碼的時候,編碼的同時就會立即對已編碼數據進行解碼並與原始輸入數據進行比較,一旦發現不同就會退出並且報警提示。(譯者:怎么樣,這樣壓縮出來的東西還有什麼不放心的?)
便於對CD進行備份:FLAC有一個“cue表”metadata數據塊用於保存CD的內容列表和所有音軌的索引點。你可以將一張CD保存到一個單一檔案,並導入CD的cue表格,這樣一個FLAC檔案就可以完整地記錄整張CD的全部信息。當你的原來的CD損壞的時候,你就可以用這個檔案恢復出與原來一模一樣的CD副本。
抗損傷:由於FLAC的幀結構,使得一旦發生數據流的損壞,損失會被限制在受損傷的數據幀之內。一般只是會丟失很短的一個片段。而很多其他無損音頻壓縮格式在遇到損傷的時候,一個損傷就會造成後面所有數據的丟失。

5.FLAC不具有的特性:

 數據縮水。FLAC是專門並且僅僅為無損壓縮而設計的,您可以選用許多其他優秀的有損壓縮方式如Vorbis, MPC, 和MP3(LAME提供了一個優秀的開放原始碼的實現)。
sdmi(例如cetera)兼容。FLAC不準備支持任何複製保護方法,實際上這些手段最終都是在浪費數據。(從另一個角度看,由於所有這些手段最終都被證明是無效的,所以也可以說FLAC把這些無用數據壓縮到了零!)當然我們不能阻止某些人利用專用的metablock進行複製保護,但是他們的保護只會在他們自己解碼產品上有效,其他解碼器會跳過這些專門的metablock的。

6 .如何播放FLAC檔案?

 1.FLAC是一種無損音頻壓縮格式..用foobar2000和winamp都可以播放...因為他們都帶有FLAC解壓外掛程式的.如果你的播放器不能播放的話.建議你去以下地址下載外掛程式並安裝(這是winamp的flac播放外掛程式)
2.用JetAudio,界面簡單實用,直接支持播放FLAC檔案;還很值得一提的是。

WV格式

1.特點

 WavPack是 David Bryant 開發的一個自由、開放原始碼的無損音頻壓縮格式。
開源,授權也免費,壓縮比介於ape和flac之間,也有容錯
WavPack 允許用戶壓縮、恢復 8、16、24 位 以及 32 位浮點表示的 WAV 格式音頻檔案,另外它還支持多聲道數據流以及非常高的採樣率。與其它無損壓縮機制一樣,這種算法的壓縮比例也跟著源數據的不同而有所不同,但是對於普通的流行音樂來說通常介於 30% 到 70% 之間,對於古典音樂以及其它音域較寬的音樂來說通常能得到更好一些的結果。
另外 WavPack 引入了一種獨特的“混合”模式,它使用一個附加的檔案從而也具有了有損壓縮的優點。與其它方法只生成一個檔案不同,這種模式生成兩個檔案,其中一個是相對較小、可以單獨使用的高質量有損壓縮檔案,另外一個是與有損檔案一起使用實現無損數據恢復的“修正”檔案。對於一些用戶來說,這就意味著他們不必再考慮使用有損還是無損壓縮這樣一個問題。

2.概要

 快速高效壓縮與解壓
開放原始碼,按照類似於BSD許可證的方式發布
多平台
出錯時的健壯性
支持流媒體
支持多聲道以及高解析度
混合/有損模式
硬體支持
支持標籤(ID3v1、APEv2標籤)
支持 RIFF 格式的大塊數據
兼容回放增益
良好的軟體支持
能夠生成 Win32 平台下的自解壓檔案
支持 32 位浮點數據流
支持嵌入式節目單
包含用於完整性檢查的 MD5 散列函式
可以按照對稱或者不對稱模式進行編碼(降低編碼速度可以提高解碼速度)。

3.歷史

 David Bryant 在 1998 年年中開始了 WavPack 的開發並發布了 1.0 版,這第一個版本只有無損壓縮解壓音頻這項功能,但是當時它就已經躋身效率與速度比最好的編碼器之列了。
在 1.0 版之後,很快 Bryant 就發布了 2.0 版,這個版本的特點是使用了有損編碼,它直接對預測殘餘進行了量化以減少數據量,而沒有使用心理聲學 masking 模型。
1999 年,他發布了 3.0 版,新穎的功能成為這個版本的特點,例如通過減小壓縮比實現的快速模式、壓縮無頭原始PCM音頻檔案以及使用 32 位循環冗餘校驗的錯誤檢測功能。
WavPack 的開發仍在繼續,在 後面的 3.x 版本中添加的一個主要特點就是混合模式,在這種模式下編碼器生成一個有損檔案以及一個糾正檔案,這樣它們就可以經過解壓還原出原始的 PCM 數據流
WavPack 4 最近才發布,這個版本包括許多重要的改進,如快速搜尋、多聲道支持、高解析度音頻支持等等,這些特性使它成為功能最全的時髦無損音頻壓縮器之一。最近的 4.x 穩定版本是 4.31,針對 Linux/OSX 的錯誤修正之後得到用於這些系統的 4.32 版,但是它沒有與質量相關的更改。
Bryant 最近發布了未來 WavPack 4.4 的測試版以先睹為快,它包括的功能有針對單聲道或者接近單聲道的音頻數據的改進處理、以及重新設計的壓縮質量系統,這種改進可以以大幅增強的效率實現類似的壓縮。

4.支持

 軟體支持
由 Speek 開發的自定義 Windows 前端
nullsoft Winamp (外掛程式 w/ ReplayGain & Media Library 支持)
foobar2000 - Advanced Audio Player (官方外掛程式,w/ ReplayGain & Cuesheets 支持)
Windows Media Player (帶有 CoreWavPack directshow 濾波器)
XMMS (帶有 Kuniklo 的 外掛程式) (原始碼)
LAMIP (官方外掛程式) - 用於 Linux 及相關係統的模組化音頻播放器 - 主頁
Adobe Audition (and CoolEdit) (filter w/ 32-bit floats & extra info save support)
dBpowerAMP - Music Converter / Audio Player / CD Writer (官方外掛程式)
Apollo Audio Player (外掛程式支持 w/ ReplayGain )
MusikCube - 自由音頻播放器 (w/ WavPack 外掛程式)
Ahead Nero Burning ROM (w/ 外掛程式)
MrQuestionMan - Audio Identifier
Burrrn - 直接從不同的格式燒制音頻 CD
MP3tag - 通用標籤編輯器
Exact Audio Copy - CD Ripper ( w/ wavpack.exe 是外部壓縮程式)
VUPlayer - 自由的多種格式音頻播放器與轉換器
Xist (beta) - 支持 WavPack 的 OS X 播放器(原始碼)
帶有官方外掛程式的 XMPlay, - 用於 Windows 的自由小播放器
Cog - 支持 WavPack 的用於 OS X 的新播放器
MPXPlay - 支持 WavPack 的基於 DOS(MS-DOS、FreeDOS、DR-DOS)的播放器
1by1 與 Coolplayer,帶有 Winamp WavPack 外掛程式
不同平台的 WavPack 編譯版本
The GodFather - 標籤與音樂管理器
Wavpack4Wavelab - 第一款商用/專業波形編輯的第三方檔案輸入輸出外掛程式Steinberg Wavelab 5/6
Easy CD-DA Extractor - 商業 CD 音軌抓取、編碼及轉換工具
OggdropXPd - 直接從包括 WavPack 在內的各種無損格式轉換成有損開放原始碼 Ogg Vorbis 格式
Quintessential Player 帶有 外掛程式
KSP Sound Player 中預設支持
硬體支持
運行開放原始碼 rockbox 固件的播放器,如 iriver ihp100、ihp120、ihp140、H320、H340 以及 iPod Video/Color/Photo/Nano (Rockbox 主頁)
Roku PhotoBridge HD (w/ 外掛程式)
DVD+Audio
自從 2005 年起,WavePack 就開始用於 DVD+Audio 上的音頻壓縮取代 DVD-Audio 上昂貴的 Meridian Lossless Packing。

5.技術

為了保證高速運算,WavPack 完全使用整數算術這樣一種簡單的預測,在“最快”模式下,預測值是前面兩個採樣的簡單數學外推。例如,如果前面兩個採樣是 -10 與 20,那么預測值就是 50。在預設模式下,使用一個簡單的自適應因子衡量前面採樣對於預測影響的權重。在我們的這個例子中預測值可能從 20 到 50 之間變化,也就是前面的採樣從沒有影響到影響最大這樣一個範圍變化。這個權重因子隨著音頻數據頻譜特性的變化而不斷更新,所以它是“自適應”的。
然後從待編碼的實際採樣中減去生成的預測值得到誤差,在單聲道模式下這個值直接送到編碼器去,但是立體聲信號通常在兩個聲道之間有一些能在後面使用的相關性,所以左右聲道分別計算出各自的誤差值。在“快速”運算模式下這兩個新生成的值直接送到編碼器而不管它是左聲道還是右聲道。在預設模式下,這個誤差值總是隨著平均、左或者右三者之一傳送到編碼器。自適應算法根據聲道不斷變化的平衡性確定傳送三者中最有效的一個。
David Bryant 為 WavPack 開發了一個獨特的數據編碼器,他認為這個編碼器有兩個方面要比 Rice編碼優秀。由於對於這種類型的數據來說 Rice 編碼代表了最優的位編碼(有時也稱作哈夫曼編碼)。WavPack 編碼要比它稍稍遜色一點,大約差距是 0.15 位/採樣,也就是說 16 位數據大約差 1%。WavPack 編碼器的第一個優點是在編碼前數據無需快取,它將每個採樣直接轉換成位碼。這從計算的角度來講效率更高,在一些延遲控制很關鍵的套用中表現更好。它的第二個優點是很容易適應有損編碼,這是因為除了隱含的一個最高位之外所有重要的數據位都直接進行傳送。按照這種方法,就可以只傳送每個採樣中帶有符號的最高 3 位。實際上,可以只傳送符號位以及用平均 3.65 位/採樣 表示的使用隱含最高位的採樣值。
這個編碼機制用於實現 WavPack 的“有損”模式。在“快速”模式下,非自適應去相關的輸出只是簡單地四捨五入到最近的特定位數的編碼值。在預設模式下,使用自適應的去相關,它可以將噪聲平均減小 1 dB,並且當前以及下一個採樣在選擇兩個可用的編碼值時都參與衡量,這又將噪聲減小 1 dB。
由於開發者認為整數運算受不同晶片的影響較小,而晶片的不同可能帶來無損壓縮特性的變化,如 Pentium 浮點運算的缺陷就是一個明顯的例子,所以他決定在 WavPack 算法的數據處理中不使用浮點運算。使用浮點運算的無損壓縮工具如果運行在有缺陷的 Pentium 晶片上可能就會生成不同的結果。即使我們不考慮這些已經存在的缺陷,浮點運算也很複雜,在不同的“正確”實現之間也可能有微小差別,對於這類套用可能會帶來麻煩。為了進一步加強 WavPack 壓縮數據的完整性,編碼器在生成的數據流後包括有一個 32 位的錯誤檢測碼。
WavPack 的原始碼非常易於移植到其它平台,它已經可以在幾種不同的 Unix 系統上編譯,如 Linux、Mac OS X、Solaris、FreeBSD、OpenBSD、康柏 Tru64、HP-UX等等,另外它也可以在Microsoft Windows、DOS、Palm OS 以及 OpenVMS 上編譯。它可以在許多平台上工作,如x86、ARM架構、PowerPC、AMD64、IA-64、SPARC、DEC Alpha、PA-RISC、MIPS以及Motorola 68k。

相關詞條

相關搜尋

熱門詞條

聯絡我們