Audiocompressie: kwaliteit versus omvang

0
1739
Er bestaan heel wat verschillende methodes voor audiocompressie en sommige heffen een zware tol op de geluidskwaliteit. Wat bestaat er allemaal en wat is het best voor muziek?

Comprimeren is verkleinen. Audio verkleinen doe je alleen als je wil dat het minder omvangrijk wordt, zodat je niet zoveel plaats nodig hebt om het op te slaan of zodat je het sneller kunt transporteren over een of andere elektronische verbinding.

Muziek wordt tegenwoordig vooral beluisterd op draagbare spelertjes, op mobieltjes, op computers of online. Alleen neemt audio in zijn natuurlijk formaat nogal veel digitale ruimte in beslag. Een audio-cd met ongeveer een uur muziek erop verbruikt zo’n 650 MB opslagruimte.

Voor honderd cd’s zou je dus al 65 GB nodig hebben, en voor duizend cd’s 650 GB. Dat is niet praktisch. Daarom hebben knappe koppen vlijtig gezocht naar methodes om de benodigde opslagruimte voor muziek in te krimpen. Het toverwoord heet audiocompressie en er bestaan twee soorten: verliesloze en met verlies werkende compressie.

 
Verliesloze compressie

Verliesloze audiocompressie werkt, zoals de naam het al zegt, zonder verlies aan kwaliteit. Er wordt dus absoluut niets weggegooid van het audiosignaal. Wat er opgeslagen wordt, is 100% gelijk aan het originele muzieksignaal. Hiermee bereik je de allerhoogste kwaliteit. Maar er is een limiet hoeveel je hiermee kunt inkrimpen. Veel meer dan de helft (compressieverhouding 1:2) zit er niet in.

Het inlezen van de data op een audio-cd in een computer levert zogenaamde WAV-bestanden op die PCM-data bevatten. PCM is de opslagmethode die een audiocd gebruikt om muziek te bewaren. Er bestaat een gratis verliesloze audiocompressor die FLAC heet (‘Free Lossless Audio Codec’ of ‘gratis verliesloze audiocompressie/decompressie’) en die dit nog verder kan inkrimpen tot hooguit de helft.

Je kunt het vergelijken met een archiveerprogramma zoals WinZIP of ZipInfo: hiermee kun je ook computerbestanden zonder verlies inkrimpen en weer in hun volle glorie herstellen. FLAC doet dit met muziek.

 
Compressie met verlies

Omdat men echter muziek nog veel minder plaats in beslag wilde doen nemen, werden er ook verschillende technieken ontwikkeld voor compressie mét verlies. Hierbij wordt er informatie weggegooid, zoals geluiden die te zacht zijn om nog gehoord te worden of waarvan de frequentie te laag of te hoog is om nog hoorbaar te zijn. Afhankelijk van de keuze van de grenzen waarbij iets weggegooid of behouden wordt, stijgt of daalt de geluidskwaliteit.

Maar verliescompressie gooit iets weg en dus kan het signaal nooit meer in zijn oorspronkelijke vorm hersteld worden. Het is dus geen goed idee om een systeem met verliescompressie te gebruiken voor back-updoeleinden. Maar het kan wel perfect dienen om muziek op te slaan als er weinig plaats is of om het over een trage elektronische verbinding te transporteren. De bekendste systemen voor verliescompressie zijn mp3, WMA en Ogg Vorbis.

 
Compressie en kwaliteit

Compressie zonder verlies noemt men ook wel compressie op basis van redundantie: we zoeken overtollige data op en zorgen ervoor dat die maar één keer voorkomt. Door bij te houden hoe vaak en waar die data in het originele signaal voorkwam, kunnen we dat oorspronkelijke signaal altijd in zijn volle glorie herstellen.

Compressie met verlies heet ook wel maskering: we bepalen de grenzen van wat hoorbaar of “zinvol” is en snijden alles weg wat buiten deze grenzen valt. Wat overblijft onderwerpen we dan nog eens aan een redundantiecompressie.

Bij deze compressietechnieken komt hogere wiskunde kijken, zoals Fouriertransformaties: hiermee komen we te weten hoe vaak bepaalde frequenties voorkomen in het muzieksignaal. Het resultaat van verliescompressie is flink wat kleiner, maar het signaal kan nooit meer in zijn oorspronkelijke volle glorie hersteld worden. Hoe zwaarder deze verliescompressie, hoe slechter de geluidskwaliteit wordt maar hoe kleiner de benodigde opslagruimte. Het is dus een kwestie van een evenwicht zoeken tussen gewenste kwaliteit en gewenste omvang.

 
Populairste compressiesystemen

Alles is begonnen met WAV/PCM, wat je krijgt als je binaire data van een audio-cd inleest in een computer. In feite is hierbij geen sprake van compressie, de data wordt 1:1 ingelezen.

 
MP3 en mp3PRO

