Målgrupp: Den här artikeln vänder sig till ljudfirmware-ingenjörer och inköpare som behöver specificera akustisk ekodämpning för en läspenna som stöder intercom-läge, röstsökning eller tvåvägsuttalsverifiering. Den utgår från att du redan vet vad en mikrofon och en högtalare gör och nu behöver en försvarbar AEC-specifikation.
En läspenna är en duplex-ljudenhet. Högtalaren spelar upp berättarröst på upp till 85 dB SPL vid 10 cm medan mikrofonen fångar barnets röst vid −20 dBFS. Utan ekodämpning plockar mikrofonen upp berättarrösten som ett starkt eko 30–50 dB över talsignalen, ASR-motorn hör bara ekot, och barnet hör sitt eget uttal spelas upp som om pennan hånar det. Akustisk ekodämpning (AEC) är algoritmen som subtraherar den kända högtalarsignalen från mikrofonfångsten så att mikrofonen bara hör barnets röst. Den här artikeln förklarar hur AEC implementeras över de 11 produktionsmodellerna (B1, B2, F8, K7, KF1, L5, P2, Q6, Q8, T2, Y6), hur det mäts och hur det specificeras i ett inköpsavtal så att du inte skeppar en penna som loopar på sig själv.
1. Varför AEC är annorlunda på en läspenna jämfört med ett headset
En läspenna är värsta fallet för AEC. Högtalaren och mikrofonen sitter 25–45 mm ifrån varandra i samma plasthölje, utan akustisk barriär emellan. Högtalaren spelar på upp till 85 dB SPL, mikrofonen ligger vid −20 dBFS under tal, och ekots banförstärkning är därför 35–50 dB. I ett headset är högtalaren förseglad mot hörselgången och mikrofonen sitter vid munnen; i en penna är båda exponerade för samma luft.
Tre saker gör AEC-problemet för läspennan svårare än VoIP-fallet i läroboken. För det första ändras ekovägen hela tiden när barnet flyttar pennan i handen — förstärkningen och frekvensgången för högtalar-till-mikrofon-vägen skiftar varje gång pennan flyttas om. För det andra är högtalaren liten och olinjär, vilket ger harmonisk distorsion som AEC:n måste lära sig att subtrahera. För det tredje växlar pennan mellan uppspelningsläge och full-duplex-läge på millisekunder när barnet talar under berättarrösten, och AEC:n måste konvergera inom det fönstret annars försvinner första stavelsen.
Resultatet är att AEC för läspennan måste vara adaptiv (följa en föränderlig ekoväg), olinjär (hantera högtalardistorsion) och snabbkonvergerande (låsa fast ekovägen på under 200 ms). Över de 11 produktionsmodellerna används tre AEC-implementationer: WebRTC AEC3 på L5/T2/Y6, Speex AEC på K7/KF1/Q6/Q8 och en förenklad adaptiv LMS på B1/B2/F8/P2.
2. Så fungerar AEC på blocknivå
AEC fungerar genom att modellera ekovägen som ett FIR-filter (finite impulse response) och sedan subtrahera filtrets utsignal från mikrofonsignalen. Filterkoefficienterna anpassas med NLMS-algoritmen (normalized least mean squares) eller varianter av den. Referenssignalen är ljudet som spelas genom högtalaren — känt för systemet eftersom det genererades inne i firmware.
De tre byggblocken är: (1) det linjära adaptiva filtret som modellerar vägen från högtalare till mikrofon; (2) den olinjära processorn som hanterar resterande eko efter den linjära subtraktionen (det är här högtalardistorsion och klippning städas bort); och (3) den doubletalk-detektorn som avgör om användaren talar samtidigt som högtalaren spelar, vilket kräver att AEC:n fryser anpassningen för att inte cancera användarens tal.
WebRTC AEC3 som används på L5/T2/Y6 implementerar alla tre blocken med toppmoderna algoritmer: ett PBFDAF-filter (partitioned-block frequency-domain adaptive filter), en Wiener-filterbaserad olinjär processor och en koherensbaserad doubletalk-detektor. Speex AEC på K7/KF1/Q6/Q8 använder ett NLMS-adaptivt filter i tidsdomänen med en enkel olinjär processor. Den förenklade LMS på B1/B2/F8/P2 använder ett 128-tap NLMS i tidsdomänen med en golvbruss-dämpare.
3. AEC-baslinje per modell
Tabellen nedan sammanfattar AEC-implementationen över de 11 produktionsmodellerna. ERLE är Echo Return Loss Enhancement, mätt i dB — högre är bättre. Doubletalk-konvergenstid är den tid AEC:n behöver för att låsa om filtret efter att användaren börjar tala under högtalaruppspelning. MIPS-kostnad mäts vid 16 kHz mono.
| Modell | AEC-algoritm | Filterlängd | ERLE (stationär) | ERLE (doubletalk) | Konvergenstid | MIPS | Firmware |
|---|---|---|---|---|---|---|---|
| B1 | Adaptiv LMS | 128 taps | 18 dB | 9 dB | 320 ms | 6 | 2.4.7 |
| B2 | Adaptiv LMS | 128 taps | 19 dB | 10 dB | 300 ms | 6 | 2.4.7 |
| F8 | Adaptiv LMS | 96 taps | 16 dB | 8 dB | 380 ms | 5 | 3.1.2 |
| K7 | Speex AEC | 256 taps | 24 dB | 14 dB | 220 ms | 14 | 1.9.5 |
| KF1 | Speex AEC | 256 taps | 24 dB | 14 dB | 220 ms | 14 | 1.9.5 |
| L5 | WebRTC AEC3 | 1024 taps | 34 dB | 22 dB | 90 ms | 42 | 4.2.0 |
| P2 | Adaptive LMS | 96 taps | 15 dB | 7 dB | 400 ms | 5 | 2.0.3 |
| Q6 | Speex AEC | 256 taps | 26 dB | 16 dB | 200 ms | 14 | 3.3.1 |
| Q8 | Speex AEC | 256 taps | 26 dB | 16 dB | 200 ms | 3.3.1 | |
| T2 | WebRTC AEC3 | 1024 taps | 36 dB | 24 dB | 80 ms | 46 | 2.6.4 |
| Y6 | WebRTC AEC3 | 1024 taps | 34 dB | 22 dB | 90 ms | 42 | 2.6.4 |
Siffrorna berättar inköpshistorien tydligt. Plattformarna L5, T2 och Y6 levererar 34–36 dB ERLE i steady state och 22–24 dB under doubletalk — det scenario som är viktigast vid uttalsverifiering, där barnet talar medan uppmaningen spelas. Plattformarna K7, KF1, Q6 och Q8 levererar 24–26 dB i steady state och 14–16 dB i doubletalk, vilket är acceptabelt men inte bra. Plattformarna B1, B2, F8 och P2 levererar 15–19 dB i steady state och 7–10 dB i doubletalk, vilket är på gränsen till acceptabelt för en play-and-listen-produkt men otillräckligt för seriös uttalsverifiering.
4. Doubletalk-problemet i uttalsverifiering
Det svåraste AEC-scenariot på en läspekpenna är doubletalk under uttalsverifiering. Flödet är: pennan spelar ett uppmaningsord, barnet talar tillbaka ordet exakt samtidigt, och pennan verifierar uttalet. Högtalaren spelar, mikrofonen fångar barnets röst, och ekosignalets förstärkning är som sämst eftersom pennan sitter nära barnets mun.
En bra AEC konvergerar inom de första 100 ms av uppmaningsuppspelningen så att barnets tal, som börjar 200–600 ms in, fångas rent. En dålig AEC håller fortfarande på att anpassa sig när barnet talar, och doubletalk-detektorn låser filtret — vilket innebär att barnets första stavelse i uttalet förorenas av resterande eko. ASR-motorn hör då "eko + tal" och ger ett resultat med låg säkerhet, vilket pennan rapporterar som "försök igen".
Över hela portföljen är ERLE-gapet i doubletalk mellan de LMS-baserade plattformarna (7–10 dB) och WebRTC AEC3-plattformarna (22–24 dB) den enskilt största differentieraren för ljudkvalitet. Ett uttalsverifieringsarbete på L5 lyckas 86 procent av gångerna i klassrumsljud; samma arbete på B2 lyckas 64 procent av gångerna.
5. AEC mot bullerreduktion: Varför du behöver båda
Ett vanligt misstag är att anta att bullerreduktion och ekoundertryckning är konkurrerande lösningar. Det är de inte — de är sekventiella steg i samma pipeline. Ordningen är fast: AEC först, sedan bullerreduktion. AEC tar bort den kända högtalarsignalen från mikrofonupptagningen och lämnar en blandning av barnets tal, omgivningsbuller och eventuellt resterande eko. Bullerreduktionen tar sedan bort omgivningsbullret och lämnar i första hand barnets tal.
Om du vänder på ordningen tar bullerreduktionen bort omgivningsbullret från en mikrofonsignal som fortfarande innehåller det höga högtalarekot, vilket innebär att bullerreduktionen behandlar ekot som talsignal och barnets röst som buller. ASR-motorn hör då bara eko. Läspekspennans firmware på varje plattform tvingar fram denna ordning.
På L5, T2, Y6 är hela pipelinen: mikrofonupptagning → WebRTC AEC3 → RNNoise → ASR-motor → resultat. På K7, KF1, Q6, Q8 är den: mikrofonupptagning → Speex AEC → Wiener MMSE → ASR-motor. På B1, B2, F8, P2 är den: mikrofonupptagning → adaptiv LMS → spektralsubtraktion → ASR-motor. Varje plattform implementerar lämpligt algoritmpar för sin MIPS-budget.
6. Akustisk ekobana och maskinvaruförutsättningar
AEC är dels ett algoritmproblem och dels ett maskinvaruproblem. Algoritmen kan subtrahera upp till cirka 30 dB eko i bästa fall; de återstående 5–15 dB måste komma från fysisk isolering mellan högtalare och mikrofon. Tre maskinvaruförutsättningar gäller.
För det första måste högtalaren och mikrofonen vara på motsatta ändar av pennan med minst 25 mm plast mellan sig. L5, T2, Y6 placerar högtalaren i toppänden och mikrofonen i spetsänden, åtskilda av 60 mm plast; B1, B2 placerar dem på samma ände med en tätad packning mellan dem. För det andra måste högtalarporten ha en back-volymtätning som förhindrar att bakåtstrålning läcker in i mikrofonen. Q6, Q8, T2, Y6 använder en tätad back-volymdesign; F8 och P2 använder en ventilerad design som kostar cirka 4 dB i ekobanans förstärkning. För det tredje får höljet inte ha några luftläckagevägar mellan högtalare och mikrofon — ett gap på 0,5 mm kan kosta 6 dB i ekobanans förstärkning, vilket ingen AEC-algoritm kan återhämta helt.
För en OEM som bygger en ny penna är dessa tre punkter de fysiska designbegränsningar som AEC-algoritmen inte kan fixa i efterhand. Läspekspennans portfölj tvingar fram alla tre i verktygen och verifierar med ett ERLE-vs-position-test vid inkommande QA.
7. AEC och intercom-läge
Intercom-läget på K7, KF1, Q6, Q8, L5, T2 och Y6 är den mest krävande AEC-arbetsbelastningen. Föräldern talar genom föräldraappen, ljudet strömmas över BLE till pennan, pennan spelar det genom högtalaren vid 75–80 dB SPL, mikrofonen fångar förälderns röst plus högtalarekot, och pennan strömmar det rengjorda mikrofonljudet tillbaka till föräldraappen. Tur- och returtid är 80–200 ms.
WebRTC AEC3 på L5/T2/Y6 var specifikt utformad för detta scenario och levererar 30+ dB ERLE under kontinuerligt tvåvägssamtal. Speex AEC på K7/KF1/Q6/Q8 levererar 22–25 dB i samma scenario, vilket är acceptabelt men ger tillfälligt hörbart eko på föräldraappens sida. Den förenklade LMS på B1/B2/F8/P2 levererar 14–17 dB, vilket är varför intercom-läge inte officiellt stöds på dessa plattformar — föräldern skulle höra sin egen röst eka tillbaka med 200–400 ms latens.
8. AEC-felmoder i fält
Tre AEC-felmoder uppträder i fälttelemetri. För det första, filterdivergens när högtalarsignalen är korrelerad med mikrofonsignalen (t.ex. när en TV spelar nära pennan). Det adaptiva filtret låser sig på TV-ljudet som om det vore högtalaren och undertrycker fel signal. Doubletalk-detektorn på L5/T2/Y6 förhindrar detta; på de äldre plattformarna kan divergensen kvarstå i 1–3 sekunder. För det andra, icke-linjärt eko från högtalarklippning vid maximal volym. AEC:s linjära filter kan inte modellera den harmoniska distorsionen, och den icke-linjära processorn måste undertrycka residualen. På K7/KF1/Q6/Q8 är residualen av icke-linjärt eko vid 85 dB cirka 6 dB; på L5/T2/Y6 är den cirka 2 dB. För det tredje, initial konvergenslatens när pennan först börjar spela ljud efter en längre tystnad. De första 200–800 ms av uppspelningen innehåller resterande eko som ännu inte har undertryckts. L5/T2/Y6 startar AEC:s förhandsanpassning under tystnaden före uppspelning; de äldre plattformarna startar kallt.
För inköpare som skriver en RFQ översätts dessa felmoder till specifikationsrader. För det första, "AEC ska uppnå ERLE ≥ 30 dB i steady-state single-talk, ≥ 20 dB i kontinuerlig doubletalk." För det andra, "AEC ska uppnå konvergens under 100 ms efter påbörjad högtalaruppspelning." För det tredje, "AEC:ns doubletalk-detektor ska förhindra filterdivergens under korskorrelation upp till 0,7 mellan referens- och mikrofonsignaler."
9. AEC, AGC och DRC: De tre ljudstegen
AEC är det första ljudsteget, men det arbetar inte ensamt. Den fullständiga mikrofonsidans ljudkedja i en läspekpenna är AEC → AGC → DRC → ASR. AGC (Automatic Gain Control) normaliserar talnivån efter att AEC har rengjort signalen; DRC (Dynamic Range Compression) minskar det dynamiska omfånget så att tysta fonem är hörbara och höga fonem inte klipper. Dessa tre steg samverkar och ordningen är avgörande.
Ett vanligt fel i tidig läspekspenna-firmware var att placera AGC före AEC, vilket gjorde att AEC:ns referenssignal inte matchade den faktiska högtalarsignalen (eftersom AGC redan hade justerat uppspelningsnivån). Resultatet var 6–10 dB sämre ERLE. Den nuvarande firmwaron på alla 11 plattformar placerar AEC först, AGC sedan, DRC sist — och låser denna ordning i ljudpipelined-manifestet.
För en importör som köper ett tredjeparts ODM-bygge är ljudpipelinens ordning det första som ska verifieras. Om ODM inte kan producera ett tydligt blockdiagram som visar AEC → AGC → DRC → ASR med motsvarande algoritmnamn, betrakta bygget som overifierad ljudfirmware.
10. Hur man specificerar AEC i ett inköpsavtal
RFQ-språket bör namnge algoritmklassen, ERLE-målet och hanteringen av doubletalk: "Akustisk ekoundertryckning ska uppnå ERLE ≥ 30 dB i steady-state single-talk, ≥ 20 dB i kontinuerlig doubletalk, med doubletalk-konvergens under 100 ms. Algoritmklass: frekvensdomän-adaptivt filter med icke-linjär efterprocessor för premium-plattformar, tidsdomän-NLMS för äldre plattformar. AEC:ns doubletalk-detektor ska förhindra filterdivergens under korskorrelation upp till 0,7 mellan referens- och mikrofonsignaler."
Tre detaljer är viktiga. För det första, testsignalen måste specificeras — vi använder ett 30-sekunders fonetiskt balanserat engelskt talprov som fjärrreferens, spelat vid 75 dB SPL på 10 cm, med närmikrofonen som fångar ett barns tal vid −20 dBFS. För det andra, testmiljön måste specificeras — ett tyst kontor vid 30 dBA omgivning; en mer bullrig miljö förstorar resterande eko och förändrar siffrorna. För det tredje, tidpunkten för doubletalk-start måste specificeras — fjärränden startar vid t=0, näränden startar vid t=500 ms, och AEC bedöms på sin ERLE från t=500 ms och framåt.
Köpartips: Be ODM om en ERLE-vs-tid-graf från deras AEC-QA. Grafen bör visa ERLE som stiger från 0 dB vid t=0 till ≥ 30 dB vid t=300 ms i single-talk, och stabil ≥ 20 dB från t=500 ms och framåt i doubletalk. Om grafen saknar doubletalk-regionen har AEC inte testats i det läge som är viktigt.
10b. AEC ERLE under doubletalk-stress
Det mest krävande AEC-testet är doubletalk under uttalsverifiering, där högtalaren spelar uppmaningen och barnet talar tillbaka ordet exakt samtidigt. Diagrammet nedan visar doubletalk ERLE för varje modell under vårt standardiserade 500 ms-onset-test.
11. Beslutsmatris och rekommendationer
För ett helt nytt läspekspennaprogram som startar 2026 är rekommendationen WebRTC AEC3 på L5, T2, Y6 för alla program som stödjer intercom-läge, röstsökning eller tvåvägs-uttalsverifiering; och Speex AEC på K7, KF1, Q6, Q8 för program som endast behöver single-talk-ekoundertryckning för play-and-listen. Den förenklade LMS på B1, B2, F8, P2 är acceptabel endast för play-and-listen och bör inte specificeras för program som kräver röstupptagning under högtalaruppspelning.
För en inköpare som skriver AEC-specifikationen lyder raden som avslutar avtalet: "Akustisk ekoundertryckning ska uppnå ERLE ≥ 30 dB steady-state, ≥ 20 dB doubletalk, konvergens ≤ 100 ms; doubletalk-detektorn ska förhindra divergens under korskorrelation ≤ 0,7; AEC ska föregå AGC och DRC i ljudpipelinjen; ERLE-vs-tid-graf från QA ska levereras med första artikel."
Relaterad läsning
- Läspekspenna Codec-komprimering MP3 vs AAC vs Opus
- Läspekspenna Bullerreduktion och RNNoise
- Läspekspenna Strålformning mikrofonarray
- Läspekspenna AGC och Automatic Gain Control
- Läspekspenna DRC och Dynamic Range Compression
- Läspekspenna MEMS-mikrofon och bullerreduktion
- OEM Läspekspenna Tjänster
- Begär en offert på läspekpenna