TALKODNING - från tal till syntes

Relevanta dokument
Analys/syntes-kodning

I. Talkodning. Kodning av tal Kodning av musik MPEG-4 Audio toolbox. Talkodning Historik. Talgenerering. Talsignalen - vokaler

Kodning av tal Kodning av musik MPEG-4 Audio toolbox

Kapitel 2 o 3 Information och bitar Att skicka signaler på en länk. Jens A Andersson

Digital signalbehandling Digitalt Ljud

Kapitel 2 o 3 Information och bitar Att skicka signaler på en länk. Jens A Andersson

Kapitel 2 o 3 Information och bitar Att skicka signaler på en länk. Jens A Andersson

Kapitel 2 o 3 Information och bitar Att skicka signaler på en länk. Att sända information mellan datorer. Information och binärdata

Kapitel 2 o 3. Att skicka signaler på en länk. (Maria Kihl)

Föreläsning 12. Modellbaserad ljudkodning. Modellbaserad bildkodning. Utblickar Mediakommunikation över Internet Multi-view video

Signaler och system, IT3

4/27/12. Fönstring i MDCT. Föreläsning 10: Ljudkodning ( Audio Coding ) 1. Inledning PCM, standardmetoder, MDCT, psykoakustik, ljudtryck

EXEMPEL 1: ARTVARIATION FÖRELÄSNING 1. EEG frekvensanalys EXEMPEL 2: EEG

Föreläsning 10: Ljudkodning ( Audio Coding )

INNEHÅLL. Per Wallander. GSM-boken. Per Wallander

Föreläsning: Digitalt Ljud. signalbehandling. Elektronik - digital signalbehandling. Signal och spektrum. PC-ljud. Ton från telefonen.

SMS047 Mediakodning. Introduktion. Frank Sjöberg. Introduktion. Introduktion

2 Vad händer när man ringer? 2 Vad händer när man ringer?

Spektrala Transformer

Kapitel 3 o 4. Tillförlitlig dataöverföring. (Maria Kihl)

Kapitel 3 o 4 Att skicka signaler på en länk Tillförlitlig dataöverföring. Att göra. Att sända information mellan datorer

Optimal Signalbehandling Labbhandledning

Föreläsning 7: Bild- och videokodning

Kihl & Andersson: , 3.1-2, (ej CDM) Stallings: 3.1-4, 5.1, 5.2, 5.3, 8.1, 8.2

Spektrala Transformer

Psykoakustik. Ljudtrycksnivå. Hörselns omfång. Hörnivå(loudness) Människans hörsel är ganska väl studerad och det finns bra modeller för den.

Ulrik Söderström 20 Jan Signaler & Signalanalys

Ulrik Söderström 19 Jan Signalanalys

Föreläsning 1: Bild- och ljudkodning

Vocoding och frekvensskiftningsexperiment inom det audiologiska forskningsfältet Av Morgan Karlsson

Elektronik. Viktor Öwall, Digital ASIC Group, Dept. of Electroscience, Lund University, Sweden-

Grundläggande ljud- och musikteori

Digital kommunikation. Maria Kihl

Resttentamen i Signaler och System Måndagen den 11.januari 2010, kl 14-19

Teori... SME118 - Mätteknik & Signalbehandling SME118. Johan Carlson 2. Teori... Dagens meny

Exempelsamling Grundläggande systemmodeller. Klas Nordberg Computer Vision Laboratory Department of Electrical Engineering Linköping University

Tillämpning av komplext kommunikationssystem i MATLAB

Lab 4: Digital transmission Redigerad av Niclas Wadströmer. Mål. Uppstart. Genomförande. TSEI67 Telekommunikation

Föreläsning 10 Mål Förse en översikt av mobilnätens utveckling Förstå komponenterna i ett mobilt nät. Mobila nätverk (1/5) Mobila nätverk (2/5)

Digital kommunikation. Maria Kihl

Lösningar ETS052 Datorkommunikation,

Övningar modul 1 - Dataöverföring & fysisk infrastruktur

Sammanfattning TSBB16

Dator- och telekommunikation (ETS601) Höstterminen 2016

Nätverksteknik A - Introduktion till Fysiska lagret

Hemtenta 2 i Telekommunikation

Dator- och telekommunikation. Dator- och telekommunikation. Radionät. Fasta nät. Kapacitet. Tjänster. Radionät Protokoll Kapacitet Tjänster

Elektronik Dataomvandlare

Digital Signalbehandling i Audio/Video

Signalbehandling Röstigenkänning

En generell prediktiv kodare utnyttjar signalens utseende N steg tillbaka i tiden för kodningen, dvs vi kodar efter den betingade fördelningen

Sampling. Analog - digital. Kvantifiering. Samplingsprocess. Analog vs digital teknik. Kvantifiering. Analog oändlig digital diskret (1or 0or)

Linjär prediktion. Prediktiv kodning. Linjär prediktion. Prediktiv kodare och avkodare

Dator- och telekommunikation (EITG01) Höstterminen 2018

Mobilteknik. Begränsningar och möjligheter

Bildbehandling i frekvensdomänen

DT1130 Spektrala transformer Tentamen

Kommunikationssystem grundkurs, 2G1501 Övningar modul 1 Dataöverföring & fysisk infrastruktur 1 Dataöverföring

Kapitel 13: (Maria Kihl)

Föreläsning 2. Transmissionslänk. Repetition: Internetprotokollens skikt. Mål

Tillförlitlig dataöverföring Egenskaper hos en länk Accessmetoder. Jens A Andersson

Faltningsreverb i realtidsimplementering

KÄLLA-FILTER. Repetition. Talapparaten i källa-filter perspektivet. Repetition (ff) Ljudkällor i talapparaten (ff) Ljudkällor i talapparaten

Optimal Signalbehandling Datorövning 1 och 2

Exempelsamling Grundläggande systemmodeller. Klas Nordberg Computer Vision Laboratory Department of Electrical Engineering Linköping University

Kapitel 13: Telefoninäten. Spanning Tree. Jämförelse med OSI-modellen. Jens A Andersson (Maria Kihl)

AD-DA-omvandlare. Mätteknik. Ville Jalkanen. 1

Elektronik. Dataomvandlare

DT1130 Spektrala transformer Tentamen

Analoga och Digitala Signaler. Analogt och Digitalt. Analogt. Digitalt. Analogt få komponenter låg effektförbrukning

