FLAC

(Ümber suunatud leheküljelt Flac)

FLAC (Free Lossless Audio Codec) on tasuta audiokoodek (kooder/dekooder või tihendaja/hõrendaja), mis võimaldab digitaalsete helifailide kokkusurumist ilma andmekaota. FLAC-algoritmiga tihendatud helifail on oma algsest mahust 50–60% väiksem.

Free Lossless Audio Codec
Arendaja Sihtasutus Xiph.Org, Josh Coalson, Erik de Castro Lopo
Esmaväljalase 20. juuli 2001
Viimane väljalase 1.4.3 / 23.06.2023 Muuda Vikiandmetes
OS multi
Suunitlus audiokodek
Litsents

käsureautiliidid: GNU GPL

teek: BSD
Veebisait xiph.org/flac
Free Lossless Audio Codec
Failinime laiend .flac
Interneti meediatüüp audio/flac
Failivorming fLaC
Tüüp audio
Standard(id) xiph.org/flac/format.html
Avatud vorming jah

FLAC on avatud vormingus ilma kasutustasu litsentsita vaba tarkvara. FLAC toetab metaandmete sildistamist, albumi kaanepilti ja kiiret otsingut.

Vaatamata sellele, et FLAC ei saa salvestada ujukomaandmeid ning taasesitus kaasaskantavates heliseadmetes ja spetsiaalsetes helisüsteemides on kadudega vormingutega (MP3 või tihendamata PCM) võrreldes piiratud, on FLAC siiski toetatud rohkemate seadmete poolt kui konkureerivad kadudeta tihendatud vormingud (näiteks WavPack).

Ajalugu muuda

Arendust alustas Josh Coalson 2000. aastal.[1] Beetastaadiumis FLAC versioon 0.5 avaldati 15. jaanuaril 2001, versioon 1.0 sama aasta 20. juulil.[1]

29. jaanuaril 2003 teatasid sihtastutus Xiph.org ja projekt FLAC ühinemisest Xiph.org bänneri alla. Xiph.org on seotud ka teiste tasuta tihendamisvormingutega, nagu Vorbis, Theora ja Speex.[1][2]

17. septembril 2007 esitleti versiooni 1.2.1.

Ülesehitus muuda

FLAC-projekti ülesehitus:[3]

  • Vormingute voog;
  • Voo jaoks lihtne mahuti vorming;
  • libFLAC, koodrite ja dekoodrite teek, metaandmete liides;
  • libFLAC++, libFLAC-i ümber objekti pakendaja;
  • flac, libFLAC-il põhinev käsurea programm FLAC-i voogude kodeerimiseks ja dekodeerimiseks;
  • metaflac, käsureal metaandmete redaktori FLAC-failide ja ReplayGaini rakendamiseks;
  • Sisendpluginad muusikaesitajate jaoks (Winamp, XMMS, foobar2000, musikCube jne);
  • Xiph.orgiga ühenduses Ogg mahuti vorming (ehk Ogg flac).

Voo vormingu spetsifikatsiooni tohib täiendada igaüks ilma eelneva loata, kuid Xiph.org säilitab õiguse määrata FLAC-i spetsifikatsiooni ja vastavuse kinnitamise. FLAC-vorming ega rakendatud kodeerimis- ja dekodeerimismeetodid ei kuulu ühegi patendi alla. libFLAC ja libFLAC++ lähtekoodid on saadaval BSD litsentsi all, ning flac'i, metaflac'i ja pluginate andmeallikad on saadaval GNU GPL litsentsi all.

Disain muuda

FLAC-kodeeritud helifailid on algsest mahust tavaliselt 50–60% väiksemad.[4]

FLAC toetab ainult püsikomadiskreete ja on võimeline töötlema mis tahes PCM bitist lahutust 4–32 bitini diskreedi kohta, mis tahes diskreetimissagedusel 1 – 655,350 Hz 1 Hz sammuga ning mis tahes kanaleid vahemikus 1–8.[5][6] Kanaleid on võimalik rühmitada stereo ja 5.1 stereoheli puhul, mille puhul tekib tihedam tulemus. Voogesituse puhul kasutab FLAC rikutud kaadrite tuvastamiseks CRC kontrollsummasid, lisaks hoitakse kogu MD5 räsiväärtus töötlemata PCM audio andmetest STREAMINFO metaandmete päises. FLAC lubab Rice'i parameetrit vahemikus 0-st 16-ni. FLAC toetab ReplayGaini.

FLAC kasutab lineaarset prognoosi helidiskreetide teisendamiseks väikesteks mittekorreleeruvate arvude jadadeks, mis salvestatakse Golombi-Rice'i kodeerimismeetodi abil. Märgistamiseks kasutab FLAC Vorbisega sama süsteemi.[5]

Võrdlus teiste vormingutega muuda

FLAC on disainitud tõhusaks heliandmete pakkimiseks, erinevalt ülejäänud üldotstarbelistest pakkimisalgoritmidest nagu DEFLATE, mida kasutatakse ZIP- ja GZIP-vormingutes. Kui ZIP võib tihendada helifaili kuni 20%, siis FLAC võimaldab enamiku helifailide puhul 30–50%.[7]

FLAC-i eelis teiste kadudeta vormingute ees on võime samaaegselt faili dekodeerida ja esitada.

Kuna FLAC on kadudeta vorming, sobib see originaalmeedia omaniku arhiivi, kust on võimalik taastada kaotatud, kahjustunud või kulunud CD või muu meedia. FLAC-i koopia tagab pärast taastamist võrdväärse kvaliteedi, sest see säilitab andmed algupärasel kujul. Täpse koopia saavutamine kadudega vormingust (näiteks MP3) on võimatu.

Rakendamine muuda

FLAC on kompileeruv paljudel platvormidel: Microsoft Windows, Mac OS X, Linux, Unix, Palm OS, Symbian OS ja Rockbox.[8] Esialgu puudub libFLAC-i tugi mitmetuumalistel süsteemidel.

Androidi versioon 3.1 ja hilisemad versioonid toetavad FLAC-vormingut.[9]

Viited muuda

  1. 1,0 1,1 1,2 News, flac.sourceforge.net, [veebimaterjal], [vaadatud:01.12.2012], http://flac.sourceforge.net/news.html
  2. January 29, 2003: FLAC Joins Xiph.Org, xiph.org, [veebimaterjal], [vaadatud: 1.12.2012], http://www.xiph.org/press/2003/flac/
  3. FLAC, en.wikipedia.org, [veebimaterjal], [vaadatud 1.12.2012], http://en.wikipedia.org/wiki/FLAC#cite_note-8
  4. Comparsion, flac.sourceforge.net, [veebimaterjal], [vaadatud: 1.12.2012], http://flac.sourceforge.net/comparison.html
  5. 5,0 5,1 FAQ, flac.sourceforge.net, [veebimaterjal], [vaadatud: 9.12.2012], http://flac.sourceforge.net/faq.html#general__samples
  6. Format, flac.sourceforge.net, [veebimaterjal], [vaadatud 9.12.2012], http://flac.sourceforge.net/format.html#frame_header
  7. Zip (file format), en.wikipedia.org, [veebimaterjal], [vaadatud: 9.12.2012], http://en.wikipedia.org/wiki/Zip_%28file_format%29
  8. using flac, flac.sourceforge.net, [veebimaterjal], [vaadatud: 9.12.2012], http://flac.sourceforge.net/documentation_tasks.html
  9. Android Supported Media Formats, developer.android.com, [veebimaterjal], [vaadatud: 10.12.2012], http://developer.android.com/guide/appendix/media-formats.html