FLAC(無損音頻壓縮編碼)

FLAC(無損音頻壓縮編碼)

本詞條是多義詞,共2個義項
更多義項 ▼ 收起列表 ▲

FLAC中文可解釋為無損音頻壓縮編碼。FLAC是一套著名的自由音頻壓縮編碼,其特點是無損壓縮。不同於其他有損壓縮編碼如MP3及AAC,它不會破壞任何原有的音頻資訊,所以可以還原音樂光碟音質。2012年以來它已被很多軟體及硬體音頻產品(如CD等)所支持。

基本介紹

  • 中文名:無損音頻壓縮編碼
  • 外文名:Free Lossless Audio Codec
  • 外語縮寫:FLAC
  • 類型無損壓縮
  • 項目啟動時間:2000年
  • 發布時間:2001年1月15日
  • 最新穩定版:v1.3.2(2017-01-01) 
解析區別,項目,歷史,特性,軟體支持,編碼,解碼,CD抓軌,硬體支持,原生支持,其他平台,打開方式,缺點,FLAC與APE,

解析區別

FLAC與MP3不同,MP3是有損音頻壓縮編碼,但FLAC是無損壓縮,也就是說音頻以FLAC編碼壓縮後不會丟失任何信息,將FLAC檔案還原為WAV檔案後,與壓縮前的WAV檔案內容相同。這種壓縮與ZIP的方式類似,但FLAC的壓縮比率大於ZIP和RAR,因為FLAC是專門針對PCM音頻的特點設計的壓縮方式。而且可以使用播放器直接播放FLAC壓縮的檔案,就象通常播放你的MP3檔案一樣(近幾年已經有許多汽車播放器和家用音響設備支持FLAC,在FLAC的網站上你可以找到這些設備廠家的連結)。
FLAC是免費的並且支持大多數的作業系統,包括Windows,基於Unix Like核心(LinuxBSD,Solaris,IRIX,AIX等)而開發的系統,BeOS,OS/2,Amiga。並且FLAC提供了在開發工具autotools,MSVC,Watcom C,Project Builder上的build系統。
FLACFLAC
現各大網站都有FLAC音樂下載,發布者一般是購買CD後把.cda音軌直接抓取成.flac,以保證光碟的原無損質量。
無損格式配上好耳機的效果是非常棒的!

項目

FLAC 數據流的格式
以庫的形式提供的參考編碼器和解碼器 ;
flac,一個以命令行方式工作的可以編解碼FLAC檔案的程式;
metaflac,以命令行方式工作的FLAC檔案的metadata編輯器。
FLAC 不同音頻播放器的輸入外掛程式
我們所說的“FLAC是自由(free)的”不僅僅意味著你可以不花錢而得到它。更重要的是FLAC的檔案格式是對公眾完全開放的,你可以以任何目的使用它(FLAC 項目只保留維護 FLAC 格式規格和確認兼容特性的權利),FLAC的檔案格式和編碼/解碼的實現方式都不受任何已知專利的限制。還有,所有的原始碼都在開放原始碼的授權方式下可以得到。
FLACFLAC

歷史

FLAC項目由Josh Coalson於2000年啟動。進入beta階段後並在2001年1月15日發布的0.5版的參考實現時,FLAC位流格式凍結。
2001年6月FLAC發布了1.0版。
2003年1月29日, "Xiph. Org"基金會和FLAC項目宣布FLAC成為"Xiph. Org"旗下的獨立公司 banner. 除此之外,"Xiph. Org"還對許多免費壓縮格式提供支持,如Vorbis、Theora、Speex等等。
FLACFLAC
2007年9月17日FLAC發布了1.2.1版。
2013年6月1日六年來首次發布更新,從v1.2升級到v1.3。主要變化包括:支持RF64和Wave64 格式,ReplayGain支持最高192kHz音頻取樣率,等等。

特性

無損失壓縮:被編碼的音頻(PCM)數據沒有任何信息損失,解碼輸出的音頻與編碼器的輸入的每一個位元組都是一樣的。每個數據幀都有一個當前幀的 16-bit CRC校驗碼,用於監測數據傳輸錯誤。對整段音頻數據,在檔案頭中還保存有一個針對原始未壓縮音頻數據的MD5標記,用於在解碼和測試時對數據進行校驗。 電腦在播放WAV檔案時,是把WAV檔案中的PCM數據直接傳送給音效卡,而電腦在播放FLAC時,需要先把FLAC解碼為PCM數據,然後在傳送給音效卡。就是多了一個解碼的環節,就像是給RAR文檔解壓一樣。其PCM數據是與壓縮前的WAV沒有區別的。
FLACFLAC
快速:FLAC更看重解碼的速度。解碼只需要整數運算,並且相對於大多數編碼方式而言,對計算速度要求很低。在很普通的硬體上就可以輕鬆實現實時解碼。
硬體支持:由於FLAC提供了免費的解碼範例,而且解碼的複雜程度低,直至2012年以來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的全部信息,也就是說,可以把平時單獨存放的CUE檔案嵌入到FLAC檔案里。當你的原來的CD損壞的時候,你就可以用這個檔案恢復出與原來一模一樣的CD副本。
抗損傷:由於FLAC的幀結構,使得一旦發生數據流的損壞,損失會被限制在受損傷的數據幀之內。一般只是會丟失很短的一個片段。而很多其他無損音頻壓縮格式在遇到損傷的時候,一個損傷就會造成後面所有數據的丟失。