DIGITAL KOMMUNIKATION

Mätningar med avancerade metoder

A/D D/A omvandling. Lars Wallman. Lunds Universitet / LTH / Institutionen för Mätteknik och Industriell Elektroteknik

Spektrala Transformer

Frekvensplanet och Bode-diagram. Frekvensanalys

2F1120 Spektrala transformer för Media Tentamen

Läs anvisningarna noga, och följ dem!

Språkljudens akustik. Akustik, akustiska elementa och talanalys

Lab 1 Analog modulation

Grundläggande signalbehandling

Föreläsning 7. Varför Standardisera? Standarder

AD-/DA-omvandlare. Digitala signaler, Sampling och Sample-Hold

Flerdimensionell signalbehandling SMS022

Laplace, Fourier och resten varför alla dessa transformer?

Elektronik Dataomvandlare

Fouriermetoder MVE295 - bonusuppgifter

Digital signalbehandling fk Adaptiv filtrering

DT1130 Spektrala transformer Tentamen

Fysiska lagret. Kanal. Problem är att kanalen har vissa begränsningar: Kanalen är analog Kanalen är bandbreddsbegränsad och är oftast störd (av brus)

Signaler & Signalanalys

Föreläsning 4. Multiplexering (1/2) Multiplexering (2/2) Multiplexering Närnät

DIGITALA FILTER. Tillämpad Fysik Och Elektronik 1. Frekvensfunktioner FREKVENSSVAR FÖR ETT TIDSDISKRET SYSTEM. x(n)= Asin(Ωn)

Tentamen i Signaler och kommunikation, ETT080

Adaptiva Filter. Johan Haarala Signaler och System

Ämnesområde Hörselvetenskap A Kurs Signalteori, 7,5 hp Kurskod: HÖ1007 Tentamenstillfälle

IP-telefoni för nybörjare

Grundläggande A/D- och D/A-omvandling. 1 Inledning. 2 Digital/analog(D/A)-omvandling

Analogt och Digital. Viktor Öwall. Elektronik

Trådlös kommunikation En introduktion av Open Systems Engineering AB

Lab skapades Ove (Orator Verbis Electris) av Gunnar Fant, KTH.

Transkript:

TALKODNING - från tal till syntes Björn Engström bjoeng-9@student.luth.se Tommy Höglund tomhog-9@student.luth.se Jan Niemi jannie-9@student.luth.se Avdelningen för Signalbehandling Luleå Tekniska Universitet 2002-05-13

Sammanfattning Detta dokument beskriver talkodningens principer på ett populärvetenskapligt sätt utan djupare matematisk analys. Inledningsvis ges en kortare beskrivning över talapparatens uppbyggnad som ligger till grund för talkodning vid lägre bithastigheter. En historisk tillbakablick över tidigare talkodare ges, både avseende funktion och standarder, då dessa används som referenser till nutidens talkodare. Tyngdpunkten har dock lags på talkodare av typen CELP (Codebook Excited Linear Prediction) då denna är den mest dominerade i dags dato. Vidare ges en kort beskrivning över standardiseringsverksamheten inom området. Avslutningsvis ges en blick mot framtidens implementerade talkodare. 2

Innehållsförteckning INLEDNING... 4 TALET... 4 KVANTISERING... 5 TALKODNING... 6 VÅGFORMSKODNING I TIDSDOMÄNEN... 6 VÅGFORMSKODNING I FREKVENSDOMÄNEN... 7 MODELLBASERAD KODNING... 7 VOCODER... 8 HYBRIDKODARE... 9 TALKODNING ENLIGT CELP... 10 TALSYNTES... 10 ANALYS-GENOM-SYNTES... 11 CELP... 11 Linjära Prediktorn (LP)...12 Stokastisk kodbok...12 Pitch-prediktorn...13 MMSE...14 Viktningsfiltret...14 SAMMANFATTNING CELP... 15 STANDARDER... 15 ALLMÄNT... 15 STANDARDISERINGSORGAN... 16 ITU International Telecommunication Union...16 IEEE - Institute of Electrical and Electronics Engineers, Incorporation...16 ANSI American National Standards Institute...16 TIA Telecommunications Industry Association...16 EIA Electrionic Industries Alliance...16 ETSI - European Telecommunications Standards Institute...17 VÅGFORMSKODARE... 17 VOCODARE... 17 HYBRIDKODARE... 18 FRAMTIDEN... 19 REFERENSER... 21 FIGURFÖRTECKNING... 22 3

Inledning Kodning betyder att uttrycka ett värde i databitar eller att byta digital representation, från ett format till ett annat. Bytet har naturligtvis ett syfte och man skiljer normalt mellan två olika slags kodning, källkodning och kanalkodning. Källkodning som namnet visar, sker vid informationskällan och avser att minska dataströmmens bithastighet för tidsberoende informationstyper, eller datamängdens storlek för tidsoberoende källor. Källkodning och komprimering är därför synonymer i det här sammanhanget. Kanalkodningen sker före överföringen för att skydda informationen mot uppkomsten av fel. I vissa användningsområden till exempel vanlig telefoni så är inte bithastigheten det främsta kravet, utan att man har bra talkvalité. I GSM-systemet vill man hålla nere bithastigheten på grund av ett begränsat frekvensspektrum och dessutom vill man ha bra talkvalité. I det vanliga telefonnätet använder man sig av vågformskodning det vill säga att man samplar och kvantiserar. Detta ger en bithastighet på 64 kbit/s. I GSM-systemet använder man sig av en så kallad hybridkodare som är en kombination av två olika kodningsmetoder, vågformskodning och modellbaserad kodning. Anledningen är att få ner bithastigheten samt ha bra talkvalité. Först utförs en analog/digital omvandling för att få talet på digital form och sedan skickas informationen vidare till en talkodare. A/Domvandlaren är en enkel form av linjär vågformskodning. Bithastigheten efter A/Domvandlaren är 104 kbit/s. Talkodaren i GSM använder sig av modellbaserad kodning, där man fokuserar på hur människan bär sig åt när man talar. Genom att skapa en matematisk modell hur man pratar, kan man med mycket färre bitar beskriva talet. Signalen man får ut från modellen används till att styra en dator som kan tala. Med denna metod av modellbaserad kodning får man ner bithastigheten från 104 kbit/s till 13 kbit/s. Man har alltså komprimerat ner talet till 1/8 av det ursprungliga. Minskningen har ett pris. Den talande datorn i GSM-telefonen kan bara låta som en enda person, inte flera som talar samtidigt. Den är också mycket dålig på att återge musik. Att ringa från GSM telefonen och hamna i en telefonkö där man spelar musik medan man väntar (music on hold) kan bli nästan outhärdligt. Talet När det gäller tal så skiljer man huvudsakligen mellan tonande och icke-tonande ljud. De tonande ljuden genereras genom att en luftström pressas genom struphuvudet, vilket gör att de då spända stämbanden börjar vibrera varvid en pulserande luftström bildas. Denna luftström formas sedan spektralt i svalg, munhåla och näshålor vilka tillsammans bildar talapparaten (se figur 1). Även tänder och läppar deltar vid genereringen av ljudet. Olika talljud erhålls genom att variera talapparatens form. Vid generering av icke-tonande ljud är stämbanden slappa och luftströmmen blir därför icke-periodisk. Talsignalen är en icke-stationär signal som varierar mellan periodiska intervall (tonande ljud) och icke-periodiska intervall (icketonande ljud). 4

