En bra ekoutsläckare måste klara att snabbt identifiera nya ekon över en lång fördröjningsperiod. Dessutom ska helst inte bakgrundsljud som inte är ekon klippas bort. De gamla algoritmerna för fjärrnät används fortfarande, men många letar efter alternativ.
Lös standard
Telestandarden G.168 ställer krav på en maximal konvergens på 50 ms. Men den standarden har ganska löst hållna krav, och de flesta tillverkare mäter sig hellre mot teleoperatörernas interna kravspecifikationer och testmetoder.
- Vi skickade ut en pressrelease när AT&T meddelade att vår ekoutsläckare hade klarat deras interna krav på ljudkvalitet. Det är mer värt än att man följer standarderna, anser Goutam Mukherjee på Zarlink.
Den andra viktiga egenskapen är hur stort tidsfönster kretsen kan släcka. På den tiden det enda ekot som behövde dämpas ut kom från två-till-fyrtrådsomkopplaren behövde man ofta bara leta efter ekot inom ett relativt smalt fönster.
- Många ekoutsläckare klarar av att leta efter ekot med upp till en halv sekunds fördröjning, men de klarar bara av att släcka ut ekot inom ett smalare fönster på några tiotal millisekunder. Men i dag har vi inte ett eko utan många ekon från olika källor med varierande fördröjning. Därför processar vi hela fönstret till en halv sekund, även om det kräver mycket minne och processkraft, berättar David Powell på Tellabs.
Double-talk svårast
Det tredje problemet kallas double-talk. Det uppstår när de som talar i telefon pratar i munnen på varandra. I sådana situationer är det extra svårt för ekoutsläckaren att identifiera ekot och skilja det från till exempel någon som talar i bakgrunden i andra änden.
Om alla var artiga och talade i tur och ordning vore det den enklaste sak i världen att konstruera en ekoutsläckare. Det räcker med en ickelinjär processor som stänger av ljudet när personen i andra änden inte talar. Sådana processorer finns också i stort sett i alla ekoutsläckare, helt enkelt för att den behövs när algoritmen för ekoutsläckning inte hänger med.
- Jag känner inte till någon ekoutsläckare som klarar sig helt utan en ickelinjär processor. Vi har en i vår konstruktion, men den behöver inte göra särskilt mycket. I en riktigt bra ekoutsläckare ska den ickelinjära processorn vara nästan redundant, anser David Powell.
Comfort noise
En bieffekt som kan skada ljudkvaliteten på samtalet allvarligt om den inte kompenseras är om personen du talar med befinner sig i en bullrig miljö. Om det finns ett filter som klipper när personen i andra änden inte talar försvinner då även bakgrundsbruset, vilket upplevs som mycket störande. Det är inte bara ekoutsläckningen som åstadkommer denna hackighet. Vid datakomprimering, till exempel i mobilnät eller IP-telefoni, skickar man bara över signalen när någon talar, inte när det bara är bakgrundsbrus.
De flesta ekoutsläckare i dag försöker därför kompensera för denna hackighet genom att fylla ut tystnaden med genererat brus, comfort noise. I det enklaste fallet vitt brus med samma volym, men det blir allt vanligare att man samplar bruset i realtid för att generera syntetiskt brus som så mycket som möjligt ska likna det äkta bakgrundsbruset.
Flera algoritmer
Den dominerande algoritm som används i ekoutsläckningskretsar sedan långt innan mobiltiden heter NMLS (Next Mean Least Squared). Den visade sig en gång i tiden vara den bästa kompromissen mellan kvalitet på utsläckningen och krav på minne och beräkningskraft. Det är bland annat den Ericsson baserar sin ekoutsläckning på. I dag anser dock många att NMLS är otillräcklig.
- Vi har studerat olika algoritmer och funnit att NMLS degraderar över tiden. Den ger bra ekoutsläckning i början, men blir sämre under samtalets gång, säger Goutam Mukherjee.
När algoritmen inte hänger med kan ekoutsläckaren till och med förvärra kvaliteten på förbindelsen. Zarlink använder fortfarande en modifierad form av NMLS, men håller på att gå över till en ny, hemlig algoritm för sin kommande generation.
Tellabs använder sig av mer än en algoritm i sina ekoutsläckare.
- För att få snabb konvergens kan man använda en snabb men instabil algoritm, sedan växlar man över till en stabilare men långsammare algoritm, berättar David Powell.
Rå matematik
Octasic använder inte NMLS över huvud taget, utan har gått över till den mer exakta LS (least squared). Doug Morrissey förklarar:
- NMLS approximerar, medan LS i teorin kan ge ett exakt resultat. LS kräver i gengäld betydligt mer processorkraft och minne. Men processorkraft är inte den flaskhals det var när ekoutsläckningen uppfanns, särskilt inte om man har en processor som är specialdesignad för ekoutsläckning. Det man genom att trimma NLMS har gjort till en fin men inexakt konst löser vi i stället med rå matematik.
Elias Nordling