軟體支持

編碼

跨平台
Audacity
1.2.5版之後
KMPlayer
通過官方解碼器
Flake(libFlake)
一個第三方開發的實驗性的版本對多執行緒/核提供支持。
Windows平台
ALLPlayer
通過外部解碼器
12.0.3xx版以後
通過可選的外部分離器外掛程式
10.2版以後
Producer版,7版以後
9版以後
Pro 8/Pro 9
5.35版之後通過Flake,5.54版之前會產生不正確的MD5檢驗
Toast Titanium
版本7開始支持
xACT
不要與微軟的XACT庫混淆

解碼

跨平台
Boxee
FFmpeg
aTunes
PS3 Media Server
Adobe Audition
Audacity 1.3.5 Beta
MPlayer
Songbird
Squeezebox
The Core Pocket Media Player with FLAC plugin
VLC media player
XBMC Media Center
Mixxx Digital DJ software
Windows平台
Ableton Live
Windows Media Player 12.0.9800
類Unix
GnomeBaker
GNOME
Quod Libet
GNOME
Rhythmbox
GNOME
Totem Movie Player
GNOME
Serpentine
GNOME
Amarok
KDE
JuK
KDE
Audiokonverter
KDE
Mac OS X
Fluke
Quicktime
Ableton Live
Cog
Plex Media Center
xACT
TRAKTOR 3
TRAKTOR Scratch
Palm OS
TCPMP
0.72rc1版,開源,通過外掛程式

CD抓軌

跨平台
Songbird
aTunes
Windows平台
Audiograbber
AudiTranscoder
BonkEnc
CDex
DBpoweramp
Exact AudiCopy
Easy CD-DA Extractor
foobar2000
iriver plus 3
JetAudio
MediaMonkey
Winamp
Yahoo! Music Jukebox
類Unix
ABCDE
Asunder
Banshee
Cdda2wav
Cdparanoia
Mencoder
crip
Grip
Sound Juicer
K3b
Konqueror
soundKonverter
Mac OS X
Max
Mac OS 10.4版或更高版本

硬體支持

原生支持

蘋果 (Apple ) iPhone 7, 7 Plus, 8, 8 Plus, X, XS, XS Max, XR 
更新至iOS 11後可以實現原生播放,僅支持lightning輸出。
不支持藍牙耳機,不支持iPhone 6s, 6s Plus及以下機型。
TRAXMOD
支持44.1 kHz/16位 立體聲回放
Onkyo TX-NR906
支持播放外部USB設備上的16位/24位
Pioneer SC-05, SC-07, SC-25, SC-27 以及 SC-09TX
支持外部USB設定 (網路支持特性待驗證)
Denon AVP-A1HDCI, AVR-4810, AVR-4310, AVR-3310等
Yamaha RX-V2065 功放
Meridian Sooloos
Escient
iAudio (Cowon) - A2, A3, 6, 7, F2, M3, M5, X5, U3, U5
通過刷入最新固件可以實現原生播放
Olive (Symphony, Musica, Opus)
PhatBox
Rio Karma
SanDisk Sansa Fuze
更新固件後支持
Squeezebox 和Transporter(Logitech的網路音樂播放器)
最新產品支持原生解碼。早期產品需要在伺服器端轉換為PCM編碼
Sonos
魅族(Meizu) M6 Mini Player, M3 Music Card, M8, M9
VEDIA A10, B6
Pixel Magic Systems' HD Mediabox
1.3.4版或之後的固件
嵌入式Waveplayer
支持FLAC 0-2級
Teclast T29, T39, C260, C280, C290
Trekstor Vibez
T+A Music Player
Linn Klimax DS (Digital Stream)
Linn Akurate DS
Linn Majik DS
Linn Sneaky Music DS
iriver E100, E50, E30, Lplayer, SPINN
NMT players
Archos 5 網際網路平板電腦
Archos網際網路多媒體平板電腦
Naim Audio HDX 硬碟播放器
Samsung YP-U5
Creative Zen X-Fi 2
WD TV
索尼(SONY) BDV-E4100//M 3D藍光家庭影院 (黑色)
支持FLAC