Näshålan Munhålan Gomsegel Tunga Stämbanden Luftstrupe Figur 1 Talapparatens olika delar. Tonande ljud är en periodisk signal vars grundton, kallas pitchfrekvens och normalt ligger i intervallet 100 Hz för en mansröst till 400 Hz för ljus kvinnoröst. Talapparaten (svalg, munhåla och näshålor) har ett antal resonansfrekvenser som är kopplade till de olika hålrum som bygger upp talapparaten. Dessa resonansfrekvenser kallas formanter. Genom att variera talapparatens form ändras formanterna och därmed också det tonande ljudets karaktär. Trots att det finns många sätt hur tal låter, så rör sig talapparaten och alla dess delar på ett relativt långsamt sätt. Det gör att talet kan sägas vara ganska stationärt under en kort tid (10 20 ms). Talet visar också på en hög andel av förutsägelse (prediktion), under dessa korta perioder. Detta utnyttjar man i talkodning för att minska bithastigheten med bibehållen talkvalité. Kvantisering Kvantisering är konvertering av en diskret tidssignal som har kontinuerligt amplitudvärde till en diskret tidssignal med diskreta amplitudvärden. Antalet bits som används bestämmer hur många nivåer det finns att välja mellan. Förhållandet mellan antalet bits, b, och antalet nivåer, L, är L = 2 b. Information kommer att tappas vid kvantiseringen eftersom det riktiga värdet ej går att återskapa efter kvantiseringen. Felet som introduceras kallas kvantiserings brus. Det finns flera olika tekniker att kvantisera en signal bland annat Linjär-, Logaritmisk - och Vektorkvantisering. Linjär kvantisering innebär att avståndet mellan varje kvantiseringsteg är lika långa. Med logaritmisk kvantisering är stegen olika långa, små steg vid låga amplituder och stora steg vid höga amplituder. Vektorkvantisering innebär att en grupp med N värden (en invektor) avrundas till det mest passande av en uppsättning representativa grupper (utvektorer). Den representativa gruppen är vanligtvis samlad i en tabell som kallas codebook. 5

Talkodning När det gäller talkodning så finns det tre sätt att koda tal, Vågform-, Modellbaserad- och Hybridkodning som är en blandning mellan de två andra kodningstyperna. Vid vågformskodning har man höga bithastigheter, vilket ger bra talkvalitet. Modellbaserad kodning har mycket låg bithastighet, men som då ger tal som låter syntetiskt (metalliskt). Hybridkodare använder sig av båda teknikerna vilket ger bra talkvalité med låg bithastighet. I GSM-telefonerna används en hybridkodare som baserar sig på en CELP algoritm, eftersom där finns kravet på god talkvalité och låg bithastighet. Figur 2 jämför olika prestanda mellan kodarna. Figur 2 Prestanda för olika kodare. Vågformskodning i tidsdomänen Vågformskodning innebär att utan någon som helst vetskap om hur signalen som ska bli kodad, har genererats, försöker att skapa en vågform som är så nära originalet som möjligt. Detta gör att man måste sampla mycket för att få en felfri signal, vilket ger en hög bithastighet. Den enklaste form av vågformskodning är Pulse Code Modulation (PCM) som är sampling och kvantisering av insignalen. Smalbandigt tal (vanlig telefon) har en bandbredd på ca 3.4 khz, samplar man den med 8 khz och använder en linjär kvantisering med 12 bits/sampel så får man en signal som har bra talkvalité och med en bithastighet på 96 kbit/s. Denna bithastighet kan man reducera genom att använda sig av en logaritmisk kvantisering (µ-law, A-law). Med sådan kvantisering behöver man bara 8 bits/sampel (det vill säga 64 kbit/s) för att få ett tal som är svår att skilja från originalet. Eftersom vågformen i vanligt tal har stark korrelation, sett under kort tid, så använder man sig av en teknik där man förutsäger värdet på nästa sampel. Om prediktionen är bra så kommer felet mellan det predikterade värdet och det verkliga talsamplet, att ha ett lägre värde än vad talsamplet har. Detta ger då möjligt att kvantisera felsignalen med färre bitar än vad talsignalen hade. Detta är principen för Differential Pulse Code Modulation (DPCM), man 6

