soloforce
05-12-14, 10:36
無(wú)損音頻壓縮格式FLAC——FREE LOSSLESS AUDIO CODEC
轉(zhuǎn)引自美麗元素論壇(www.b-factors.com)作者:Superguest
-----------------------------------------------------------------------------------------
以下文章是本人熬夜從FLAC官方網(wǎng)站翻譯下來(lái)的,希望能夠和大家一起對(duì)這種在國(guó)外已經(jīng)替代APE的優(yōu)秀格式有所了解。
FLAC代表 Free Lossless Audio Codec - 免費(fèi)的無(wú)損音頻壓縮 。
簡(jiǎn)而言之,F(xiàn)LAC與MP3相仿,但是是無(wú)損壓縮的,也就是說(shuō)音頻以FLAC方式壓縮不會(huì)丟失任何信息。這種壓縮與Zip的方式類似,但是FLAC將給你更大的壓縮比率,因?yàn)镕LAC是專門(mén)針對(duì)音頻的特點(diǎn)設(shè)計(jì)的壓縮方式,并且你可以使用播放器播放FLAC壓縮的文件,就象通常播放你的MP3文件一樣(現(xiàn)在已經(jīng)有許多汽車播放器和家用音響設(shè)備支持FLAC,在FLAC的網(wǎng)站上你可以找到這些設(shè)備廠家的連接)。
FLAC是免費(fèi)的并且支持大多數(shù)的操作系統(tǒng) ,包括Windows, "unix" (Linux, *BSD, Solaris, OS X, IRIX), BeOS, OS/2, 和Amiga。并且FLAC提供了在開(kāi)發(fā)工具autotools, MSVC, Watcom C, 和Project Builder上的build系統(tǒng)。
FLAC項(xiàng)目包括以下幾個(gè)方面:
數(shù)據(jù)流的格式
以庫(kù)的形式提供的參考編碼器和解碼器
flac, 一個(gè)以命令行方式工作的可以編解碼FLAC文件的程序(譯注:有些象Lame吧?)
metaflac, 以命令行方式工作的FLAC文件的metadata編輯器
不同音頻播放器的輸入插件
我們所說(shuō)的“FLAC是免費(fèi)的”不僅僅意味著你可以不花錢(qián)而得到它。更重要的是FLAC的文件格式是對(duì)公眾完全開(kāi)放的,你可以以任何目的使用它(FLAC 項(xiàng)目只保留維護(hù) FLAC 格式規(guī)格和確認(rèn)兼容特性的權(quán)利),F(xiàn)LAC的文件格式和編碼/解碼的實(shí)現(xiàn)方式都不受任何已知專利的限制。還有,所有的源代碼都在開(kāi)放源代碼的授權(quán)方式下可以得到。
FLAC是世界上第一個(gè)完全開(kāi)放和免費(fèi)的無(wú)損音頻壓縮格式 。
FLAC的特性:
無(wú)損失壓縮: 被編碼的音頻(PCM)數(shù)據(jù)沒(méi)有任何信息損失,解碼輸出的音頻與編碼器的輸入的每一個(gè)字節(jié)都是一樣的。每個(gè)數(shù)據(jù)幀都有一個(gè)當(dāng)前幀的 16-bit CRC 校驗(yàn)碼,用于監(jiān)測(cè)數(shù)據(jù)傳輸錯(cuò)誤。對(duì)整段音頻數(shù)據(jù),在文件頭中還保存有一個(gè)針對(duì)原始未壓縮音頻數(shù)據(jù)的MD5標(biāo)記,用于在解碼和測(cè)試時(shí)對(duì)數(shù)據(jù)進(jìn)行校驗(yàn)。
快速: FLAC更看重解碼的速度。解碼只需要整數(shù)運(yùn)算,并且相對(duì)于大多數(shù)編碼方式而言,對(duì)計(jì)算速度要求很低。在很普通的硬件上就可以輕松實(shí)現(xiàn)實(shí)時(shí)解碼。
硬件支持: 由于FLAC提供了免費(fèi)的解碼范例,而且解碼的復(fù)雜程度低,所以FLAC是目前唯一獲得硬件支持的無(wú)損壓縮編碼。
可以流化: FLAC的每個(gè)數(shù)據(jù)幀都包含了解碼所需的全部信息。解碼當(dāng)前幀無(wú)需參照它前面或后面的數(shù)據(jù)幀。FLAC使用了同步代碼和CRC(類似于MPEG等編碼格式),這樣解碼器在數(shù)據(jù)流中跳躍定位時(shí)可以有最小的時(shí)間延遲。
可以定位: FLAC支持快速采樣精確定位。這不僅對(duì)于播放有益,更使得FLAC文件便于編輯。
富于*性的metadata: 可以定義和實(shí)現(xiàn)新類型的metadata數(shù)據(jù)塊,而不會(huì)影響舊的數(shù)據(jù)流和解碼器的使用。目前已有的metadata類型包括tag,cue表,和定位表。已經(jīng)注冊(cè)的應(yīng)用程序可以定義自己專用的metadata類型(譯注:這一點(diǎn)與MIDI標(biāo)準(zhǔn)相似)。
非常適合于存檔應(yīng)用: FLAC是一個(gè)開(kāi)放的編碼格式,并且沒(méi)有任何數(shù)據(jù)的損失,你可以將它轉(zhuǎn)換為你需要的任何其他格式。除了每個(gè)數(shù)據(jù)幀的CRC和MD5標(biāo)記對(duì)數(shù)據(jù)完整性的保障,flac(譯注:FLAC項(xiàng)目提供的命令行方式編碼工具)還提供了一個(gè)verify(校驗(yàn))選項(xiàng),當(dāng)使用該選項(xiàng)進(jìn)行編碼的時(shí)候,編碼的同時(shí)就會(huì)立即對(duì)已編碼數(shù)據(jù)進(jìn)行解碼并與原始輸入數(shù)據(jù)進(jìn)行比較,一旦發(fā)現(xiàn)不同就會(huì)退出并且報(bào)警提示。(譯者:怎么樣,這樣壓縮出來(lái)的東西還有什么不放心的?)
便于對(duì)CD進(jìn)行備份: FLAC有一個(gè)“cue表”metadata數(shù)據(jù)塊用于保存CD的內(nèi)容列表和所有音軌的索引點(diǎn)。你可以將一張CD保存到一個(gè)單一文件,并導(dǎo)入CD的cue 表格,這樣一個(gè)FLAC文件就可以完整地記錄整張CD的全部信息。當(dāng)你的原來(lái)的CD損壞的時(shí)候,你就可以用這個(gè)文件恢復(fù)出與原來(lái)一模一樣的CD副本。
抗損傷: 由于FLAC的幀結(jié)構(gòu),使得一旦發(fā)生數(shù)據(jù)流的損壞,損失會(huì)被限制在受損傷的數(shù)據(jù)幀之內(nèi)。一般只是會(huì)丟失很短的一個(gè)片段。而很多其他無(wú)損音頻壓縮格式在遇到損傷的時(shí)候,一個(gè)損傷就會(huì)造成后面所有數(shù)據(jù)的丟失。
FLAC不具有的特性:
數(shù)據(jù)縮水:FLAC是專門(mén)并且僅僅為無(wú)損壓縮而設(shè)計(jì)的,您可以選用許多其他優(yōu)秀的有損壓縮方式如Vorbis, MPC, 和MP3(LAME提供了一個(gè)優(yōu)秀的開(kāi)放源代碼的實(shí)現(xiàn))。
SDMI(例如cetera)兼容:FLAC不準(zhǔn)備支持任何復(fù)制保護(hù)方法,實(shí)際上這些手段最終都是在浪費(fèi)數(shù)據(jù)。(從另一個(gè)角度看,由于所有這些手段最終都被證明是無(wú)效的,所以也可以說(shuō)FLAC把這些無(wú)用數(shù)據(jù)壓縮到了零!)當(dāng)然我們不能阻止某些人利用專用的metablock進(jìn)行復(fù)制保護(hù),但是他們的保護(hù)只會(huì)在他們自己解碼產(chǎn)品上有效,其他解碼器會(huì)跳過(guò)這些專門(mén)的metablock的。
轉(zhuǎn)引自美麗元素論壇(www.b-factors.com)作者:Superguest
-----------------------------------------------------------------------------------------
以下文章是本人熬夜從FLAC官方網(wǎng)站翻譯下來(lái)的,希望能夠和大家一起對(duì)這種在國(guó)外已經(jīng)替代APE的優(yōu)秀格式有所了解。
FLAC代表 Free Lossless Audio Codec - 免費(fèi)的無(wú)損音頻壓縮 。
簡(jiǎn)而言之,F(xiàn)LAC與MP3相仿,但是是無(wú)損壓縮的,也就是說(shuō)音頻以FLAC方式壓縮不會(huì)丟失任何信息。這種壓縮與Zip的方式類似,但是FLAC將給你更大的壓縮比率,因?yàn)镕LAC是專門(mén)針對(duì)音頻的特點(diǎn)設(shè)計(jì)的壓縮方式,并且你可以使用播放器播放FLAC壓縮的文件,就象通常播放你的MP3文件一樣(現(xiàn)在已經(jīng)有許多汽車播放器和家用音響設(shè)備支持FLAC,在FLAC的網(wǎng)站上你可以找到這些設(shè)備廠家的連接)。
FLAC是免費(fèi)的并且支持大多數(shù)的操作系統(tǒng) ,包括Windows, "unix" (Linux, *BSD, Solaris, OS X, IRIX), BeOS, OS/2, 和Amiga。并且FLAC提供了在開(kāi)發(fā)工具autotools, MSVC, Watcom C, 和Project Builder上的build系統(tǒng)。
FLAC項(xiàng)目包括以下幾個(gè)方面:
數(shù)據(jù)流的格式
以庫(kù)的形式提供的參考編碼器和解碼器
flac, 一個(gè)以命令行方式工作的可以編解碼FLAC文件的程序(譯注:有些象Lame吧?)
metaflac, 以命令行方式工作的FLAC文件的metadata編輯器
不同音頻播放器的輸入插件
我們所說(shuō)的“FLAC是免費(fèi)的”不僅僅意味著你可以不花錢(qián)而得到它。更重要的是FLAC的文件格式是對(duì)公眾完全開(kāi)放的,你可以以任何目的使用它(FLAC 項(xiàng)目只保留維護(hù) FLAC 格式規(guī)格和確認(rèn)兼容特性的權(quán)利),F(xiàn)LAC的文件格式和編碼/解碼的實(shí)現(xiàn)方式都不受任何已知專利的限制。還有,所有的源代碼都在開(kāi)放源代碼的授權(quán)方式下可以得到。
FLAC是世界上第一個(gè)完全開(kāi)放和免費(fèi)的無(wú)損音頻壓縮格式 。
FLAC的特性:
無(wú)損失壓縮: 被編碼的音頻(PCM)數(shù)據(jù)沒(méi)有任何信息損失,解碼輸出的音頻與編碼器的輸入的每一個(gè)字節(jié)都是一樣的。每個(gè)數(shù)據(jù)幀都有一個(gè)當(dāng)前幀的 16-bit CRC 校驗(yàn)碼,用于監(jiān)測(cè)數(shù)據(jù)傳輸錯(cuò)誤。對(duì)整段音頻數(shù)據(jù),在文件頭中還保存有一個(gè)針對(duì)原始未壓縮音頻數(shù)據(jù)的MD5標(biāo)記,用于在解碼和測(cè)試時(shí)對(duì)數(shù)據(jù)進(jìn)行校驗(yàn)。
快速: FLAC更看重解碼的速度。解碼只需要整數(shù)運(yùn)算,并且相對(duì)于大多數(shù)編碼方式而言,對(duì)計(jì)算速度要求很低。在很普通的硬件上就可以輕松實(shí)現(xiàn)實(shí)時(shí)解碼。
硬件支持: 由于FLAC提供了免費(fèi)的解碼范例,而且解碼的復(fù)雜程度低,所以FLAC是目前唯一獲得硬件支持的無(wú)損壓縮編碼。
可以流化: FLAC的每個(gè)數(shù)據(jù)幀都包含了解碼所需的全部信息。解碼當(dāng)前幀無(wú)需參照它前面或后面的數(shù)據(jù)幀。FLAC使用了同步代碼和CRC(類似于MPEG等編碼格式),這樣解碼器在數(shù)據(jù)流中跳躍定位時(shí)可以有最小的時(shí)間延遲。
可以定位: FLAC支持快速采樣精確定位。這不僅對(duì)于播放有益,更使得FLAC文件便于編輯。
富于*性的metadata: 可以定義和實(shí)現(xiàn)新類型的metadata數(shù)據(jù)塊,而不會(huì)影響舊的數(shù)據(jù)流和解碼器的使用。目前已有的metadata類型包括tag,cue表,和定位表。已經(jīng)注冊(cè)的應(yīng)用程序可以定義自己專用的metadata類型(譯注:這一點(diǎn)與MIDI標(biāo)準(zhǔn)相似)。
非常適合于存檔應(yīng)用: FLAC是一個(gè)開(kāi)放的編碼格式,并且沒(méi)有任何數(shù)據(jù)的損失,你可以將它轉(zhuǎn)換為你需要的任何其他格式。除了每個(gè)數(shù)據(jù)幀的CRC和MD5標(biāo)記對(duì)數(shù)據(jù)完整性的保障,flac(譯注:FLAC項(xiàng)目提供的命令行方式編碼工具)還提供了一個(gè)verify(校驗(yàn))選項(xiàng),當(dāng)使用該選項(xiàng)進(jìn)行編碼的時(shí)候,編碼的同時(shí)就會(huì)立即對(duì)已編碼數(shù)據(jù)進(jìn)行解碼并與原始輸入數(shù)據(jù)進(jìn)行比較,一旦發(fā)現(xiàn)不同就會(huì)退出并且報(bào)警提示。(譯者:怎么樣,這樣壓縮出來(lái)的東西還有什么不放心的?)
便于對(duì)CD進(jìn)行備份: FLAC有一個(gè)“cue表”metadata數(shù)據(jù)塊用于保存CD的內(nèi)容列表和所有音軌的索引點(diǎn)。你可以將一張CD保存到一個(gè)單一文件,并導(dǎo)入CD的cue 表格,這樣一個(gè)FLAC文件就可以完整地記錄整張CD的全部信息。當(dāng)你的原來(lái)的CD損壞的時(shí)候,你就可以用這個(gè)文件恢復(fù)出與原來(lái)一模一樣的CD副本。
抗損傷: 由于FLAC的幀結(jié)構(gòu),使得一旦發(fā)生數(shù)據(jù)流的損壞,損失會(huì)被限制在受損傷的數(shù)據(jù)幀之內(nèi)。一般只是會(huì)丟失很短的一個(gè)片段。而很多其他無(wú)損音頻壓縮格式在遇到損傷的時(shí)候,一個(gè)損傷就會(huì)造成后面所有數(shù)據(jù)的丟失。
FLAC不具有的特性:
數(shù)據(jù)縮水:FLAC是專門(mén)并且僅僅為無(wú)損壓縮而設(shè)計(jì)的,您可以選用許多其他優(yōu)秀的有損壓縮方式如Vorbis, MPC, 和MP3(LAME提供了一個(gè)優(yōu)秀的開(kāi)放源代碼的實(shí)現(xiàn))。
SDMI(例如cetera)兼容:FLAC不準(zhǔn)備支持任何復(fù)制保護(hù)方法,實(shí)際上這些手段最終都是在浪費(fèi)數(shù)據(jù)。(從另一個(gè)角度看,由于所有這些手段最終都被證明是無(wú)效的,所以也可以說(shuō)FLAC把這些無(wú)用數(shù)據(jù)壓縮到了零!)當(dāng)然我們不能阻止某些人利用專用的metablock進(jìn)行復(fù)制保護(hù),但是他們的保護(hù)只會(huì)在他們自己解碼產(chǎn)品上有效,其他解碼器會(huì)跳過(guò)這些專門(mén)的metablock的。