其他平台

Nintendo Wii
通過Wii自製程式,MPlayerWii或MPlayer CE
Apple TV,BMC Media Center 或 Boxee
1-5.5代iPod, iPod Mini,1代iPod nano
通過第三方Rockbox固件
絕大多數兼容Rockbox的數碼音樂播放器(DAP)
包括iriver和Gigabeat (東芝公司)的產品,以及上面提到的iPod
Sound Devices 7-Series專業音頻錄音機
通過更新"badger" 固件 (v.2.24版)
Sony PlayStation Portable(PSP)
使用自製LightMP3程式
Samsung YP-P3, YP-Q1, YP-Q2, YP-U5, YP-S5,YP-RO
通過三星網站上發布的新版固件
Windows Mobile, Symbian OS(S60, S80 和 S90平台),
通過免費的開源音樂播放程式OggPlay。
Google Android 設備
通過運行CM 3.9.6版(或更高版本)

打開方式

FLAC可以通過很多播放器直接播放,比如千千靜聽(已改名百度音樂)Foobar2000AIMP等,甚至部分視頻播放器如KMPlayer都能直接播放。當然,為了音質考慮,建議使用專業音樂播放器進行播放。
在特殊情況下,可以將FLAC檔案視為一個光碟鏡像,並載入到虛擬光碟機上,這可以通過Nero將FLAC檔案刻錄到映像檔案然後通過虛擬光碟機(如Daemon Tools)載入來實現,也可以通過WinMount軟體可以直接把Flac檔案掛載到一個虛擬光碟機。但是因為操作繁瑣,所以除非在必要情況下,一般我們都是通過播放軟體直接播放的。

缺點

FLAC僅僅是一個無損音頻編碼,不含有有損壓縮的功能。因此當需要小體積有損編碼的音頻檔案時,你將仍然需要MP3AACOgg Vorbis等編碼。
FLAC不支持任何著作權保護(防複製)方法,自行嘗試對FLAC檔案進行保護是徒勞無功的。

FLAC與APE