kvantiserar skillnaden mellan originalet och den predikterade signalen. Ett sätt att ytterligare förbättra kodningen är att låta kvantiseringsnivåerna anpassa sig till signalamplituderna. Man får då vad som kallas för Adaptive Differential PulseCode Modulation (ADPCM). Med denna metod får man samma talkvalité med 32 kbit/s som man fick med 64 kbit/s PCM. Det finns även standarder av ADPCM som använder sig av 16, 24, 40 kbit/s. Vågformskodning har fördelen av låg komplexitet och fördröjning med hög kvalité på talet. Men den kräver hög bithastighet, så användningen är främst där man vill ha bra kvalitet, utan att man behöver bekymra sig av den höga bithastigheten. Ett exempel är det vanliga telefonnätet. Om man vill överföra tal, men med en mycket lägre bithastighet så är modellbaserad kodning ett mycket bättre val. Vågformskodning i frekvensdomänen Denna typ av kodning bygger på att signalen delas upp i olika delband (frekvensband). För varje band kodas sedan antingen tidssignalen eller dess spektrala karaktäristik (parameterform). I SubBand Coding (SBC) representeras signalen av ett antal delband som sedan tidskodas var för sig med någon tidigare beskriven metod till exempel ADPCM. Då kan fler bitar användas för de viktigaste delbanden än för de mindre viktiga. En annan metod är Adaptive Transform Coding (ATC) där den samplade signalen delas in i ett antal tidsintervall och där signalen i varje intervall sedan transformeras till frekvensdomänen och sänds över i parameterform. Olika transformer kan användas, till exempel Discrete Cosine Transform (DCT). Modellbaserad kodning Med vågformskodning kan man ej överföra signalen, med acceptabel kvalité, om man sänker bithastigheten till en låg nivå. Det beror på att man inte tar hänsyn till egenskaperna som finns i signalen. I modellbaserad kodning tar man hänsyn till egenskaperna hos signalen, och dess uppkomst och därigenom kan man reducera bithastigheten drastiskt. Vanligt tal har redundans vilket gör det möjligt att reducera bithastigheten. Modellbaserad kodning bygger alltså på att istället för att spara varje sampel av talsignalen, skapas en matematisk modell hur talapparaten fungerar med några få vitala delar. Talet kodas sedan genom att man samplar på statusen av den matematiska modellen, istället för själva talsignalen och därigenom minskas antalet bitar som behövs för att beskriva talet. När det gäller talkodning heter en sådan modell Vocoder. Om man gör så får man en kodare som fungerar bra på tal men är mycket dåligt på andra signaler till exempel musik. Eftersom talapparaten inte kan ändra sig hur snabbt som helst, så finns det en övre gräns för hur snabbt man kan prata. Det ger med vilken frekvens, omkring 10-20 ms periodtid, man behöver för att sampla modellen. Man delar upp talet i 20 ms långa perioder (frames). Under denna tid så anses talet vara förhållandevis stationärt. Tidsvarierande parametrar beräknas och hålls konstanta under denna period. Figur 3 visar en principskiss på en vocoder. 7

Inkommande talsignal Tonande/ Icke-Tonande Spektral analys Pulståg generator Brus generator Filter Syntetiskt tal Figur 3 Principskiss av en vocoder. Modellbaserad kodning har visat sig vara en bra metod att beskriva talet för bithastigheter som ligger under 16 kbit/s. Vocoder Vocodertekniken innebär att luftströmmen från lungorna, talapparatens excitering, simuleras med vitt brus, ett väsande som innehåller alla frekvenser inom talområdet och vitt eftersom alla frekvenser är lika starka. Det räcker med en databit för att beskriva luftströmmen från lungorna. Antingen så pressar vi upp luft under 20 ms eller så är vi tysta. Därefter så kommer luften till stämbanden. Om stämbanden vibrerar, öppnas och stängs (se figur 4), så att det skapar luftpulser då räcker några få databitar för att beskriva tiden mellan luftpulserna. Figur 4 Tonade ljud i tids- och frekvensdomänen. Luftströmmen eller luftpulserna passerar därefter det filter som utgörs av munhålan. Detta filter har flera toppar, resonanser, som påverkar den sönderhackade luftströmmens spektrum. 8

I modellen representeras munhålan av ett filter som använder sig av det vita bruset, för tonlösa ljud perioder eller av ett pulståg som har samma frekvens som luftpulserna vid perioder med tonande ljud. Filtret använder sig också av en frekvensanalys av talet. Denna information om filterspecifikationerna, om det är ton- eller tonlösa ljud, och luftpulsernas periodtid behöver skickas med till mottagaren. Varje 10-20 ms uppdateras informationen till mottagaren. Det här gör att man med mycket få bitar ( 2.4 kbit/s) kan beskriva talet, men med den nackdelen att talet låter syntetiskt. I militära sammanhang där naturligt tal inte är lika viktigt, som låg bithastighet, så använder man sig av vocoder eftersom det ger möjlighet till en kraftig kryptering av talet, till en rimlig bithastighet. Eftersom man i det vanliga livet vill känna igen vem det är man talar med, så räcker inte med att simulera bruset från lungorna med vitt brus, för att man ska kunna identifiera talaren. Rosslandet från lungorna är individuellt (bålresonanser) för varje person. Det behövs en bättre beskrivning av luftströmmen från lungorna, exciteringen. Om man kombinerar vocodertekniken med vågformstekniken så får man ett tal som låter naturligt och man hör vem som talar. Excitationssignalen är den brusliknande signal (se figur 5) som återstår efter man har filtrerat bort pulserna som stämbanden har skapat och frekvenser som saknar betydelse för återskapandet av talet. Denna signal går inte att simulera med vitt brus, trots sin likhet, om man ska känna igen vem som talar. Figur 5 Excitationssignalen Hybridkodare En hybridkodare är en blandning mellan vågformskodning och modellbaserad kodning. I GSM så är kodaren en blandning av vocoder och vågformskodare. Den försöker kombinera den höga talkvalitén som vågformskodaren har, med den låga bithastigheten som vocodaren har. Hybridkodaren använder sig av vocodarens filter men väljer excitationssignalen på ett mer noggrant sätt, för att få ett tal som låter mer likt den som talar. Den modell av hybridkodare som idag används i GSM-telefonerna är en variant av CELP (Codebook Excited Linear Prediction ) kodare kallad ACELP (Algebraic CELP). En CELP kodare fungerar så att man analyserar excitationen från talet mycket mer noggrant än vad man gör i en vocoder, även filtret är mer noggrant utformat. När man har funnit excitationssignalen så söker man i en kodbok med färdiga pulssignaler för att hitta en som mest liknar excitationssignalen. Det är koden för pulssignalen man skickar till mottagaren, som har samma kodbok och då kan återskapa talet. På detta sätt får man en kodningsvinst. 9