Het meest populaire compressieformaat is ongetwijfeld mp3. Die afkorting staat voor “MPEG 1 – Audio layer 3” en het is eigenlijk een audiocodering die ontworpen werd om te gebruiken bij MPEG 1 videofilms. Het is succesvol geworden omdat het flink wat opslagruimte kon besparen en toch een aanvaardbare tot hoge geluidskwaliteit handhaafde.

De techniek is eigendom van het Fraunhofer Instituut, via een aantal patenten. Hoewel mp3 vrij gebruikt mag worden voor niet-commerciële doeleinden en open-source encoders en decoders gedoogd worden, hebben we daar geen garantie op en kan het Fraunhofer Instituut elk moment beslissen die toelatingen terug in te trekken en dan is het uit met de pret.

Overigens bestaat van mp3 ook een commerciële variant, mp3PRO, die een betere compressietechniek heeft om een hogere kwaliteit te paren aan een kleinere omvang.

 
Alternatieven voor mp3

Omdat niet iedereen het ziet zitten om afhankelijk te zijn van de grillen van één firma, werd er al vlug nagedacht over alternatieven.

 
WMA

Eén alternatief komt van Microsoft en heet WMA (Windows Media Audio). Dit is een gesloten formaat en uiteraard ook gepatenteerd en omdat het standaard met Windows Media Player wordt meegeleverd, is het samen met Windows vrij snel een de facto standaard geworden. Je kunt bij WMA de te gebruiken compressiegraad kiezen en ook verliesloos werken.

 
AIFF en ALE

Een ander commercieel alternatief komt van Apple en het gaat om de technieken die gebruikt worden bij Apple’s multimediaformaat QuickTime en de muzieksystemen van iTunes, iPhone en iPod. Apple biedt zowel een verliesloze compressie (ALE of Apple Lossless Encoder of ook wel ALAC voor Apple Lossless Audio Codec) als een verliescompressie (AIFF voor Audio Interchange File Format).

 
Open compressieformaten

Niet iedereen is echter opgezet met patenten en wil graag een open en volledig vrij uitwisselbaar formaat. Dat leidde tot FLAC en SHN (Shorten, een eveneens gratis alternatief voor FLAC) voor de verliesloze compressie en OGG (Ogg Vorbis) voor de met verlies werkende compressie.

Omdat Ogg Vorbis later ontwikkeld werd dan mp3, kon het gebruik maken van daar opgedane kennis en men slaagde er dus in een compressie te ontwikkelen waarop geen enkel patent rust en die voor dezelfde kwaliteit een kleinere omvang geeft dan mp3. De rare naam slaat op Ogg – het omhullende bestandsformaat, en Vorbis – de eigenlijke naam voor het audiostuk binnen dat Ogg-bestandsformaat. Er kan namelijk ook een videosegment in zitten.

 
Mediaspelers en -servers

De verschillende audioformaten zijn er natuurlijk in de eerste instantie gekomen omdat men muziek op een computer wilde opslaan en afspelen. Ondertussen blijken ook mensen als jij en ik ook steeds meer geneigd hele muziekcollecties aan te leggen op harde schijven. Zo hoef je geen schijfjes meer te wisselen en is alle muziek ineens beschikbaar, makkelijk doorzoekbaar en organiseerbaar.

Als je zelf een beetje thuis bent op een computer, kun je zelf aan de slag gaan om je muziekcollectie van cd in te lezen en te bewaren in een audioformaat. Er zijn nu verschillende cd- en dvd-spelers op de markt die zo’n gecomprimeerd audioformaat ook kunnen inlezen. Er bestaan ook multimediaspelers die via het netwerk de bestanden op je pc kunnen halen en afspelen via je muziekinstallatie. Daarnaast zijn er nu ook hele muziekservers te koop, die vaak een cd-lezer bevatten en zelf je cd’s kunnen inlezen en op hun harde schijf bewaren. Geen muren vol met cd-rekken meer nodig!

Niet te vroeg juichen, want al deze mediaspelers en -servers werken met verliescompressie. De meeste ondersteunen mp3 en WMA, en vaak is ondersteuning voor Ogg Vorbis ook aanwezig. Maar FLAC, SHN en andere formaten zijn hier geen favorieten.

 
Squeezebox Server

Met de open-source software Squeezebox Server (voorheen SlimServer) kun je zelf een multimediaserver bouwen die ook die andere open formaten ondersteunt (soms via een mechanisme dat transcoding heet en waarbij het ene formaat direct wordt geconverteerd naar het andere zonder dat je dat als gebruiker merkt).

Als een muziekserver zelf je cd’s inleest, heb je meestal maar een beperkte controle over de kwaliteit van de gecomprimeerde muziek. Als je de compressie zelf uitvoert met je computer en audio-encodingsoftware, kun je meestal wel heel precies kiezen wat je wel en niet wilt.

 
Lame (mp3)

