Feildeteksjon og feilkorreksjon

Lydformater du kjenner fra lydfiler, som MP3 og AAC, er ikke er robuste mot overføringsfeil. Radiostøy kan gi store forstyrrelser i lyden hvis forbindelsen er dårlig.

For å handtere feilene har man to alternativer: Å legge på hver overførte blokk en sjekksum for å detektere feil, som en avansert form for ‘tverrsum’: Hvis ikke sjekksummen stemmer, ber radio-appen om å få sendt blokka på nytt. Hvis mye må sendes flere ganger, kan belastningen på datakvoten gå merkbart opp under dårlige mottakingsforhold.

Eller: Senderen kan levere med tilstrekkelig ekstrainformasjon til at mottakeren selv kan korrigere feilen: I en tabell med tall kan senderen vedlegge tverrsummer for hver rad og hver kolonne. Hvis mottaker ser at tverrsummen i rad 17 ikke stemmer, og heller ikke tverrsummen i kolonne 23, vet han hvilket tall som har blitt ødelagt i overføringen (tallet på 17 rad, i kolonne 23). Siden digitale verdier er eller av, vet mottaker at hvis en bitverdi er feil, betyr det at en av-bit skulle vært , en -bit skulle vært av, og han kan rette det opp. (Merk: Dette er en sterk forenkling av hvordan man gjør det i dag, men det illustrerer grunnprinsippet.)

Siden tverrsummer må overføres både for hver rad og for hver kolonne, belaster feilkorreksjon i utgangspunktet datakvoten hardere. Men siden feilen kan rettes opp av mottakeren, behøver han ikke be om å få hele blokka sendt på nytt. Under dårlige forhold lønner det seg å sende med feilkorreksjon slik at mottakeren kan rette opp selv, uten å få blokka sendt på nytt. (Er det umulig å sende på nytt, f.eks. i DAB og annen kringkasting / multikasting, er feilkorreksjon eneste mulighet!) Under gode forhold er det mest økonomisk å sende enklere, mindre plasskrevende feildeteksjon, og la mottaker be om å få blokka på nytt de sjeldne gangene det oppstår en feil – forutsatt at forbindelsen er toveis.

Det er senderen, radiokanalen, som bestemmer om den vil bruke enkel feildeteksjon,  eller mer plasskrevende feilkorreksjon. Du har ingen styring med dette selv, men hvis du etter å ha vært ute i villmarka en periode og blir forbauset over hvor hardt datakvoten din har blitt belastet, kan det skyldes at du har lyttet til radiosendinger der blokkene må sendes både to og tre ganger før de kommer vellykket gjennom.

MP2, MP3, ‘Bobling’ og AAC+

Både MP2 og MP3 er produkter av Eureka-147-prosjektet som utviklet DAB: MP2 ble designet som et robust studio-format (bl.a.) for bruk over eteren, der man kan forvente mange overføringsfeil pga. støy. MP2 kan handtere dette: Selv om noen få bits i en MP2-strøm blir ødelagt, kommer dekoderen raskt på sporet igjen. MP3 ble derimot utformet som et sluttbruker-format, der man ikke får feil i overføring fra disk / flash-minne til MP3-dekoderen. Når man slipper å ta hensyn til mulige feil, kan lyden komprimeres bedre.

Før DAB+ kom på markedet, rundt 2004-5, ivret sterke krefter for at DAB skulle skifte ut MP2 med den ‘mer effektive’ MP3. De som ønsket dette var ikke kjent med MP3s langt større følsomhet for feil. For å svare på kravet, ble det både gjort teoretiske analyser og konkrete lyttetester der MP2 og MP3 ble sammenlignet under ulike former for radiostøy. Konklusjonen var entydig, både i teoretiske analyser og lyttetester: For å gi like uforstyrret lyd, må det legges på så mye ekstra feilkorreksjons for MP3 at det spiser opp hele den besparelsen bedre komprimering gav, pluss en god del til. (Dette overrasket naturligvis ikke utviklerne av MP2, de visste hva de gjorde da de laget MP2, men for mange uten denne faglige bakgrunnen var det høyst uventet.)

Det ble gjort store framskritt på starten av 2000-tallet i mer plasseffektiv feilkorreksjon. Dessuten ga den nyutviklede AAC+ koderen (1.versjon: 1999) god lydkvalitet på langt lavere bitrater enn både MP2 og MP3. Selv om også AAC+ er designet for feilfrie data er den i seg selv noe mindre følsom for feil enn MP3. Ved å kombinere den aller nyeste og mest efektive feilkoreksjonen med den aller beste AAC+-kodingen endte man opp med det som ble hetende DAB+.

DAB+ bruker all feilkorreksjonen fra DAB, men legger på et ‘lag’ i tillegg. Her har designerne tatt godt i: Opprinnelig metode + tilleggskorreksjon + ‘følsom’ AAC+ er ikke bare like god som, men merkbart bedre enn opprinnelig metode + ‘robust’ MP2.

Enn så lenge har du mulighet for å teste dette ut i praksis: Vi har fortsatt kanaler med både MP2 og AAC+ både i riksblokka og regionblokka. (Fra 2017 legges MP2-kanaler i regionblokka over til DAB+; det er ikke gitt noen tilsvarende erklæring for reklamekanalene i riksblokka, men det kan skje når som helst!). Finner du et sted med så dårlige mottakingsforhold at selv MP2s robusthet er god nok, kan du høre den karakteristiske ‘boblelyden’ når MP2-dekoderen kjemper for å ‘komme på sporet’ i datastrømmen:

Skifter du over til en AAC+-kanal i samme blokk (riks- eller regionblokk) vil du høre lyd med langt mindre støy. Beveger du deg inn i enda dårligere motakingsforhold, blir det til slutt så mange feil mottakeren ikke er i stand til å forstå den administrative informasjonen som f.eks. angir hvor i blokka MP2-kanalen og AAC+-kanalen ligger. Begge kanalene forsvinner samtidig, men rett før det skjer er MP2-lyden så forstyrret av bobling at det knapt er mulig å få noe ut av den, mens AAC+-lyden er ‘rimelig god’. (Med litt erfaring hører du at ikke all AAC+-feilkorreksjonen er 100% vellykket, men det er ikke ‘plagsomt’.) For praktiske formål kan du derfor høre på AAC+-kanaler under dårligere mottakingsforhold enn MP2-kanaler.

En følge av dette er at du med AAC+, liksom med mobil-samtaler, ikke får noe som helst forvarsel om at lyden kan forsvinne hvert øyeblikk. MP2-boblingen var som sus/støy i FM-radioen, som kom gradvis når forholdene ble forverret: Ble det for mye støy, søkte du opp et sted med bedre forhold, eller du fikset på antenna. Med AAC+ (og mobil) får du intet forvarsel, intet hint om at du kanskje burde se å gjøre noe!