Linear Prediction syftar på filtertekniken, att excitationssignalen matas genom filtret för att bilda talsignalen. ACELP använder sig av ett antal pulser för att simulera excitationssignalen. Man plockar ut de väsentligaste pulserna ur excitationssignalen och anger dess position. Med vissa restriktioner på pulspositionerna så får man ner antalet möjliga pulssignaler. Man uppnår kodningsvinst genom att inordna alla möjliga pulssignaler i en kodbok och adressera kodboken. Den ursprungliga GSM-FR talkodaren utnyttjade 3.6 kbit/s för vocoderdelen och 9.4 kbit/s för kodning av exciteringen, tillsammans 13 kbit/s. Den har nu ersatts av GSM-EFR (Enhanched Full Rate) eftersom FR-kodaren har för gles representation mellan stämbandsfrekvenserna. Vilket gör att talet kan låta onaturligt, speciellt för kvinnliga röster. GSM-EFR utnyttjar nu 4.2 kbit/s för mer detaljerad beskrivning av vocoderdelen och 8.8 kbit/s för kodning av exciteringen, som med nya kodningsmetoder klarar en ännu bättre beskrivning av exciteringen. Talkodning enligt CELP CELP är den mest implementerade hybridkodaren i dagens talkodare. Den höga kvalitén på det syntetiska talet beror bland annat på att man använder sig av metoden Analys-genom- Syntes samt kodböcker.( [3, 6, 7]). Talsyntes Talsyntesen utnyttjar modeller av dels stämbanden och dels munhålan för att så bra som möjligt återskapa originaltalet. Man använder sig av vitt brus som excitationssignal för de filter som beskriver karaktäristiken hos den person som pratar i telefonen. Figur 6 visar talsyntesen som block. Vitt brus Long-term prediktor Short-term prediktor Syntetiskt tal Figur 6 Talsyntes. Den modell som beskriver stämbandets karaktäristik kallas Long-term prediktor eller Pitchprediktor då den oftast följer pitchen i rösten det vill säga långtidskaraktäristiken i talet. Pitchfrekvensen varierar från 100 Hz till 400 Hz beroende på om det är en man eller kvinna som pratar. Pitchen kommer från tonade ljud, a e och så vidare, och motsvaras av högre spektraltoppar i talets PSD. Den andra modellen beskriver munhålan och kallas Short-term prediktor även kallad Linjär Prediktor (LP). Short-term syftar på att den beskriver korttidskorrelationen i talet. 10

Analys-genom-Syntes Parametrar som skickas Orginaltal Talgenerator Syntetiskt tal - Σ Syntes fel Perceptuellt viktningsfilter Beräkning av felet Viktat fel Figur 7 Analys-genom-Syntes. Analys-genom-Syntes -metoden går ut på att man i kodaren har en talsyntes, identisk med den i mottagaren, där man kontrollerar, det vill säga analyserar, resultatet (syntetiserade signalen) jämfört med originalinsignalen. Metoden visualiseras i figur 7. Detta görs om och om igen tills man har hittat de inställningar som ger minst avvikelse. När man hittat dessa skickas de till mottagaren. Att göra detta för alla block är alltför krävande att kunna utföras i realtid men som tur är kan man göra många förenklingar. Den vanligaste metoden för hybridkodare är: 1. Beräkna parametrarna för LP-filtret i open-loop. Löses ofta genom korrelation eller kovariansmetoder. 2. Filtrera original signalen genom inversen av LP-filtret. Detta görs för att ta bort korttidskorrelationen i talet. 3. Från denna signal bestäms parametrarna för Pitch-prediktorn i en separat closed-loop. 4. Bestäm, i en separat sluten loop, excitationen av Pitch-prediktorn och LP som ger det minsta perceptuella felet. CELP Det finns många varianter på CELP-algoritmen och den variant som beskrivs här är relativt nära grunden. 11

Syntetiskt tal Orginaltal Stokastisk kodbok Pitch-prediktor 1 P( z) Linjär Prediktor 1 A( z) ŝ - e Σ s Viktningsfilter W (z) MMSE Figur 8 CELP-kodare Insignalen till kodaren delas upp i ramar där varje ram är 20 ms lång och består av 160 sampel. Ramarna delas i sin tur upp i mindre delramar som är 5 ms och har 40 sampel. Varje ram analyseras och syntetiseras och de parametrar som ger minst perceptuellt fel skickas till mottagaren som, om inga transmissionsfel uppstår, kan återskapa talet som kodats. Metoden som används är Analys-genom-Syntes. Basen för tekniken är kodböckerna. Första kodboken innehåller olika sekvenser av vitt brus som genom index och skalning väljs så att de ger, efter att passerat filtren, bäst signal. Den andra kodboken är adaptiv och innehåller en linjärkombination av föregående lagrad vektor och en ny excitationsvektor (brussekvens). Denna adaptiva kodbok är den så kallade Pitch-prediktorn och existerar endast för varje ram. Figur 8 är ett blockschema för den CELP-kodare som behandlas i texten. Linjära Prediktorn (LP) Linjära prediktorn beskriver modellen för munhålan och dess resonansfrekvenser, det vill säga korttidskorrelationen. Matematisk modell kan beskrivas av ett all-pole -filter med z- transform enligt 1 A( z) = p 1 1 i= 1 a i z i där p är antalet tappar i filtret, vanligtvis 10 stycken, och a i är tapparna. I tidsdomänen kan filtret ses som en linjär prediktor därav namnet. Koefficienterna bestäms en gång för varje ram genom konventionell linjär prediktion, LPC, och itereras sedan fram för varje delram. LPC är krävande och hur detta görs bestämmer en stor del av den totala fördröjning i algoritmen. I nyare versioner av algoritmen, exempelvis Low Delay-CELP, löser man detta på ett annorlunda sätt vilket ger en kortare beräkningstid. Stokastisk kodbok Stokastiska kodboken innehåller 1024 olika vektorer, kodord, av vitt brus. Varje kodord innehåller alla av föregående kodords sampel utom två som ersätts med nya. Både sändare 12