Voor computers bestaan er ontzettend veel encoders (aanmakers) en decoders (afspelers) van audioformaten. Alleen voor mp3 bestaan er tientallen. Laten we het kort houden. Wij hebben dat zelf zitten uittesten en zonder enige twijfel roepen we het open-source programma Lame uit tot allerbeste mp3-encoder. De laatste versie van Lame kan trouwens ook encoderen naar Ogg Vorbis toe, maar helaas niet naar FLAC of SHN, maar daar kun je dan makkelijk ook gratis software voor vinden.

Voor WMA kun je natuurlijk gewoon de software van Microsoft gebruiken en voor AIFF/ALE die van Apple. Soms heb je geen keuze. iPod en iTunes werken immers alleen maar met de formaten van Apple, al kan een iPod ook mp3’s afspelen.

Als de compressie moet dienen voor een beperkte opslagruimte (zoals een mp3-spelertje), dan kun je natuurlijk kiezen voor een sterkere compressie met uiteraard mindere kwaliteit, maar met zo’n spelertje zal dat sowieso minder hoorbaar zijn.

 
Beste instellingen voor Lame (mp3)

Wij hebben ook uitgebreid zitten spelen met de parameters van Lame om uit te vissen hoe je een maximale compressie bereikt terwijl je nauwelijks verschil kunt horen met de originele cd. Als het je interesseert: je moet alleen de parameter ‘-V 1’ gebruiken met Lame, dat staat voor ‘Variabele bitsnelheid met kwaliteit 1′ en dat leverde ons een resultaat waarmee we volledig tevreden waren qua geluidskwaliteit en dat een gemiddelde compressie bereikt van 1:6. Dat wil zeggen dat je ongeveer 1 GB opslagruimte nodig hebt per 10 audio-cd’s. Onze hele cd-collectie omvat zo’n 2.500 cd’s en die hebben we op een muziekserver gezet met één harde schijf van 300 GB en er is nog ruimte over.

 
Streaming

Voor real-time compressie gelden heel andere spelregels. Een zware rekenintensieve compressie is dan uitgesloten, want dat kan immers niet in real-time. We werken dan met een audiobuffer. We spelen de ongecomprimeerde muziek af in een buffer en gaan dan die buffer eerst comprimeren vooraleer we die doorsturen in de audiostream.

De kunst is om dit in een tempo te kunnen doen dat hoog genoeg ligt zodat er geen haperingen optreden. Lame en andere (ook commerciële) encoders kunnen bijvoorbeeld gebruikt worden voor zo’n real-time compressie. Je kunt via hun parameters opgeven dat het om een real-time compressie gaat en dan werken ze in de kleinst mogelijke tijd. Veel compressie wordt dan uiteraard niet gehaald.

Soms is die real-time compressie een botte noodzaak, zoals bij het sturen van een te groot audiobestand over een trage of beperkte verbinding. Dan moet er in real-time gedecomprimeerd en gehercomprimeerd worden. Als alleen de decompressie in real-time moet gebeuren (zoals bij internet streams of radio-uitzendingen die van mp3- of ogg-servers gebruik maken), dan kan in principe eender welke multimediaspeler dienen.

 
Draadloze streaming

Bij muziekservers en -spelers die draadloos verbonden zijn hangt het van de kwaliteit van die draadloze verbinding en van de belasting van het netwerk af hoe groot de bestanden zijn die je kunt streamen. Uit onze testen blijkt dat je met een gewone IEEE 802.11g verbinding probleemloos doorvoersnelheden kunt halen tot 4,5 Gbit/s indien er één speler op één server is aangesloten. Dat is ruim voldoende voor audio in de hoogste kwaliteit.

Met die bandbreedte kun je bijna twaalf draadloze spelers op één server aansluiten en dan toch nog muziek in de hoogste mp3-kwaliteit afspelen zonder haperingen. Dan mag er natuurlijk verder niets anders gebeuren op dat netwerk.

In een normale thuissituatie kun je in elk geval probleemloos meer dan één audioclient hangen aan één audioserver. Wij voerden de testen overigens uit op een Logitech Squeezebox van de derde generatie, verbonden met een Slimserver 6.5 die draaide op een Windows XP pc met een Intel Pentium 2,4 GHz processor en 1 GB werkgeheugen. De Slimserver was via een Fast Ethernet-verbinding verbonden met een 802.11g Access Point van Linksys. Afhankelijk van de gebruikte apparatuur kunnen de resultaten bij jou natuurlijk verschillen, zowel naar beneden als naar boven toe.

Vorig artikelEen kwart terabyte op een stickje
Volgend artikelRouter die gelijktijdig op twee frequenties werkt