Tema: Programvare; sjanger: Meninger
Skrevet av Andreas Nordal den 22. november 2009 kl 01:00:48; Kommentarer: 4

Ryktene skal ha det til at det i praksis er vanskelig å høre kvalitetsforringelsen som oppstår når man lagrer lyd i mp3-formatet. De som mener dette har tydeligvis ikke tatt i betraktning mp3-formatets akilleshæl. Hvis du tester dette selv, tror jeg du vil være enig med meg i at man skal være 100% døv for å ikke høre forskjellen. Jeg forutsetter da at mp3-dekoderen ikke prøver å maskere problemet ved å mikse overgangene sammen.
lame -b 128 -f 8.wav -o 8.mp3 lame -b 128 -f 9.wav -o 9.mp3 oggenc -q -1 8.wav -o 8.ogg oggenc -q -1 9.wav -o 9.ogg
Bildene er skjermskudd fra lydredigeringsprogrammet Audacity, og viser skjøten mellom 2 sanger i forskjellige lydformater. All lyd i denne testen er i stereo, det vil si at hvert par av det som kanskje likner på separate lydspor, egentlig henger sammen som ett stereospor, der øverste spor styrer venstre høyttaler. At de henger sammen er synlig i det høye bildet til høyre (som er snudd på høykant for å få plass). Stereosporet som her var øverst er originalen, mens mp3 var under (nå: venstre).
Som bildet nedenfor viser, passer lydbølgene fra slutten av den første sangen sammen med lydbølgene til den neste. Jeg kan forsikre at det også hørtes slik ut, dvs. overgangen var umerkelig. Det gjelder både wav- og ogg-filene. Nå lurer du kanskje på hvorfor jeg omtaler wav som flac, men wav-filene er bare ekstrakter av flac-filene som jeg rippa. Siden det er kvaliteten vi snakker om, er disse formatene ekvivalente (Wav er ukomprimert og FLAC er en tapsfri kodek). Siden alt stammer fra flac-filene, kan jeg konkludere med at overganger mellom sanger blir perfekt bevart når man ripper en CD til FLAC.

Den store overraskelsen var Ogg Vorbis' overlegenhet over mp3. Mens mp3-filene ble kodet med 128 kb/s, noe som er ganske typisk, ble ogg-filene kodet med laveste kvalitetsnivå (-1), noe som resulterte i henholdsvis 54,4 og 56,2 kb/s. Ingen ville finne på å kode mp3 med så lav bitrate (bortsett fra youtube tenker jeg), og jeg skal innrømme at kvaliteten ble hørbart dårligere, men like fullt: Ikke en plancktid glipp i overgangen mellom sangene med Ogg Vorbis. Med tanke på at både Vorbis og mp3 bygger på diskret kosinustransformasjon, ble jeg litt overrasket, selv om alle vet at Ogg Vorbis er bedre enn mp3. Uansett er det viktigste for meg å unngå glipp i overgangen mellom sangene. Det er, i motsetning til all annen snikksnakk om lydkvalitet, så påfallende at man skvetter til selv om man ikke hører godt etter eller er i støyende omgivelser.
Resultatet er at hele lydfila blir lenger enn den skulle vært, og at det er umulig å gjette presist hvor den egentlig skulle ha starta og slutta. Noen dekodere er bedre til å gjette enn andre; det som høres bra ut på musikkspilleprogrammet ditt, er kanskje noe annet for CD-brenneprogrammet for eksempel. Heldigvis for meg, gjettet Audacitys dekoder dårlig nok til at jeg fikk demonstrert fenomenet med disse bildene.
OPPDATERING 13. desember 2009 05:20
Fenomenet har (tydeligvis) ikke noe med bitrate å gjøre: Jeg ville undersøke hvordan mp3 med grisehøy bitrate takler overganger mellom sanger. Bitraten ble dessverre maksimalt 320 kb/s med lame (selv om jeg ba om 1000 kb/s). Den største filstørrelsen lame ville gi meg, fikk jeg med "lame --preset insane". Resultatet ble at med 320 kb/s mp3, fikk pre- og post-ekkoene stort sett så lave amplituder at de ikke syns på bildet (lavere enn et piksel), men like fordømt: Glippen i overgangen har akkurat like lang varighet.
Trykk på bildene nedenfor for å kikke nærmere på saken:
FLAC er tapsfritt, så ripper du en CD til FLAC, kan du trygt knekke den etterpå. FLAC tar vare på metadata, i motsetning til wav. Hvis tapsfri kompresjon ikke er tingen for deg, husk at alt (unntatt mp2) er bedre enn mp3. Som eksempel har jeg vist at Ogg Vorbis fungerer fortreffelig i overgangen mellom to sanger, mens mp3 er totalt udugelig på dette. Hvis du skulle finne på å brenne en lyd-CD, sørg for å bruke "disc at once"-modus (DAO), og ikke "track at once" (TAO). Det siste fører til 2 sekunders pause mellom hvert spor.