och mottagare har en likadan fast kodbok. Varje kodord är indexerat och skalas med en faktor innan den används. Det är med hjälp av index och skalningsfaktorn som man kan välja vilken signal som skall användas för att excitera Pitch-filtret. Figur 9 visar hur brussekvenserna är kvantiserade och lagrade i en lång vektor samt hur de fönstras ut och förstärks med bifogade parametrar. 1 1024 i g Exciteringssignal Figur 9 Stokastisk kodbok. Pitch-prediktorn Pitch-prediktorn eller Pitch-syntesen som den även kallas modellerar långtidskaraktäristiken i talet. Även denna kan modellers med ett all-pole -filter vars z-transform är 1 P( z) = r 1 1 i= 1 b i z D där r oftast är mellan 1 och 3. D kallas lag och motsvarar en tidsfördröjning, eller ett index, i den adaptiva kodboken. Adaptiva kodboken innehåller tidigare exciterade signaler. Analysen av D sker för varje delram genom closed loop (A-g-S). För delram 1 och 3 analyseras alla lags. För delram 2 och 4 analyseras nedre gränsen för D, D föregående delram 31, och övre gränsen för D, D föregående delram + 32. Analysen sker i fem steg och visas i figur 10. 1. Bestäm en prediktion för respektive D. Falta excitationshistoriken från index D till index D + trunkeringslängd med impulssvaret från LP-filtret och viktningsfiltret. Detta görs för varje lag, D, mellan lägre och övre gränsen. 2. Beräkna korrelationen, C D, mellan prediktionen och viktade originaltalet. Beräkna även energin, P D, av prediktionen i steg 1. 3. Beräkna och kvantisera förstärkningsfaktorn, b, för Pitch-prediktorn genom formeln CD b = PD 4. Beräkna det syntetiserade felet, E D, genom formeln E D = Sin + b 2 * PD 2* b* CD där S in är energin i originaltalet för delramen. 5. Jämför felet med det minsta tidigare felet och sparar parametrarna för det bästa lag, det vill säga D, b, P D och C D. 13

Excitationshistorik Generera en prediktion Falta Parameterberäkning Beräkna felet Jämför felet Använd de parametrar som ger minsta felet Figur 10 Analysschema. MMSE MMSE är det block som utför minimeringen av felet enligt beskrivningen i Pitch-prediktorn. Minimeringen sker enligt vanlig minst kvadrat metod där min(e(e 2 )) söks och e = s sˆ. Viktningsfiltret Viktningsfiltret är ett så kallat perceptuellt viktningsfilter som utnyttjar maskningseffekterna i talet genom att fördela om bruset (ändra signal-brus förhållandet). Filtret är baserat på LPfiltrets poler och kallas Standard Pole-Zero Weightning -filter. Dess z-transform kan skrivas som W ( z) A( z) A( z ) γ 1 i= 1 = = p 1 p i= 1 a z i i a γ När γ = 1 minimeras felet enbart i syntesdomänen, det vill säga E = ( s[ n] sˆ[ n]) 2 i i z i 14

minimeras. Är γ = 0 transformeras felet till excitationsdomänen och W(z) blir inversen till LP-filtret. Det fel man då minimerar är E = ( r[ n] rˆ[ n]) 2 där rˆ [ n] = residualen av originaltalet rˆ [ n] = residualen av det syntetiserade talet Väljer man γ -värden mellan 0 och 1 fås ett mindre perceptuellt fel. Oftast rekommenderas värden på γ mellan 0.7 och 0.9. Sammanfattning CELP De parametrar som skickas är index och förstärkningsfaktor för respektive kodbok samt koefficienterna för linjära prediktorn. I mottagaren används dessa för att på motsvarande sätt syntetisera talet. Standarder Gemensamma standarder har på senare tid kommit att bli en allt större del i den tekniska utvecklingen av nya produkter. Standardiseringsarbetet är en mycket resurs- och tidskrävande process och kan av många ses som bara av ondo men är dock ett måste för att bland annat minska tillverkningskostnaderna (genom ökade volymer) samt möjliggöra kompabilitet mellan olika system oberoende av tillverkare, vilket säkerligen uppskattas av konsumenten. Allmänt Nästan alla länder har sina egna standardiseringsorganisationer men det finns tre huvudaktörer på marknaden; Japan, Europa och USA. Det är dessa tre som till största delen styr utvecklingen av standardiseringsarbetet. Standardiseringsarbetet har förutom den uppenbara tekniska problematiken även en stor del politisk bakgrund. Respektive tillverkare forskar fram egna produktlösningar och har för avsikt att deras teorier ska implementeras i kommande standarder. För att licenskostnaderna skall hållas ned standardiseras tekniken utan att välja en tillverkarspecifik lösning. Detta leder naturligtvis till motsättningar mellan aktörerna i standardiseringsarbetet och det är detta som gör att processen tar avsevärda resurser och tid. Mångfalden av standarder beror också på att respektive talkodare har optimerats för givna kanaler samt att alla applikationer inte har samma behov av kodning. För talkodning påbörjades arbetet under andra världskriget då detta innebar en möjlighet för effektiv överföring av krypterat tal. Denna första talkodare var en analog vocoder. Än idag används de äldre teknikerna och standarderna som referenser för att jämföra de nya talkodarna med, de som främst är avsedda för trådlösa system. Syftet med denna del av rapporten är inte att beskriva respektive standard i detalj utan ge ett tidsperspektiv för utvecklingen av några standarder från dåtid, nutid och in i framtiden. 15

Standardiseringsorgan Det finns flertalet standiseringsorganisationer och än fler organisationer som publicerar inriktningar för den tekniska utvecklingen. Här presenteras några av de viktigaste standardiseringsorganisationerna: ITU International Telecommunication Union Detta är ett internationellt standardiseringsorgan som grundades 1865 och har sitt säte i Genève, Schweiz. Den ingår som en del av Förenta Nationernas organisation och har ett stort antal underavdelningar varav den som för detta ändamål är mest intressant går under benämningen ITU-T(SS) - Telecommunication (Standard Sector), tidigare känd som CCITT - Comité Consultatif International Téléphonique et Télégraphique. Här kan myndigheter samt företag koordinera kommunikationsfrågor och tjänster. IEEE - Institute of Electrical and Electronics Engineers, Incorporation IEEE är en icke vinstdrivande organisation med mer än 377 00 individuella medlemmar från 150-tal länder. Verksamheten består av publicering av tekniska dokument, anordnande av konferenser samt konsensusbaserad standardiseringsarbete. Den nuvarande organisationen grundades 1884 genom dess föregångare AIEE (American Institute of Electrical Engineers) samt IRE (Institute of Radio Engineers) från 1912. Dessa organisationer slogs 1963 samman och bildade IEEE. ANSI American National Standards Institute Administrerar och koordinerar de amerikanska standarderna inom den privata sektorn. Grundades 1918 av tre ingenjörsföreningar och tre statliga myndigheter och är fortfarande en fristående och icke vinstdrivande medlemsorganisation. Huvudkontoret ligger i Washington, D.C. TIA Telecommunications Industry Association Är ett amerikanskt forum för marknadsutveckling, inrikes och utrikes rättsverksamhet samt standardiseringsutveckling. Grunden till forumet kommer från 1924 där en grupp oberoende telefoniföretag planerade att arrangerade en industrimässa. Består av 1100 medlemsföretag och har verksamhet i Washington, D.C, San José, California samt i fyra kontor utanför Amerika. EIA Electrionic Industries Alliance Denna nationella allians är motsvarigheten till TIA för den elektrotekniska industrimarknaden och har huvudkontoret i Alington, Virginia. Grunden lades av Radio Manifacturers Association från 1924. Alliansen består av 2300 medlemsföretag och organisationen representerar mer än 80 procent av den elektrontekniska industrin samt sysselsätter mer är 2 miljoner amerikanare. 16

