Je begrijpt het niet helemaal. FLAC is weliswaar lossless, maar óók gecomprimeerd. Vergelijk het met een .png of een .rar. Je verliest geen data, je sampelt het alleen anders dan bijvoorbeeld audio met constante bitrates. Daardoor zullen audiobestanden per genre verschillende bestandsgroottes genereren.
FLAC gebruikt
floating point samples. Heel simpel uitgelegd wil dat zeggen dat als je data zou omzetten naar getallen, je door de drijvende komma veel meer waarden kunt genereren met dezelfde hoeveelheid cijfers in een getal. Dit i.t.t. fixed point. Wat overigens
niet inhoudt dat het een beter zou zijn dan het ander.
Veel oude jazz cd's die ik heb omgezet (veelal trio's met pianisten), zijn gecomprimeerd tot zelfs 50% á 60% van het origineel. In dit soort muziek zit erg veel dynamiek, veel stiltes, hard, zacht... HIer wordt ook winst gehaald door gebruik van
run-length encoding, wat inhoudt dat er gezocht wordt naar patronen, zodat blokken data hergebruikt kunnen worden. Vergelijkbaar met xvid. Stiltes bijvoorbeeld zijn ook patronen, en kosten bij FLAC zo goed als geen data, hooguit een soort pointer naar een stilteblok toe. Op die Wikipagina staat het heel duidelijk uitgelegd, als je een beeldlijn hebt zoals dit (elke letter is een kleurwaarde per pixel):
WWWWWWWWWWWWBWWWWWWWWWWWWBBBWWWWWWWWWWWWWWWWWWWWWWWWBWWWWWWWWWWWWWW
en je laat daar RLE op los, dan krijg je dit:
12W1B12W3B24W1B14W
RLE kun je toepassen op allerlei data. Je kunt je voorstellen dat in bijvoorbeeld minimal techno (gesteld dat het geen vinylrips zijn: die genereren door vervorming, wow en flutter, ruis en stof veel zwaardere FLACS dan cd's) dat retegoed werkt. Een en al herhaling, die zelfs in het digitale origineel al een exacte herhaling van data was. Vette compressie dus.
Als ik naar mijn speed-, trashmetal, punk noise etc.. schijf kijk (als je dit soort muziek ript, zie je alleen maar één dikke vette streep van een golfvorm, dynamiek ontbreekt hier totaal, behalve bij de intro's, bridges, en outro's), is de FLAC compressie echt een stuk lager, gemiddeld tot 70% 80% van het origineel.
Zoals het artikel ook al aangeeft is die js flac-decoder wel erg cool om audio-apps te bouwen of dj-spul. Het is niet onwaarschijnlijk dat
Audiotool (de allerbeste audio-app ooit gebouwd op het internet, in Flash gebouwd) bijvoorbeeld dit zou gaan gebruiken in hun html5 versie.
Zoals ik ook een groot voorstander ben van de "retina"-revolutie qua beeldschermen, vind ik dat de tijd ook rijp is voor betere audio. Ik vind het nogal arrogant van je om voor anderen te bepalen wat ze wel of niet nodig hebben. Juist door die compressie is FLAC ook geschikt voor streaming 5.1, en dat met full HD. Maar je hoeft het natuurlijk niet voor alles te gebruiken, dat zou onzin zijn. Data-explosie is zwaar overdreven, en bovendien mogen we toch hopen dat we over tien jaar minstens 100 keer zoveel data verstoken toch? Dit is nog echt stenen tijdperk hoor, waar we nu zitten.