在音頻壓縮領域,有兩種壓縮方式,分別是有損壓縮和無損壓縮!我們常見到的MP3、WMA、OGG被稱為有損壓縮,有損壓縮顧名思義就是在壓縮過程中會讓原始音頻信息受損和失真,意義在於輸出的音頻檔案可以比原檔案小很多。另一種音頻壓縮被稱為無損壓縮,也就是我們今天所要說的主題內容。無損壓縮能夠在100%保存原檔案的音頻數據的前提下,將音頻檔案的體積壓縮得更小,而將壓縮後的音頻檔案還原後,能夠得到與源檔案完全相同的PCM數據。目前無損壓縮格式有APE、FLAC、WavPack、TAK、TTA、WMA Lossless、Apple Lossless、La、OptimFROG、Shorten等,而在中國最流行的無損壓縮格式是APE和FLAC。下面就針對這兩種無損壓縮格式進行一下對比。
APE即Monkey's Audio,是一種常見的無損音頻壓縮編碼格式,擴展名為.ape。與有損音頻壓縮(如MP3Ogg Vorbis或者AAC等)不同的是,Monkey's Audio壓縮時不會丟失數據。一個壓縮為Monkey's Audio的音頻檔案聽起來與原檔案完全一樣。Monkey's Audio檔案的播放列表使用.apl(也支持cue)。同時它提供的開源開發包使得播放器開發者們可以較容易地讓播放器產品支持APE格式。在現有不少無損壓縮方案中,APE是一種有著優勢並不突出的壓縮比以及較慢的解碼速度。由於推出時間較FLAC早,APE格式占據了大多數PC-HIFI友的心,在國內很快流行,套用非常廣泛,成為了國內許多無損音樂愛好者的首選格式。
FLAC是Free Lossless Audio Codec的簡稱,是一種非常成熟的無損壓縮格式,名氣不在APE之下。該格式的源碼完全開放,而且支持所有的作業系統平台。它的編碼算法相當成熟,已經通過了嚴格的測試,當FLAC檔案受損時依然能正常播放。另外,該格式是最先得到廣泛硬體支持的無損格式。
前面已經說明,無損壓縮是在保證不損失源檔案所有碼率的前提下,將音頻檔案壓縮得更小,也就是說這兩種音頻格式都能保證源檔案碼率的無損。但兩種壓縮格式畢竟為兩種壓縮算法,下面比較一下這兩種壓縮格式的特點:
一、壓縮比決定無損壓縮檔案所占存儲空間
所有的無損壓縮編碼的壓縮比都較為相近,但在這些無損壓縮編碼之中,APE具有較好的壓縮率,FLAC的壓縮率略有不如。以一首49784KB的“5 Star Grave - In Bed With The Dead.wav”為例,轉換為flac後大小為37006KB,轉換為ape後大小為36460KB,兩者的壓縮率分別為74.33%和73.24%。大多數情況下,一個WAV音頻檔案經壓縮後得到的APE檔案,一般會比壓縮為FLAC檔案稍微小一些。由於不同的WAV檔案信息量不同,以上數據僅供參考。(註:flac.exe為1.3.0版,MAC.exe為4.11版)
FLACFLAC
二、編碼速度考驗用戶的耐心,速度快者優
FLAC的壓縮和解碼速度均顯著優於APE,APE只有在FAST的編碼強度下,速度才能和FLAC一拼。但相應的,APE的壓縮率一直高於FLAC,APE的FAST壓縮下得到的檔案體積已經可以和FLAC最高壓縮比的檔案體積媲美(經測試,一首49784KB的“5 Star Grave - In Bed With The Dead.wav”檔案,經FAST壓縮後得的APE檔案和最高壓縮比Level 8下得到的FLAC檔案大小分別為36854KB、36960KB)。也就是說,如果以速度為基準比較的話,在相同壓縮速度的設定下,兩者的壓縮比差不多。
三、平台的支持決定普及度
FLAC相比APE的解碼複雜程度要較低(解碼運算量小、只需要整數運算),解碼速度快,對計算硬體要求很低,在很普通的硬體上就可以輕鬆實現實時解碼播放。FLAC是目前唯一獲得廣泛硬體支持的無損壓縮編碼,在消費領域,已經有很多移動多媒體播放器、汽車、家用音響設備支持FLAC格式了。
APE格式,目前官方只提供Windows支持。雖然也有提供GNU/Linux和Macintosh平台的官方支持的討論,但是沒有結果。目前只有一位名為SuperMMX的開發者於2003年7月釋出了一個非官方移植版本。它包括了供XMMS與Beep Media Player回放Monkey's Audio使用的外掛程式。該移植本來只支持GNU/Linux,但從3.99 update 4 build 4版本開始支持Mac OS X和基於PowerPC、SPARC平台的GNU/Linux。但是這個非官方移植計畫沒有得到官方的承認,受制於官方發行許可證的限制,其未來並不明朗。不過據稱Monkey's Audio的Win32庫可以藉助Wine在GNU/Linux平台運行。硬體支持方面,由於採用了浮點運算,編碼解碼速度慢,對硬體的要求較高,硬體支持度不如FLAC。
四、兩者的開源特性
APE屬於個人作品,未來不排除出現著作權問題;技術水平和支持方面遜色於國際通用標準格式的FLAC。
FLAC是一個開放原始碼並且完全免費的無損音頻編碼壓縮格式,是國際通用標準,這種與CD質量相同的音樂格式在音質上一樣是無可挑剔的,以FLAC方式壓縮不會丟失PCM音頻的任何信息。而且你永遠不必擔心惹上著作權官司。受益於此,目前有很多音頻處理軟體默認都可以輸入、輸出FLAC格式檔案,這給音頻的後期處理帶來了方便。
兩者的開源或部分開源,對音頻軟硬體的設計們提供了很大的便利,目前不但幾乎所有主流播放軟體都支持二者,硬體方面也有很多播放器支持了FLAC和APE。只不過因為APE解碼的運算量太大的問題,導致並不是每一個APE檔案都可以被硬體播放器流暢播放,也更耗電。
五、容錯能力
APE檔案的容錯性差,只要在傳輸過程中出現一點差錯,就會讓整首APE音樂作廢。而FLAC檔案因為每幀數據之間無關聯。因此當FLAC檔案在傳播過程中受損,導致某幀數據損壞缺失的話,只會損失該幀的音頻信息,不會影響到前後的數據。這是FLAC的優勢,但也因此FLAC的壓縮率略低。
總結:
無論FLAC還是APE,因為所占空間都比有損音樂大很多,單從技術角度講,FLAC要比APE更有優勢,因為FLAC完全開源,許多播放器可以自由地將FLAC解碼功能內建在自己的解碼器中。同時,FLAC有廣泛的硬體平台的支持,幾乎所有採用攜帶型設計的高端解碼晶片都能夠支持FLAC格式的音樂,FLAC第三個優勢在於:優秀的編碼使得硬體在解碼時只需採用簡單的整數運算即可,這將大大降低所占用的硬體資源,解碼速度極快,這也是硬體播放器對FLAC支持更好的原因。

相關詞條

熱門詞條

聯絡我們