ETSI - European Telecommunications Standards Institute Detta är en europeiskt baserad organisation med 912 medlemmar från 54 länder, både inom och utom Europa. Organisationen har sitt säte i Sophia Antipolis i södra Frankrike och är en icke vinstdrivande organisation vars syfte är att producera telekommunikationsstandarder för främst Europa men även övriga världen. Representeras bland annat nätoperatörer, tillverkare samt forskare. De japanska standardiseringsinstituten tas inte upp i detta dokument då fokus ligger på de europeiska och amerikanska standarderna. Vågformskodare Standardiseringen av vågformskodarna började redan på 1960-talet. Första standarden baserades på vanlig PCM. Den hade en logaritmiskt indelad kvantiseringsskala och i Amerika användes skalan kallad u-law medan man i Europa använde den något annorlunda skalan A-law. Här var det alltså fortfarande frågan om okomprimerad kodning med en 64 kbit/s bithastighet. Standarden går under benämningen CCITT Recommendation G.711 Pulse code modulation (PCM) of voice frequencies, (1988). I mitten av 1980-talet standardiserade CCITT en 32 kbit/s Adaptive Differential PCM (ADPCM), vilken hade en talkvalité nästan i jämförelse med G.711, kallad CCITT Recommendation G.721 32 kbit/s adaptive differential pulse code modulation (ADPCM) (1988). En vidareutveckling av denna teknik kom med CCITT Recommendation G.722 7 khz audio coding within 64 kbit/s (1988). Den var avsedd främst för ISDN vid telefonkonferens och där man använde delband samt ADPCM. Talet indelades i två delband, det lägre bandet (0-4 khz) kodades med 48 kbit/s samt det högre bandet (4-7 khz) med 16 kbit/s. En annan vidareutveckling på G.721 kom samma år med CCITT Recommendation G.723 Extensions of Recommendation G.721 ADPCM to 24 kbit/s and 40 kbit/s for DCME application, 1988. Detta innebar möjlighet till förändrad bithastighet. Ytterligare utveckling gav standarden ITU-T Recomendation G.726 40, 32, 24, 16 kbit/s Adaptive Differential Pulse Code Modulation (ADPCM), (1990), den standard som man bland annat hittar i DECT-telefonerna (Digital European Cordless Telephony), samt ITU-T Recommendation G.727 5-, 4-, 3- and 2-bits/sample embedded adaptive differential pulse code modulation, (1990). Vocodare Det rena syntestal som vocodern erbjuder har till största delen varit intressant inom säkra militära kommunikationsändamål då krav på röstigenkänning inte har varit av avgörande betydelse. DoD (Department of Defence) utvecklade i början av 1980-talet en standard, Federal Standard FS-1015, som baserades på en LPC algoritm. Standarden använder sig av 2,4 kbit/s överföringshastighet som en 10:e ordningens prediktor för att skatta munhålans parametrar. Pågående forskning innebär utveckling av vocoders mellan 400 800 bit/s med kvalité jämförbar med FS-1015. Militären har intresse av dessa genom dess egenskaper av: 17

Ökad tolerans mot bitfel Låg sannolikhet för avbrott Smalbandig tal/data integration Hybridkodare Rena vocoder har egentligen inte nått den publika marknaden direkt utan endast i formen av en vidareutveckling, hybridkodaren. Amerikanska försvarsmakten var i hybridkodarens barndom världsledande i utvecklingen och 1991 kom den första standardiserade talkodaren baserad på CELP vid namn Federal Standard 1016, utvecklad av DoD. Den hade en bithasighet på 4.8 kbit/s. Ytterligare en standard utvecklades i ett samarbete mellan AT&T Bell Laboratories och amerikanska militären och resultatet blev en ny Federal Standard, FS-1017. Denna består av en 4.8 kbit/s CELP algoritm med 30 ms ramar och 7,5 ms delramar samplade vid 8 khz. CCITT fortsatte sin utveckling av standarder och 1988 satte de nya krav på en 16 kbit/s standard där huvudkravet var att den skulle ha en talkvalité i jämförelse med G.721 vid både felfri samt brusig kanal och fick inte ha fördröjning mer än 5 ms, för ideal kanal maximalt 2 ms. AT&T Bell Laboratories utvecklade då en talkodare som matchade kraven och detta resulterade i ITU-T Recommendation G.728 Coding of speech at 16 kbit/s using Low Delay code excited linear prediction (LD-CELP), 1992. De annars så beräkningstunga algoritmerna kunde nu förenklas genom att minska ramarnas storlek till 2,5 ms samt subramarna till 0,625 ms. En av de senaste standarderna från ITU-T bygger på Algebraic CELP (ACELP) och kräver 8 kbit/s överföringshastighet. Namnet på standarden är ITU-T Recommendation G.729 Coding of speech at 8 kbit/s using conjugate-structure algebraic-code-excited linear prediction, (1996). Det europeiska standardiseringsinstitutet ETSI utvecklar naturligtvis standarderna för det europeiska mobilnätet GSM - Global System for Mobile telecommunication, där några av grundstandarderna (utan tillägg) presenteras nedan. En av dess första standarder var ETSI GSM 06.10 med titel: European digital cellular telecommunications system (Phase 1); Full rate speech; Transcoding. Där tekniken för talkodaren bygger på RPELTP (RegularPulse Excitation LongTerm Predictor). Vidare utvecklades ETSI GSM 06.20 med titel: European digital cellular telecommunications system; Half rate speech; Part 2: Half rate speech transcoding. Den standard som används idag är ETSI GSM 06.60 med titel: Digital cellular telecommunications system; Enhanced Full Rate (EFR) speech transcoding. Denna kräver en bithastighet på 12 kbit/s och går under benämningen GSM-EFR Enhanced Full Rate. Den har en god talkvalité, dock ej så god som den något mer kapacitetskrävande G.728. Amerikanarna använder sina standarder inom sitt mobiltelefonisystem, TDMA IS-136 Third Generation Wireless - Mobile Stations Minimum Performance. Dessa IS-standarder (Interim Standard) finns att köpa online via TIA hemsida. Den äldre standarden för CDMA-systemet (Code Division Multiple Access) IS-96 med Qualcom CELP (QCELP), har vidareutvecklats till IS-125 Recommended Minimum 18

Performance Standard for Digital Cellular Wideband Spread Spectrum Speech, Service Option 1, (2000). I denna standard ges definitioner, metoder för mätning samt ett minsta krav på prestanda för IS-96 samt kompatibla standarder. En vidareutveckling kom med IS-127 EVRC - Enhanced Variable Rate Codec, Speech Service Option 3 for Wideband Spread Spectrum Digital Systems, (1997). Den standard som för närvarande är implementerad i det amerikanska mobilnätet, IS-136, är IS-641 TDMA Cellular/PCS-Radio Interference - Enhanced Full Rate Speech Coded, (1996). Denna talkodare utvecklades bland annat av Nokia och består av en 7,4 kbit/s ACELP talkodare samt 5,6 kbit/s kanalkodning vilket ger en summa på 13,0 kbit/s. Denna är jämförbar med ITU-T standard G.726. Framtiden Forsningen inom talkodning är naturligtvis en pågående verksamhet och några av de tekniker som idag är verklighet men ännu inte har kommit så långt i standardiseringsarbetet presenteras nedan. AMR - Adaptive MultiRate innebär att datahasigheten anpassas efter hur bra kanalen är. Är det mycket brus på kanalen används en lägre datahasighet för att det som sänds säkert ska komma fram, medan om kanalen har ett högt signalbrusförhållande så kan man lägga med mer information i den översända talsignalen. I nutidens mobila nät kommer GSM-AMR att implementeras. Det som tidigare nämnts har främst innefattat Narrowband kodare, det vill säga en signal med ett band mellan 200 och 3600 Hz. När talkodningen närmar sig allt lägre bithastigheter samt att kommunikationssystemen får öka kapacitet, börjar man titta mot en ökad talkvalité genom att öka bredden på bandet till Wideband, det vill säga ungefär 50 till 7000 Hz. Detta ger en djupare känsla av ljudet då det främst bland de lägre frekvenser finns mycket energi som går förlorad i de smalbandiga kodarna. Naturligtvis tittar man på kombinationen AMR Wideband, där man nyttjar kanalkapaciteten till bättre kvalité när tillfället ges för att övergå till smalbandig överföring under svårare förhållanden. 19

Avslutning Mobiltelefonen är idag var mans egendom men ett fåtal funderar nog över hur talet egentligen överförs i det mobila systemet. Dåtidens enkla talkodare där man endast samplade och kvantiserade signalen har idag ersatts av talkodare som bygger på mer avancerade modeller för stämband och munhåla. När detta dokument påbörjades förstod nog inte författarna omfattningen på arbetet men så småningom insågs vidden av talkodningens principer och vilken avsevärd forskning som under årtionden har spenderats inom detta ämne. På detta sätt har detta arbete inneburit en djupare insikt i tal och talsyntes än vad som tidigare uppnåtts i signalbehandlingskurserna. Om några år är det förmodligen författarna till detta dokument som vidareutvecklar framtidens talkodare. 20

Referenser [1] Karlsson, Gunnar (1997). Modern telekommunikation. Lund : Studentlitteratur, 1997 ISBN 91-44-00118-5 [2] Wallander, Per (2000). GSM-boken. Älvsjö : Perant, 2000 ISBN 91-86296-09-4 [3] Atal, Bishnu S.; Cuperman, Vladimir; Gersho, Allen( editors) (1989). Advances in Speech Coding. ISBN 0-7923-9091-1 [4] Spanias, A. S.(1994). Speech Coding: A Tutorial Review. http://www-mobile.ecs.soton.ac.uk/speech_codecs/index.html [5] Eriksson, Peter (1998). Analysis of speech and background signals for mode selection in variable bit rate speech coding. Luleå tekniska universitet. Examensarbete 1998:052. ISSN:1402-1617. [6] Svedberg, Jonas (1993). Introducing Pitch Prediction to Low Delay Speech Coding. Luleå: Tekniska högskolan i Luleå. Examensarbete 1993:049E. [7] Frankkila, Tomas (1990). The use of perceptual weighting filters in very low bit rate CELP speech coders, Luleå: Tekniska högskolan i Luleå. Examensarbete. 1990:149E. Länkar: International Telecommunication Union http://www.itu.int Institute of Electrical and Electronics Engineers http://www.ieee.org American National Standards Institute http://www.ansi.org/ Telecommunications Industry Association http://www.tiaonline.org Electrionic Industries Alliance http://www.eia.org/ European Telecommunications Standards Institute http://www.etsi.org/ http://www-mobile.ecs.soton.ac.uk/speech_codecs/index.html http://rice.ecs.soton.ac.uk/jason/speech_codecs/index.html 21

Figurförteckning Figur 1 Talapparatens olika delar....5 http://www.kt.tu-cottbus.de/speech-analysis/tech.html#fig1 Figur 2 Prestanda för olika kodare...6 http://www-mobile.ecs.soton.ac.uk/speech_codecs/common_classes.html Figur 3 Principskiss av en vocoder...8 Figur 4 Tonade ljud i tids- och frekvensdomänen....8 http://www.acoustics.hut.fi/~slemmett/dippa/chap3.html Figur 5 Excitationssignalen...9 http://murray.newcastle.edu.au/users/staff/speech/home_pages/tutorial_acoustic.html Figur 6 Talsyntes....10 Egen design Figur 7 Analys-genom-Syntes...11 Egen design Figur 8 CELP-kodare...12 Egen design Figur 9 Stokastisk kodbok...13 Egen design Figur 10 Analysschema....14 Egen design 22