FI120425B - Vaihtelevanopeuksinen vokooderi - Google Patents

Vaihtelevanopeuksinen vokooderi Download PDF

Info

Publication number
FI120425B
FI120425B FI935597A FI935597A FI120425B FI 120425 B FI120425 B FI 120425B FI 935597 A FI935597 A FI 935597A FI 935597 A FI935597 A FI 935597A FI 120425 B FI120425 B FI 120425B
Authority
FI
Finland
Prior art keywords
rate
codebook
frame
bits
parameters
Prior art date
Application number
FI935597A
Other languages
English (en)
Swedish (sv)
Other versions
FI935597A0 (fi
FI935597A (fi
Inventor
Chong U Lee
Klein S Gilhousen
William R Gardner
Paul E Jacobs
Ming-Chang Tsai
Katherine S Lam
Original Assignee
Qualcomm Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Family has litigation
First worldwide family litigation filed litigation Critical https://patents.darts-ip.com/?family=24866989&utm_source=google_patent&utm_medium=platform_link&utm_campaign=public_patent_search&patent=FI120425(B) "Global patent litigation dataset” by Darts-ip is licensed under a Creative Commons Attribution 4.0 International License.
Application filed by Qualcomm Inc filed Critical Qualcomm Inc
Publication of FI935597A0 publication Critical patent/FI935597A0/fi
Publication of FI935597A publication Critical patent/FI935597A/fi
Application granted granted Critical
Publication of FI120425B publication Critical patent/FI120425B/fi

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0056Systems characterized by the type of code used
    • H04L1/0057Block codes
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L19/005Correction of errors induced by the transmission channel, if related to the coding algorithm
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L19/012Comfort noise or silence coding
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L19/04Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using predictive techniques
    • G10L19/08Determination or coding of the excitation function; Determination or coding of the long-term prediction parameters
    • G10L19/12Determination or coding of the excitation function; Determination or coding of the long-term prediction parameters the excitation function being a code excitation, e.g. in code excited linear prediction [CELP] vocoders
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L19/04Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using predictive techniques
    • G10L19/16Vocoder architecture
    • G10L19/18Vocoders using multiple modes
    • G10L19/22Mode decision, i.e. based on audio signal content versus external parameters
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L19/04Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using predictive techniques
    • G10L19/16Vocoder architecture
    • G10L19/18Vocoders using multiple modes
    • G10L19/24Variable rate codecs, e.g. for generating different qualities using a scalable representation such as hierarchical encoding or layered encoding
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L25/00Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00
    • G10L25/78Detection of presence or absence of voice signals
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04BTRANSMISSION
    • H04B1/00Details of transmission systems, not covered by a single one of groups H04B3/00 - H04B13/00; Details of transmission systems not characterised by the medium used for transmission
    • H04B1/66Details of transmission systems, not covered by a single one of groups H04B3/00 - H04B13/00; Details of transmission systems not characterised by the medium used for transmission for reducing bandwidth of signals; for improving efficiency of transmission
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04JMULTIPLEX COMMUNICATION
    • H04J3/00Time-division multiplex systems
    • H04J3/16Time-division multiplex systems in which the time allocation to individual channels within a transmission cycle is variable, e.g. to accommodate varying complexity of signals, to vary number of channels transmitted
    • H04J3/1682Allocation of channels according to the instantaneous demands of the users, e.g. concentrated multiplexers, statistical multiplexers
    • H04J3/1688Allocation of channels according to the instantaneous demands of the users, e.g. concentrated multiplexers, statistical multiplexers the demands of the users being taken into account after redundancy removal, e.g. by predictive coding, by variable sampling
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/0001Systems modifying transmission characteristics according to link quality, e.g. power backoff
    • H04L1/0014Systems modifying transmission characteristics according to link quality, e.g. power backoff by adapting the source coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/0001Systems modifying transmission characteristics according to link quality, e.g. power backoff
    • H04L1/0015Systems modifying transmission characteristics according to link quality, e.g. power backoff characterised by the adaptation strategy
    • H04L1/0017Systems modifying transmission characteristics according to link quality, e.g. power backoff characterised by the adaptation strategy where the mode-switching is based on Quality of Service requirement
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0041Arrangements at the transmitter end
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0045Arrangements at the receiver end
    • H04L1/0046Code rate detection or code type detection
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L25/00Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00
    • G10L25/78Detection of presence or absence of voice signals
    • G10L2025/783Detection of presence or absence of voice signals based on threshold decision
    • G10L2025/786Adaptive threshold

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Human Computer Interaction (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Physics & Mathematics (AREA)
  • Acoustics & Sound (AREA)
  • Multimedia (AREA)
  • Computational Linguistics (AREA)
  • Quality & Reliability (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Transmission Systems Not Characterized By The Medium Used For Transmission (AREA)
  • Amplifiers (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Signal Processing For Digital Recording And Reproducing (AREA)
  • Curing Cements, Concrete, And Artificial Stone (AREA)
  • Developing Agents For Electrophotography (AREA)
  • Oscillators With Electromechanical Resonators (AREA)
  • Solid-Sorbent Or Filter-Aiding Compositions (AREA)
  • Luminescent Compositions (AREA)
  • Dc Digital Transmission (AREA)
  • Inorganic Insulating Materials (AREA)
  • Facsimile Image Signal Circuits (AREA)
  • Measuring Pulse, Heart Rate, Blood Pressure Or Blood Flow (AREA)
  • Endoscopes (AREA)
  • Magnetic Record Carriers (AREA)
  • Reduction Or Emphasis Of Bandwidth Of Signals (AREA)
  • Testing, Inspecting, Measuring Of Stereoscopic Televisions And Televisions (AREA)
  • Monitoring And Testing Of Transmission In General (AREA)
  • Detection And Prevention Of Errors In Transmission (AREA)
  • Investigating Or Analysing Biological Materials (AREA)
  • Table Devices Or Equipment (AREA)
  • Measurement Of The Respiration, Hearing Ability, Form, And Blood Characteristics Of Living Organisms (AREA)
  • Noise Elimination (AREA)

Description

VAIHTELEVÄNOPEUKSINEN VOKOODERI KEKSINNÖN TAUSTA 5 I. Keksinnön ala
Esillä olevan keksinnön kohteena on puheen prosessointi. Erityisesti keksintö koskee uutta ja parannettua menetelmää ja järjestelmää puheen tiivistä-10 miseksi, jossa tiivistysmäärä vaihtelee dynaamisesti ja vaikuttaa minimaalisesti rekonstruoidun puheen laatuun. Edelleen, koska tiivistetty puhedata on tarkoitettu lähetettäväksi kanavalla, jolla saattaa esiintyä virheitä, keksinnön mukainen menetelmä ja järjestelmä 15 minimoi myös kanavavirheiden vaikutusta äänen laatuun.
II. Liittyvän alan kuvaus Äänen lähetys käyttämällä digitaalista lähe-20 tystekniikkaa on yleistynyt huomattavasti, erityisesti pitkänmatkan- ja digitaalisen radiopuhelinliikennesovellusten yhteydessä. Tämä vuorostaan on lisännyt kiinnostusta siihen, mikä on pienin määrä informaatiota, joka voidaan lähettää 25 kanavalla säilyttäen rekonstruoidun puheen laatu.
Mikäli puhe siirretään yksinkertaisesti näytteenoton ja digitoinnin kautta, tarvitaan datanopeus joka on luokkaa 64 kilobittiä per sekunti (kbps) tavanomaisen analogisen puhelaadun aikaansaamiseksi. Kuitenkin, 30 käyttämällä puheanalyysiä, jota seuraa sopiva koodaus, lähetys ja jälleensyntetisointi vastaanottimessa, voidaan aikaansaada huomattava datanopeuden pieneneminen.
2
Laitteet, joissa sovelletaan menetelmiä puheen tiivistämiseksi käyttäen parametreja, jotka liittyvät ihmisen puheen muodostuksen malliin, kutsutaan 5 tyypillisesti nimellä vokooderi. Tällaiset laitteet koostuvat kooderista, joka analysoi tulevan puheen poistaakseen relevantit parametrit, ja dekooderista, joka jälleensyntetisoi puheen käyttäen vastaanotettuja parametreja, jotka se vastaanottaa lähetyskanavan 10 kautta. Ollakseen täsmällinen, mallin on jatkuvasti muututtava. Siksi puhe jaetaan aikalohkoihin, tai analyysikehyksiin, jonka aikana parametrit lasketaan. Parametrit päivitetään tämän jälkeen kullekin kehykselle.
15
Eri puhekoodereiden luokista koodiherätteinen lineaarisen ennustuksen koodaus (CELP), stokastinen koodaus tai, vektoriherätteinen puhekoodaus kuuluvat samaan luokkaan. Esimerkki koodausalgoritmista joka 20 kuuluu tähän tiettyyn luokkaan selostetaan julkaisussa "A 4,8 kbps Code Excited Linear Predictive Coder",
Thomas E. Tremain et al., Proceedings of the Mobile
Satellite Conference, 1988.
25 Vokooderi toimii siten, että se tiivistää digitoidun signaalin pienen bittinopeuden signaaliksi poistamalla kaikki luonnolliset redundanssit, jotka sisältyvät puheeseen. Puheella tyypillisesti on lyhyen aikavälin redundansseja, jotka pääasiassa johtuvat 30 ääniväylien suodatustoiminnoista ja pitkän aikavälin redundansseja, jotka johtuvat äänialueiden virityksestä äänijohdoilla. CELP-kooderissa nämä toiminnot mallinnetaan kahdella suodattimena, lyhytaikaisella formanttisuodattimella ja pitkän aikavälin 35 äänentasosuodattimella. Kun nämä redundanssit on pois- 3 tettu, jäljelle jäävää signaalia voidaan mallintaa valkoisena gaussi-kohinana, joka myös on koodattava. Tämän tekniikan perustana on suodattimen parametrien laskeminen, jota kutsutaan LPC-suodattimeksi, joka 5 suorittaa lyhyen aikavälin ennustuksia puheen aaltomuodosta käyttäen ihmisen äänialueen mallia. Lisäksi pitkän aikavälin vaikutuksista, jotka liittyvät puheen äänentasoon, mallinnetaan laskemalla äänentasosuodattimen parametreja, jotka olennaisesti 10 mallintavat ihmisäänen sointuja. Lopuksi nämä suodattimet on herätettävä, ja tämä suoritetaan määrittämällä mikä lukumäärästä koodikirjan satunnaisheräteaaltomuotoja johtaa lähimmän ap-roksimaation alkuperäispuheelle, kun aaltomuoto 15 herättää yllä mainitut kaksi suodatinta. Täten lähetetyt parametrit koskevat kolmea osaa: (1) LPC- suodatin, (2) äänentasosuodatin, ja (3) koodikirj aheräte.
20 Vaikkakin vokoodaustekniikoiden käyttö yrittää vähentää informaation määrää, joka on lähetettävä kanavaa pitkin rekonstruoidun puheen laadun ylläpitämiseksi, tarvitaan myös muita menetelmiä vähennyksen lisäämiseksi. Eräs aikaisemmin käytetty 25 menetelmä lähetetyn informaation määrän vähentämiseksi on ääniaktiviteetin portitus. Tässä tekniikassa informaatiota ei lähetetä puheen taukojen aikana. Vaikkakin tällä menetelmällä aikaansaadaan lähetettävän datan haluttu väheneminen, sillä on useita haittoja.
30
Useissa tapauksissa puheen laatu huononee johtuen sanojen alkuosien leikkautumisesta. Toinen ongelma, joka esiintyy kanavan portituksessa pois päältä ei-aktiviteetin aikana on se, että järjestelmän 35 käyttäjä havaitsee taustakohinan puuttumisen, joka 4 normaalisti liittyy puheeseen, ja alentaa kanavan laadun huonommaksi kuin normaali puhelu. Lisäksi ongelma aktiviteettiportituksessa on se, että tilapäiset yhtäkkiset kohinat taustalla voivat virittää 5 lähettimen vaikka puhetta ei esiinny, aiheuttaen ärsyttäviä kohinapurskeita vastaanottimessa.
Yritys ääniaktiviteettiportitusjärjestelmien syntetisoidun puheenlaadun parantamiseksi on lisätä 10 syntetisoitua mukavuuskohinaa dekoodausprosessin aikana. Vaikkakin mukavuuskohinan lisäämisellä osittain parannetaan laatua, se ei olennaisesti paranna kokonaislaatua, koska mukavuuskohina ei mallinna todellista taustakohinaa kooderissa.
15
Suositumpi tekniikka datatiivistyksen aikaansaamiseksi, jotta saavutetaan vähennys informaatiossa, joka tarvitsee lähettää, on suorittaa vaihtelevan nopeuden koodaus. Koska puhe luontaisesti 20 k sisältää hiljaisia jaksoja, eli pausseja, dataa, joka tarvitaan näiden jaksojen esittämiseksi, voidaan vähentää. Vaihtelevan nopeuden vokoodauksessa tehokkaimmin hyödynnetään tätä tosiasiaa vähentämällä datanopeutta näillä hiljaisilla jaksoilla. Datanopeuden 25 vähentäminen, verrattuna täydelliseen taukoon datalähetyksessä, hiljaisiksi jaksoiksi poistaa ongelman, joka liittyy puheaktiviteetin portitukseen samalla auttaen vähennystä lähetetyssä informaatiossa.
30 Esillä olevan keksinnön tarkoituksena on siksi aikaansaada uusi ja parannettu menetelmä ja järjestelmä puheen tiivistämiseksi käyttäen vaihtelevan nopeuden vokoodaustekniikkaa.
5 ΕΡ-Ά-0 449 043 kuvaa menetelmän ja laitteen äänidigitointiin. Äänisignaali jaetaan segmentteihin. Yhdelle segmenttien osalle äänisignaali prosessoidaan käyttäen pyöristystä näytearvoille niin hyvin kuin 5 mahdollista. Segmenttien muulle osalle vain parametrit johdetaan puheen uudelleenmuodostamiseksi.
Signaalisegmentit prosessoidaan vaihtelevalla bittinopeudella, jossa nämä bittinopeudet osoitetaan eri toimintamoodeille, ja jokainen signaalisegmentti 10 luokitellaan yhteen toimintamoodeista.
Keksinnön mukaisesti annetaan menetelmä digitoitujen näytteiden tulokehysten vaihtelevanopeuksiseen koodaukseen, kuten on esitetty patenttivaatimuksessa 1, 15 ja vaihtelevanopeuksinen koodiherätteinen lineaarisen ennustuksen kooderi (CELP-kooderi), kuten on esitetty patenttivaatimuksessa 4. Suositeltuja suoritusmuotoja esitetään epäitsenäisissä patenttivaatimuksissa.
20 KEKSINNÖN YHTEENVETO
Esillä olevassa keksinnössä käytetään vo-koodausalgoritmia, joka kuuluu yllä mainittuun puhekoo-dausluokkaan, koodiherätteinen lineaarisen ennustuksen 25 koodaus (CELP), stokastinen koodaus tai vektoriherätteinen puhekoodaus. CELP-tekniikka tarjoaa merkittävän pienennyksen lähetettävän datan määrässä, joka tarvitaan edustamaan puhetta siten, että uudelleensyntetisointi tarjoaa hyvän puheen laadun. 30 Kuten mainittiin aikaisemmin, vokooderiparametrit päivitetään kullekin kehykselle. Esillä olevan keksinnön mukainen vokooderi tarjoaa vaihtelevan antodatanopeuden muuttamalla malliparametrien taajuutta ja tarkkuutta.
6
Esillä oleva keksintö poikkeaa erityisesti perus-CELP-tekniikassa siinä, että tuotetaan vaihteleva antodatanopeus, joka perustuu puheaktiviteettiin.
5 Rakenne määritetään siten, että parametrit päivitetään harvemmin, tai epätarkemmin, puheessa esiintyvien taukojen aikana. Tämä tekniikka sallisi lisäpienennyksen lähetettävässä datamäärässä. Ilmiö, jota hyödynnetään datanopeuden vähentämiseksi, on 10 ääniaktiviteettikerroin, joka on keskimääräinen prosentuaalinen aika, jolloin puhuja todellisuudessa puhuu keskustelun aikana. Tyypillisessä kak sisuuntaisessa puhelinkeskustelussa keskimääräinen datanopeus pienenee kertoimella 2 tai enemmän. Puheessa 15 esiintyvien taukojen aikana vokooderi koodaa ainoastaan taustakohinaa. Tällöin eräät parametreistä, jotka liittyvät ihmisen äänialuemalliin, voidaan jättää lähettämättä.
20 Kuten mainittiin edellä, aikaisempi pyrkimys rajoittaa lähetettävän informaation määrää hiljaisuuden aikana on nimeltään ääniaktiviteettiportitus, tekniikka jossa mitään informaatiota ei lähetetä hiljaisten hetkien aikana. Vastaanottopuolella jakso voidaan 25 täyttää syntetisoidulla "mukavuuskohinalla". Toisaalta, muuttuvan nopeuden vokooderi lähettää jatkuvasti dataa, joka edullisessa suoritusmuodossa on nopeuksilla, jotka ovat aluevälillä noin 8 ja 1 kbps. Vokooderi, joka antaa jatkuvan datalähetyksen, eliminoi tarpeen 30 syntetisoidulle "mukavuuskohinalle", ja tällöin aikaansaadaan myös luonnollisempi laatu uudelleensyntetisoidulle puheelle. Esillä olevan keksinnön mukaisesti saadaan siksi huomattava parannus uudelleensyntetisoidun puheen laatuun verrattuna 35 ääniaktiviteettiportitukseen sallimalla sujuva siir tyminen puheen ja taustan välillä.
7
Esillä olevaan keksintöön kuuluu edelleen uusi tekniikka virheiden esiintymisen maskaamiseksi. Koska data on tarkoitettu lähetettäväksi kanavaa pitkin, 5 jolla saattaa esiintyä kohinaa, esimerkiksi radiolinkki, sen täytyy kompensoida virheitä datassa. Aikaisemmissa tekniikoissa, joissa käytetään kanavakoodausta koodattujen virheiden lukumäärän vähentämiseksi, . voivat antaa jonkinlaista menestystä virheiden 10 vähentämiseksi. Kuitenkin kanavakoodaus yksistään ei täysin aikaansaa toivottavaa virheidensuojaustasoa, joka on tarpeellinen uudelleenkonstruoidun puheen korkean laadun takaamiseksi. Vaihtelevan nopeuden vokooderissa, jossa vokoodaus suoritetaan jatkuvasti, 15 virhe voi hävittää dataa, joka liittyy johonkin mielenkiintoiseen osaan puheesta, kuten sanan alkuun tai tavuun. Tyypillinen ongelma lineaarisen ennustuksen koodaukseen (LPC) perustuvissa vokoodereissa on se, että virheet parametreissä, jotka liittyvät 20 vokaalialueen malliin, aiheuttaa ääniä, jotka ovat huonosti ihmisääntä muistuttavia, ja jotka saattavat muuttaa alkuperäisen sanan ääntä riittävästi, jotta kuuntelijaa sekoitetaan. Esillä olevassa keksinnössä virheet maskataan, jotta vähennetään niiden 25 havaittavuutta kuuntelijalle. Tällaisella tämän keksinnön mukaisella virheiden Haaskauksella saadaan aikaan huomattava virheiden vaikutuksen aleneminen puheen ymmärrettävyyteen.
30 Koska maksimimäärä, jonka mikä tahansa parametri voi muuttua rajoitetaan pienemmille alueille alhaisemmilla nopeuksilla, virheet parametreissä, jotka on lähetetty näillä nopeuksilla, vaikuttavat puheen laatuun vähemmän. Koska virheillä eri nopeuksilla on 35 eri havaittava vaikutus puheen laatuun, lähetysjärjestelmä voidaan optimoida siten, että se 8 antaa enemmän suojaa suurinopeuksiselle datalle. Siksi esillä oleva keksintö tarjoaa lisättynä piirteenä vankkuuden kanavavirheitä vastaan.
5 Sovellettaessa vaihtelevan nopeuden annon versiota CELP-algoritmista, annetaan puheen tiivistys, joka dynaamisesti vaihtelee alueella 8:1-64:1 riippuen ääniaktiviteetista. Juuri mainittuihin tiivistys-kertoimiin viitataan viittaamalla μ-lakiottoon, jolloin 10 tiivistyskertoimet suurenevat kertoimella kaksi lineaarisella tulolla. Nopeusmääritys suoritetaan kehys kehykseltä periaatteella siten, että täysin hyödynnetään ääniaktiviteettikerrointa. Vaikkakin vähemmän dataa tuotetaan puheessa esiintyvien 15 taukokohtien aikana, jälleensyntetisoidun taustakohinan huononeminen minimoidaan. Käyttämällä esillä olevan keksinnön mukaista tekniikkaa voidaan saavuttaa laadukas lähikaukopuhe maksimidatanopeudella 8 kbps ja keskimääräisellä datanopeudella, joka on luokkaa 3,5 20 kbps normaalissa keskustelussa.
Koska esillä oleva keksintö mahdollistaa sen, että havaitaan lyhyitä taukoja puheessa, toteutetaan tehollisen ääniaktiviteettikertoimen pieneneminen. 25 Nopeuspäätökset voidaan tehdä kehys kehykseltä periaatteella ilman riippuvuutta edellisestä siten, että datanopeus voidaan vähentää puheessa esiintyvillä tauoilla aina kehyksen kestoon asti, edullisessa suoritusmuodossa tyypillisesti 20 ms. Siksi esim. 30 tavujen välillä esiintyvät tauot voidaan huomioida.
Tämä tekniikka vähentää ääniaktiviteettikerrointa yli tavanomaisesti tarkastellun rajan, koska ei ainoastaan pitkän keston taukoja lauseiden välillä, mutta myös lyhyempiä taukoja voidaan koodata pienemmillä 35 nopeuksilla.
9
Koska nopeuspäätökset suoritetaan'kehyspohjaisesta, ei esiinny sanojen alkuosan leikkaamista, kuten ääniaktiviteettiportitusjärjestelmissä. Tällainen leik-5 kaus esiintyy ääniaktiviteettiportitusjärjestelmissä siksi, että esiintyy viive puheen tunnistuksen ja datalähetyksen uudelleenkäynnistyksen välillä.
Käyttämällä nopeuspäätöstä perustuen kuhunkin kehykseen aikaansaadaan puhe, jossa jokaisella siirtymällä on 10 luonnollinen ääni.
Koska vokooderi lähettää jatkuvasti, kuuluu myös puhujan . ympäristökohina jatkuvasti vastaanottopäässä, jolloin aikaansaadaan luonnollisempi 15 ääni puhetaukojen aikana. Siksi esillä oleva keksintö tarjoaa tasaisen siirtymän taustakohinaan. Se, mitä kuuntelija kuulee taustalla puheen aikana, ei yhtäkkiä muutu syntetisoiduksi mukavuuskohinaksi taukojen aikana kuten ääniaktiviteettiportitusjärjestelmässä.
20
Koska taustakohina vokoodataan jatkuvasti lähetystä varten, mielenkiintoiset tapahtumat taustalla voidaan lähettää täysin selkeinä. Tietyissä tapauksissa mielenkiintoinen taustakohina voidaan jopa koodata 25 suurimmalla nopeudella. Suurimman nopeuden koodausta voi ilmetä esim. mikäli joku puhuu kovaäänisesti taustalla, tai mikäli ambulanssi ohittaa kadunkulmassa seisovan käyttäjän. Jatkuvasti tai hitaasti vaihteleva taustakohina koodataan kuitenkin pienillä nopeuksilla.
30
Vaihtelevan nopeuden vokoodauksen käyttö parantaa koodijakomonipääsy (CDMA) -perusteisen digitaalisolupuhelin j är j esteinään kapasiteettia kertoimella, joka on yli kaksi. CDMA ja vaihtelevan 10 nopeuden vokoodaus yhteensovitetaan yksilöllisesti, koska CDMA:lla interferenssi kanavien välillä laskee automaattisesti kun datalähetysnopeus millä tahansa kanavalla pienenee. Kontrastina, voidaan harkita 5 järjestelmiä, joissa nimetään lähetysuria, kuten TDMA tai FDMA. Jotta tällainen järjestelmä hyödyntäisi mitä tahansa datalähetysnopeuden pienentymistä, tarvitaan ulkoista puuttumista käyttämättömien urien uudelleen nimeämiseksi muille käyttäjille. Tähän menettelyyn 10 liittyvä viive tarkoittaa sitä, että kanava voidaan uudelleennimetä ainoastaan pitkien puhetaukojen aikana. Tällöin ei voida täysin hyödyntää ääniaktivi-teettikerrointa. Kuitenkin, käyttämällä ulkoista koordinointia, vaihtelevan nopeuden vokoodaus on 15 käyttökelpoinen muissa järjestelmissä kuin CDMÄ johtuen muista mainituista syistä.
CDMA-järjestelmässä puheen laatu voi hieman huonontua silloin, kun tarvitaan lisää järjestelmäka-20 pasiteettia. Tämä voidaan nähdä siten, että vokooderin voidaan ajatella olevan monta vokooderia, jotka kaikki toimivat eri nopeuksilla, ja aikaansaavat eri puheen laatuja. Siksi puheen laadut voidaan sekoittaa siten, että edelleen vähennetään datalähetyksen keskimääräistä 25 nopeutta. Kokeet osoittavat, että sekoittamalla täyden ja puolen nopeuden vokoodattua puhetta, esim. maksimia sallittua datanopeutta vaihdellaan kehys kehykseltä periaatteella arvojen 8 kbps ja 4 kbps välillä, saatu puhe on laadultaan parempi kuin puolinopeuden muuttuva, 30 4 kbps, maksimi, mutta ei yhtä hyvä kuin suurimman nopeuden muuttuva, 8 kbps, maksimi.
On yleisesti tunnettua, että useimmissa puhelinkeskusteluissa ainoastaan yksi ihminen puhuu 35 kerralla. Lisätoimintana täysi-dupleksi- 11 puhelinlinkeissä voidaan käyttää nopeuslukitusta. Mikäli yksi linkin suunta lähettää suurimmalla lähetysnopeudella, linkin toinen suunta pakotetaan lähettämään pienimmällä nopeudella. Linkin kahden 5 suunnan välinen lukitus takaa korkeintaan 50 % linkin kunkin suunnan keskimääräisen hyödyntämisen. Kuitenkin, kun kanava on suljettu, kuten nopeuslukituksen tapauksessa aktiviteettiportituksessa, kuulija ei pysty mitenkään katkaisemaan puhujaa ottaakseen keskustelussa 10 puhujan roolin. Esillä oleva keksintö tarjoaa mahdollisuuden nopeuslukitukseen ohjaussignaaleilla, jotka asettavat vokoodausnopeuden.
Lopuksi on huomattava, että käyttämällä vaih-15 televanopeuksista äänikoodausjärjestelyä, signalointi- informaatio voi jakaa kanavan yhdessä puhedatan kanssa hyvin vähäisin vaikutuksin puhelaatuun. Esimerkiksi suuren nopeuden kehys voidaan jakaa kahteen osaan, joista toinen puoli alemman nopeuden äänidatan 20 lähettämiseksi ja toinen puoli signalointidatalle. Edullisen suoritusmuodon vokooderissa todetaan ainoastaan pientä äänen laadun huononemista täyden ja puolinopeuden vokoodatun puheen välillä. Siksi puheen vokoodaus alemmalla nopeudella jaetulle lähetykselle 25 datan kanssa johtaa käyttäjälle havaitsemattomaan eroon puheen laadussa.
PIIRUSTUSTEN LYHYT KUVAUS
30 Esillä olevan keksinnön piirteet, kohteet ja edut tulevat selvemmiksi alla esitetystä yksityiskohtaisesta kuvauksesta yhdessä piirustusten kanssa, joissa samat viittausmerkit identifioivat vastaavasti kauttaaltaan ja joissa: 12 kuviot la-le esittävät graafisessa muodossa vokooderianalyysikehyksiä ja alakehyksiä useille nopeuksille; 5 kuviot 2a-2d ovat sarja taulukoita esittäen vokooderin antobittijakoa useille nopeuksille; kuvio 3 on yleistetty lohkodiagrammi esimerkinomaisesta kooderista; kuvio 4 on kooderin vuokaavio; 10 kuvio 5 on yleistetty lohkodiagrammi esimerkinomaisesta dekooderista; kuvio 6 on dekooderin vuokaavio; kuvio 7 on yksityiskohtaisempi toiminnallinen lohkodiagrammi kooderista; 15 kuvio 8 on lohkodiagrammi esimerkinomaisesta
Hamming-ikkunasta ja autokorrelointialajärjestelmistä; kuvio 9 on lohkodiagrammi esimerkinomaisesta nopeusmääritysalajärjestelmästä; kuvio 10 on lohkodiagrammi esimerkinomaisesta 20 LPC-analyysialajärj estelmästä; kuvio 11 on lohkodiagrammi esimerkinomaisesta LPC-LSP-muunnoksen alajärjestelmästä; kuvio 12 on lohkodiagrammi esimerkinomaisesta keksinnön LPC-kvantisointialajärjestelmästä; 25 kuvio 13 on lohkodiagrammi esimerkinomaisesta LSP-interpolointi ja LSP-LPC-muunnoksen alajärjestelmistä; kuvio 14 on lohkodiagrammi adaptiivisesta koodikirjasta äänen tason hakua varten; 30 kuvio 15 on lohkodiagrammi kooderi-dekoo- derista; 13 kuvio 16 on lohkodiagrammi äänen tason hakualajärjestelmästä; kuvio 17 on lohkodiagranuni koodikirjan hakualajärj estelmästä; 5 kuvio 18 on lohkodiagrammi datapakkausalajär jestelmästä; kuvio 19 on yksityiskohtaisempi toiminnallinen lohkodiagrammi dekooderista; kuviot 20a-20d ovat taulukoita esittäen 10 dekooderin vastaanottamia parametreja ja alakehyksen dekoodausdataa eri nopeuksilla; kuviot 21a-21c ovat taulukoita esittäen dekooderin vastaanottamia parametreja ja alakehyksen dekoodausdataa erityisissä olosuhteissa; 15 kuvio 22 on lohkodiagrammi LSP-käänteiskvan- tisointialajärjestelmästä; kuvio 23 on lohkodiagrammi, joka yksityiskohtaisemmin esittää dekooderia, jossa on jälkisuodatus ja automaattinen vahvistusohjaus; ja 20 kuvio 24 on taulukko esittäen adaptiivisen kirkkaussuodattimen ominaisuuksia.
SUOSITELLUN SUORITUSMUODON YKSITYISKOHTAINEN KUVAUS
25 Esillä olevan keksinnön mukaisesti äänistä, kuten puheesta ja/tai taustakohinasta otetaan näytteitä ja digitoidaan käyttäen hyvin tunnettuja tekniikoita.
Esimerkiksi analoginen signaali voidaan muuntaa digitaaliseen muotoon normaalilla 8 bittiä/p-laki 30 formaatilla, jota seuraa μ-laki/yhtenäiskoodimuunnos. Vaihtoehtoisesti analoginen signaali voidaan suoraan muuntaa digitaaliseen muotoon yhtenäisessä pulssikoodimodulointi (PCM) -muodossa. Kutakin näytettä 14 edustaa täten edullisessa suoritusmuodossa yksi 16 bitin datasana. Näytteet organisoidaan tulodatan kehyksiin, jolloin kukin kehys muodostuu ennalta määrätystä näytteiden lukumäärästä. Tässä esitetyssä 5 suoritusmuodossa harkitaan 8 kHz näytteenottonopeutta.
Kukin kehys koostuu 160 näytteestä tai 20 ms puhetta 8 kHz näytteenottonopeudella. On ymmärrettävää, että voidaan käyttää myös muita näytteenottonopeuksia ja kehyskokoja.
10
Vokoodauskenttä sisältää monta eri tekniikkaa puheen koodaamiseksi, joista yksi on CELP-koodaustekniikka. CELP-koodaustekniikan yhteenveto on selostettu aikaisemmin mainitussa julkaisussa "A 15 4,8kbps Code Excited Linear Predictive Coder". Esillä oleva keksintö hyödyntää erästä CELP-koodaustekniikan muotoa siten, että annetaan vaihteleva nopeus koodatussa puheessa, jossa LPC-analyysi suoritetaan vakionäytteenottolukumäärällä, ja äänentaso- ja 20 koodikirjahaut suoritetaan vaihtelevalla näytteiden lukumäärällä riippuen lähetysnopeudesta.
Käsitteellisesti CELP-koodaustekniikat, kuten sovellettuna esillä olevassa keksinnössä, selostetaan kuvien 3 ja 5 yhteydessä.
25
Esillä olevan keksinnön edullisessa suoritusmuodossa puheanalyysikehykset ovat pituudeltaan 20 ms, joka tarkoittaa sitä, että erotetut parametrit lähetetään purskeina 50 kertaa per sekunti. Edelleen datalä-30 hetysnopeutta vaihdellaan noin 8 kbpsrsta 4 kbps:iin 2 kbps ja 1 kbps:iin. Täydellä nopeudella (jota kutsutaan myös nopeudeksi 1) datalähetys tapahtuu nopeudella 8,55 kbps, kun parametrit on koodattu kussakin kehyksessä käyttäen 171 bittiä sisältäen 11 bitin sisäisen CRC:n 35 (syklinen redundanssitarkistus). Ilman CRC-bittejä 15 nopeus olisi 8 kbps. Puolella nopeudella (kutsutaan myös nopeudeksi 1/2) datalähetys tapahtuu nopeudella 4 kbps kun parametrit koodataan kutakin kehystä varten käyttäen 80 bittiä. Neljäsosanopeudella (jota kutsutaan 5 myös nopeudeksi 1/4) datalähetys on 2 kbps kun parametrit on koodattu kullakin kehyksellä käyttäen 40 bittiä. Kahdeksasosanopeudella (jota kutsutaan myös nopeudeksi 1/8) datalähetys on hieman alle 1 kbps kun parametrit koodataan kullakin kehyksellä käyttäen 16 10 bittiä.
Kuviossa 1 esitetään graafisesti esimerk inomainen analyysikehys puhedatasta 10 ja Hamming-ikkunan 12 suhde, jota käytetään LPC-analyysissä. LPC-15 analyysikehys, ja äänentaso- ja koodikirja-alakehykset eri nopeuksille esitetään graafisessa muodossa kuvissa 2a-2d. On ymmärrettävä, että LPC-analyysikehys kaikille nopeuksille on saman kokoinen.
20 Seuraavassa viitataan kuviin, ja erityisesti kuvioon la, jossa LPC-analyysi suoritetaan käyttäen 160 puhedatanäytettä kehyksestä 10, jotka ikkunoidaan käyttäen Hamming-ikkunaa 12. Kuten nähdään kuviosta la, näytteet s (n) on numeroitu 0-159 kunkin kehyksen 25 sisällä. Hamming-ikkuna 12 on sijoitettu siten, että se on siirretty kehyksen 10 sisällä 60 näytteen verran. Täten Hamming-ikkuna 12 alkaa nykyisen datakehyksen 10 60:nnestä näytteestä, s (59), ja jatkuu läpi ja sisältyen datakehyksen 14 59:teen näytteeseen s(58).
30 Painotettu data, joka generoidaan nykyiselle kehykselle, kehys 10, sisältää siksi myös dataa, joka perustuu seuraavan kehyksen, kehyksen 14, dataan.
Riippuen datalähetysnopeudesta suoritetaan 35 hakuja, joilla lasketaan äänentasosuodatin- ja koodi- 16 kirjaherätysparametrit useita kertoja datakehyksen 10 eri alakehyksillä, kuten esitetään kuvissa lb-le. On ymmärrettävä, että edullisessa suoritusmuodossa valitaan ainoastaan yksi nopeus kehykselle 10 siten, että 5 äänentaso- ja koodikirjahaut suoritetaan erikokoisissa alakehyksissä, jotka vastaavat valittua nopeutta alla selostetulla tavalla. Kuitenkin, kuvissa lb-le esitetään havainnollisuuden vuoksi alakehysrakenne äänentaso- ja koodikirjahakuja varten kehyksen 10 10 edullisen suoritusmuodon useille sallituille nopeuksille.
Kaikilla nopeuksilla esiintyy yksi LPC-laskenta kehystä 10 kohti, kuten esitetään kuviossa la.
15 Kuten esitetään kuviossa Ib täydellä nopeudella esiintyy kaksi koodikirja-alakehystä 18 kutakin äänen-tasoalakehystä 16 kohti. Täydellä nopeudella esiintyy neljä äänen tason päivitystä, yksi kutakin neljää äänentasoalakehystä 16 kohti, jotka kukin ovat 40 2 0 näytettä pitkiä (5 ms) . Edelleen täydellä nopeudella esiintyy kahdeksan koodikirjapäivitystä, yksi kutakin kahdeksaa koodikirja-alakehystä 18 kohti, kukin 20 näytettä pitkiä (2,5 ms).
25 Puolella nopeudella, kuten esitetään kuviossa lc, esiintyy kaksi koodikirja-alakehystä 22 kutakin äänentasoalakehystä 20 kohti. Äänen taso päivitetään kahdesti, kerran kutakin kahta äänentasokehystä 20 kohti kun toisaalta koodikirja päivitetään neljä ker- 30 taa, kerran kutakin neljää koodikirja-alakehystä 22 kohti. Neljäsosanopeudella, joka on esitetty kuviossa ld, esiintyy kaksi koodikirja-alakehystä 26 yhtä äänentasoalakehystä 20 kohti. Äänen taso päivitetään kerran äänentasoalakehystä 24 kohti kun toisaalta koodikirja 35 päivitetään kahdesti, kerran kutakin kahta koodikirjan 17 alakehystä 26 kohti. Kuten esitetään kuviossa le, kahdeksasosanopeudella, äänen tasoa ei määritetä ja koodikirja päivitetään ainoastaan kerran kehyksessä 28, joka vastaa kehystä 10.
5
Lisäksi, vaikkakin LPC-kertoimet lasketaan ainoastaan kerran kehystä kohti, ne interpoloidaan lineaarisesti, LSP-esityksessä (Line Spectral Pair; viivaspektripari) , jopa neljä kertaa käyttäen tuloksena 10 olevia LSP-taajuuksia edellisestä kehyksestä LPC-ana-lyysien arvioimiseksi, kun Hamming-ikkuna sijaitsee keskitetysti kussakin alakehyksessä. Poikkeus tehdään siinä, että täydellä nopeudella LPC-kertoimia ei inter-poloida koodikirjan alakehyksillä. LSP-taajuuslaskennan 15 yksityiskohtia selostetaan alla tarkemmin.
Sen lisäksi, että suoritetaan äänentaso- ja koodikirjahaut harvemmin pienemmillä nopeuksilla, käytetään myös vähemmän bittejä LPC-kertoimien lähettämi-20 seksi. Eri nopeuksilla allokoitu bittimäärä esitetään kuvissa 2a-2d. Kukin kuvista 2a-2d edustaa vokooderilla koodattujen databittien lukumäärää, jotka on allokoitu kullekin 160:lie näytteelle puheen kehyksessä. Kuvissa 2a-2d vastaavan LPC-lohkon 30a-30d lukumäärä on bittien 25 lukumäärä, jota käytetään vastaavalla nopeudella lyhyen aikavälin LPC-kertoimien koodaamiseksi. Edullisessa suoritusmuodossa LPC-kertoimien koodaamiseksi käytettyjen bittien lukumäärä täydellä, puolella, neljäsosa- ja kahdeksasosanopeuksilla ovat vastaavasti 30 40, 20, 10 ja 10.
Muuttuvan nopeuden koodauksen aikaansaamiseksi LPC:t muunnetaan ensin viivaspektripareiksi (LSP) ja tuloksena olevat LSP-taajuudet koodataan yksitellen 35 käyttäen DPCM-koodereita. LPC-järjestys on 10 siten, 18 että on 10 LSP-taajuutta ja 10 riippumatonta DPCM-kooderia. Bitin allokointi DPCM-koodereille suoritetaan taulukon 1 mukaisesti.
5 Taulukko 1
DPCM-KOODERINUMERO
123456789 10
Nopeus 1 4444444444 10 Nopeus 1/2 2222222222
Nopeus 1/4 1111111111
Nopeus 1/8 1111111111
Sekä kooderissa että dekooderissa LSP-taajuu-15 det konvertoidaan takaisin LPC-suodatinkertoimiksi ennen kuin niitä käytetään äänentaso- ja koodikirja-hauissa .
Äänentasohaussa kuvion 2a esittämällä täydellä 20 nopeudella äänentasopäivitys lasketaan neljä kertaa, kerran kutakin puhekehyksen neljäsosaa kohti. Kutakin äänentason päivitystä kohti täydellä nopeudella,' 10 bittiä käytetään uusien äänentasoparametrien koodaamiseksi. Äänentasopäivityksiä suoritetaan vaihteleva 25 lukumäärä muille nopeuksille, kuten esitetään kuvissa 2b-2d. Nopeuden laskiessa laskee myös äänentasopäivi-tysten lukumäärä. Kuviossa 2b esitetään äänentasopäivi-tykset puolinopeudelle, jotka lasketaan kahdesti, kerran kutakin puhekehyksen puolikasta kohti. 30 Vastaavasti kuviossa 2c esitetään äänentason päivitykset neljäsosanopeudelle, joka lasketaan kerran kutakin täyttä puhekehystä kohti. Kuten täydelle 19 nopeudelle, 10 bittiä käytetään uusien äänentasoparametrien koodaamiseksi kutakin puolikasta ja neljäsosanopeusäänentasopäivitystä varten. Kuitenkin kahdeksasosanopeudelle, kuten esitetään kuviossa 2d ei 5 lasketa äänentasopäivitystä, koska tätä nopeutta käytetään kehyksien koodaamiseksi silloin, kun ainoastaan vähän tai ei yhtään puhetta esiinny ja äänentasoredundansseja ei esiinny.
10 Kullekin 10 bitin äänentasopäivitykselle, 7 bittiä edustavat äänen tason hidastusta ja 3 bittiä edustavat äänen tason vahvistusta. Äänen tason hidastus on rajoitettu välille 17-143. Äänen tason vahvistus kvantisoidaan lineaarisesti välille 0-2 esitettäväksi 15 3-bittisellä arvolla.
Koodikirjahausta esitetään täysinopeus kuviossa 2a, jolloin koodikirjapäivitys lasketaan kahdeksan kertaa, kerran kutakin nopeuskehystä 1/8 20 kohti. Kutakin koodikirjapäivitystä täydellä nopeudella kohden käytetään 10 bittiä uusien koodikirjaparametrien koodaamiseksi. Koodikirjapäivityksiä suoritetaan muilla nopeuksilla vaihteleva lukumäärä, kuten kuviot 2b-2d esittävät. Kuitenkin, nopeuden laskiessa myös 25 koodikirjapäivitykset laskevat. Kuviossa 2b esitetään koodikirjapäivitys 1/2-nopeudelle, joka lasketaan neljä kertaa, kerran kutakin nopeuskehystä 1/4 kohti. Kuvio 2c esittää koodikirjapäivitykset 1/4-nopeudelle, jotka lasketaan kahdesti, kerran kutakin nopeuskehystä 1/2 30 kohti. Kuten täydelle nopeudelle, tässäkin käytetään 10 bittiä uusien koodikirjaparametrien koodaamiseksi kutakin 1/2- ja 1/4-nopeusäänentason päivitystä kohti. Lopuksi kuviossa 2d esitetään koodikirjapäivitykset 1/8-nopeudelle, jotka lasketaan kerran kullakin täyden 35 nopeuden kehyksellä. On huomattava, että 1/8-nopeudella 20 6 lähetetään, josta 2 bittiä edustavat koodikirjan vahvistusta ja muut 4 bittiä ovat satunnaistittejä. Koodikirjapäivitystä selostetaan yksityiskohtaisemmin alla.
5
Bitit, jotka on varattu koodikirjan päivityksiä varten, edustavat databittejä, joita tarvitaan äänen tason ennustuksen jäännöksen vektorikvantisoimiseksi. Täydelle, 1/2- ja 1/4— 10 nopeuksille kukin koodikirjapäivitys koostuu 7 bitistä koodikirjaindeksiä ja lisäksi 3 bitistä koodikirjavahvistusta, eli yhteensä 10 bittiä. Koodikir javahvistus koodataan käyttäen differentiaalista pulssikoodimodulaatio (DPCM) -kooderia, joka toimii 15 log-alueella. Vaikkakin samanlaista bittijärjestelyä voidaan käyttää 1/8-nopeudelle, vaihtoehtoinen järjestely on suositeltava. 1/8-nopeudella koodikirjavahvistus esitetään 2:11a bitillä kun taas 4:ää satunnaisgeneroitua bittiä käytetään yhdessä 20 vastaanotetun datan kanssa syöttönä näennäissa- tunnaislukugeneraattorille, joka korvaa koodikirjan.
Seuraavassa viitataan kuvion 3 kooderin lohko-diagrammiin, jossa LPC-analyysi suoritetaan avoimen 25 silmukan tilassa. Kustakin tulon puhenäytteen s(n) kehyksestä lasketaan näiden LPC-kertoimia (αι-αιο) r kuten selostetaan myöhemmin, LPC-analyysillä/kvan-tisoinnilla 50 käytettäväksi formanttisynteesisuodatti-messa 60.
30 Äänentasohaun lasku suoritetaan kuitenkin suljetun silmukan muodossa, jota usein kutsutaan analyysi/synteesimenetelmäksi. Sovelluksessa käytetään kuitenkin uutta hybridiä suljetun silmukan / avoimen 35 silmukan tekniikkaa äänentasohaun toteuttamiseksi.
21 Äänentasohaussa koodaus suoritetaan valitsemalla parametrit, jotka minimoivat keskineliövirheen tulopuheen ja syntetisoidun puheen välillä. Asian yksinkertaistamiseksi, tässä osassa selostusta nopeutta 5 ei huomioida. Valitun nopeuden vaikutusta äänen tasoon ja koodikirjahakuihin selostetaan seuraavassa tarkemmin.
Kuviossa 3 esitetyssä käsitteellisessä 10 suoritusmuodossa havainnollista painosuodatinta 52 karakterisoi seuraavat kaavat: W(z) = ΑΦ— A(z! μ) ^2) 15 jossa 10 A(z) = l-Yjalz~l (2) on formantti ennustussuodatin ja μ on havainnollinen 20 painoparametri, joka tässä esimerkinomaisessa suoritusmuodossa on μ = 0,8. Äänen- tasosynteesisuodatinta 58 karakterisoi seuraava kaava: 1 = 1 P(z)~l-bz~L (3) 25
Formanttisynteesisuodatinta 60, joka on painotettu suodatin, kuten selostetaan alla, karakterisoi seuraava kaava: 22 ill 1 H(z) = —W(z) = —-— UO)J Λ(ζ/μ) (4)
Tulon puhenäytteet s(n) painotetaan havainnollisella 5 painosuodattimella 52 siten, että painotetut puhenäytteet x(n) annetaan summaimen 62 summaustuloon. Havainnollista painotusta hyödynnetään virheen painottamiseksi taajuuksilla, joilla on vähemmän signaalitehoa. Näillä matalammilla signaalitehon 10 taajuuksilla kohina on havainnollisemmin huomattavissa. Syntetisoidut puhenäytteet x' (n) annetaan lähtönä formanttisynteesisuodattimelta 60 summaimen 62 ero-tustuloon, jossa se vähennetään x(n) näytteistä. Summaimen 62 antona annettujen näytteiden erotus annetaan 15 lähtönä keskimääräisen neliövirheen (MSE) -elementille 64, jossa ne korotetaan toiseen potenssiin ja tämän jälkeen summataan. MSE-elementin 64 tulokset annetaan minimointielementille 66, joka generoi arvot äänentasohidastukselle L, äänentasovahvistukselle b, 20 koodikirjaindeksille I ja koodikirjavahvistukselle.
Minimointielementissä 66 kaikki L:n mahdolliset arvot, äänen tason hidastusparametri P (z):ssa, syötetään äänen tason synteesisuodattimelle 58 yhdessä 25 arvon c(n) kanssa kertojalta 56. Äänentasohaun aikana ei esiinny koodikirjan vaikutusta, eli c(n) =0. L:n ja b:n arvot, jotka minimoivat painotetun virheen tulopu-heen ja syntetisoidun puheen välillä valitaan minimoin-tielementillä 66. Äänen tason synteesisuodatin 58 gene-30 roi ja antaa antona arvon p(n) for-manttisynteesisuodattimelle 60. Kun kerran äänentasohidastus L ja äänentasovahvistus b on löydetty äänentasosuodattimelle, koodikirjahaku suoritetaan samalla tavalla.
23
On ymmärrettävä, että kuvio 3 on käsitteellinen esitys analyysi-synteesinäkökohdasta, jota käytetään esillä olevassa keksinnössä. Esillä 5 olevan keksinnön esimerkinomaisessa sovelluksessa suodattimia ei käytetä tyypillisessä suljetun silmukan takaisinkytkentäkokoonpanossa. Esillä olevassa keksinnössä takaisinkytkentäliitäntä katkaistaan haun aikana ja korvataan avoimen silmukan 10 formanttijäännöksellä, jonka yksityiskohtia selostetaan seuraavassa tarkemmin.
Minimointielementti 66 generoi tämän jälkeen arvot koodikirjaindeksille I ja koodikirjan vahvistuk-15 selle G. Antoarvot koodikirjalta 54, jotta valitaan useista satunnaisista gaussivektoriarvoista koodikirjan indeksin I mukaisesti, kerrotaan kertojassa 56 koodi-kirjan vahvistuksella G, jolloin tuotetaan arvojen c(n) sekvenssi, jota käytetään äänen tason synteesisuodatti-20 raessa 58. Koodikirjan indeksi I ja koodikirjan vahvis tus G, jotka minimoivat keskimääräisen neliövirheen, valitaan lähetystä varten.
On huomattava, että havainnollinen painotus 25 W(z) sovitetaan sekä tulopuheeseen havainnollisella painosuodattimella 52 ja syntetisoituun puheeseen painotusfunktiolla, joka on sisällytetty formanttisynteesisuodattimeen 60.
Formanttisynteesisuodatin 60 on siksi todellisuudessa 30 painotettu formanttisynteesisuodatin, joka yhdistää kaavan 1 painotusfunktion tyypilliseen formanttiennustussuodatusominaisuuteen —-— jolloin A(z) saadaan kaavan 3 painotettu formanttisynteesifunktio.
24
On ymmärrettävä, että vaihtoehtona havainnollinen painotussuodatin 52 voidaan sovittaa summaimen 52 ja MSE-elementin 64 väliin. Tällöin formanttisynteesisuodattimella 60 olisi normaali 5 suodatinommaisuus -------- A(z) '
Kuviossa 4 esitetään vuokaavio vaiheista, jotka liittyvät puheen koodaukseen kuvion 3 kooderilla. Selityksen takia nopeusvalintaan liittyvät vaiheet on 10 sisällytetty kuvion 4 vuokaavioon. Digitoidut puhenäytteet saadaan, lohko 80, näytteenottopiiristä, josta LPC-kertoimet sitten lasketaan, lohko 82. Osana LPC-kertoimen laskennasta käytetään Hamming-ikkunaa ja autokorrelointitekniikkaa. Aluksi valitaan alkunopeus, 15 lohko 84, kiinnostavalle kehykselle perustuen edullisen suoritusmuodon kehysenergiaan.
LPC-kertoimien koodaamiseksi tehokkaasti pienellä bittimäärällä LPC-kertoimet muunnetaan 20 linjaspektripari (LSP) -taajuuksiksi, lohko 86, ja kvantisoidaan tämän jälkeen, lohko 88, lähetystä varten. Optiona voidaan suorittaa lisänopeusmääritys, lohko 90, jolloin nopeuden lisäys suoritetaan mikäli LSP:iden kvantisointia alkunopeudelle pidetään 25 riittämättömänä, lohko 92.
Puhekehyksen ensimmäiselle äänen tason alakehykselle, jota analysoidaan, LSP-taajuudet interpoloidaan ja muunnetaan LPC-kertoimiksi, lohko 94, 30 käytettäväksi suoritettaessa äänentasohakua.
Äänentasohaussa koodikirjaheräte asetetaan nollaksi. Äänentasohaussa, lohkot 96 ja 98, joka on analyysi/synteesimenetelmä, kuten aikaisemmin selostettiin kullekin mahdolliselle 25 äänentasohidastukselle L, syntetisoitua puhetta verrataan alkuperäiseen puheeseen. Kullekin L:n arvolle, joka on kokonaisluku, määritetään optimi äänentasovahvistus b. L- ja b-arvojen joukosta optimi 5 L- ja b-arvojoukko antaa minimin havainnollisesti painotetun keskiarvoneliövirheen syntetisoidun puheen ja alkuperäisen puheen välillä. L:n ja b:n määritetyille optimiarvoille tuolle äänen tason alake-hykselle, arvo b kvantisoidaan, lohko 100, lähetettä-10 väksi yhdessä vastaavan L-arvon kanssa. Vaihtoehtoisessa äänentasohaun toteutuksessa arvot b voivat olla kvantisoituja arvoja osana äänentasohakua, jolloin näitä kvantisoituja arvoja käytetään suoritettaessa äänentasohakua. Siksi valitun b-arvon kvantisointitarve 15 tässä toteutuksessa äänentasohaun jälkeen, lohko 100, eliminoituu.
Ensimmäiselle puhekehyksen koodikirja-alake-hykselle, joka analysoidaan, LSP-taajuudet interpoloi-20 daan ja muunnetaan LPC-kertoimiksi, lohko 102, käytettäväksi koodikirjahaun yhteydessä. Kuitenkin, esimerkinomaisessa suoritusmuodossa LSP-taajuudet interpoloidaan täydellä nopeudella ainoastaan alas äänen tason alakehyksen tasolle. Tämä interpolointi ja 25 muunnosaskel suoritetaan koodikirjahaulle sen lisäksi, että suoritetaan äänentasohaku, joka johtuu erotuksesta äänen tasossa ja koodikirjan alakehyksen koossa kullekin nopeudelle, paitsi nopeudelle 1/8, jossa asia on kiistanalainen, koska äänentasodataa ei lasketa. 30 Koodikirjahaussa, lohkot 104 ja 106, käytetään optimia äänentasohidastuksen L ja äänentasovahvistuksen b arvoja äänen tason synteesisuodattimessa siten, että kullekin mahdolliselle koodikirja-indeksille I syntetisoitua puhetta verrataan alkuperäiseen 35 puheeseen. Kullekin I:n arvolle, joka on kokonaislukuarvo, määritetään optimi koodi- 26 kirjavahvistus G. I- ja G-arvojen joukosta optimit I-ja G-arvot tarjoavat minimivirheen syntetisoidun puheen ja alkuperäisen puheen välillä. Määritetyille I- ja G-optimiarvoille koodikirjan alakehykselle arvo G kvan-5 tisoidaan, lohko 108, lähetettäväksi yhdessä vastaavan arvon I kanssa. Jälleen vaihtoehtoisessa koodikirjahaun toteutuksessa G-arvot voidaan kvantisoida koodikirjan haun osana siten, että näitä kvantisoituja arvoja käytetään koodikirjahakua suoritettaessa. Tässä 10 vaihtoehtoisessa toteutuksessa valitun G-arvon kvantisointitarve koodikirjahaun jälkeen, lohko 108, eliminoituu.
Koodikirjahaun jälkeen kooderin sisältä 15 ajetaan dekooderi optimiarvoilla I, G, L ja b. Kooderin dekooderin ajaminen rekonstruoi kooderin suodatinmuistit käytettäväksi tulevissa alakehyksissä.
Tämän jälkeen tarkistetaan, lohko 110, sen 20 määrittämiseksi, oliko koodikirjan alakehys, jolle analyysi äskettäin suoritettiin loppuun, viimeinen koodikirjan alakehys koodikirjan alakehysten joukosta, joka vastaa äänen tason alakehystä, jolle äänentasohaku suoritettiin. Toisin sanoen määritetään, esiintyykö 25 lisää koodikirjan alakehyksiä, jotka vastaavat äänen tason alakehystä. Esimerkinomaisessa suoritusmuodossa on ainoastaan kaksi koodikirjan alakehystä äänen tason alakehystä kohti. Mikäli määritetään, että on myös toinen koodikirjan alakehys, joka vastaa 30 äänentasokehystä, vaiheet 102-108 toistetaan tälle koodikirjan alakehykselle.
Mikäli ei esiinny enempää koodikirjan alakehyksiä, jotka vastaavat äänentason kehystä, tarkiste-35 taan lohkossa 112, määrittämään esiintyykö muita äänen 27 tason alakehyksiä analyysin kohteena olevassa puhekehyksessä. Mikäli esiintyy toinen äänen tason alakehys analysoitavassa nykyisessä puhekehyksessä, vaiheet 94-110 toistetaan kullekin äänen tason 5 alakehykselle ja vastaaville koodikirjan alakehyksille. Kun kaikki laskennat analysoitavalle nykyiselle puhekehykselle on suoritettu, arvot, jotka edustavat LPC-kertoimia puhekehykselle, äänen tason hidastus L ja vahvistus b kullekin äänen tason alakehykselle, ja 10 koodikirjan indeksi I ja vahvistus G kullekin koodikirjan alakehykselle pakataan lähettämistä varten, lohko 114.
Viitataan kuvioon 5, esitetään 15 dekooderilohkodiagrammi, jossa LPC-kertoimien (oij.:t) vastaanotettuja arvoja, äänen tason hidastuksia ja vahvistuksia (L & b) ja koodikirjan indeksejä ja vahvistuksia (I & G) käytetään puheen syntetisoimiseksi. Jälleen kuviossa 5, kuten kuviossa 3, ei huomioida no-20 peusinformaatiota asian yksinkertaistamiseksi.
Datanopeusinformaatio voidaan lähettää sivuinformaationa ja eräässä tapauksessa se voidaan johtaa kanavan demodulointivaiheessa.
25 Dekooderi koostuu koodikirjasta 130, joka annetaan vastaanotettujen koodikirjaindeksien kanssa, tai 1/8-nopeudelle satunnaissyötöstä. Koodikirjan 130 anto annetaan kertojan 132 yhteen tuloon, ja kertojan 132 toinen tulo vastaanottaa koodikirjan vahvistuksen 30 G. Kertojan 132 anto annetaan yhdessä äänen tason hidastuksen L ja vahvistuksen b kanssa äänen tason synteesisuodattimelle 134. Äänen tason synteesisuodattimen 134 anto annetaan yhdessä LPC-kertoimien a± kanssa formanttisynteesisuodattimelle 136. 35 Formanttisynteesisuodattimen 136 anto annetaan 28 adaptiiviselle jälkisuodattimelle 138, josta saadaan antona suodatettu rekonstruoitu puhe. Kuten alla olevasta ilmenee, dekooderin versio toteutetaan kooderin sisällä. Kooderin dekooderi ei sisällä adaptiivista 5 jälkisuodatinta 138, mutta sisältää havainnollisen painotuksen suodattimen.
Kuvio 6 on vuokaavio kuvion 5 dekooderin toiminnasta. Dekooderissa puhe rekonstruoidaan vas-10 taanotetuista parametreista, lohko 150. Erityisesti koodikirjaindeksin vastaanotettu arvo syötetään koodikirjaan, joka generoi koodivektorin, tai koodikirjan antoarvon, lohko 152. Kertoja vastaanottaa koodivektorin yhdessä vastaanotetun koodikirjan 15 vahvistuksen G kanssa ja kertoo nämä arvot, lohko 154, ja näin saatu signaali annetaan äänen tason synteesisuodattimelle. On huomattava, että koodikirjan vahvistus G rekonstruoidaan dekoodaamalla ja käänteiskvantisoimalla vastaanotetut DPCM-parametrit. 20 Äänen tason synteesisuodattimelle annetaan vastaanotetun äänen tason hidastuksen L ja vahvistuksen b arvot yhdessä kertojan antosignaalin kanssa siten, että kertojan anto suodatetaan, lohko 156.
25 Arvot, jotka saadaan koodikirjavektorin suodatuksesta äänen tason synteesisuodattimella, syötetään formanttisynteesisuodattimeen.
Formanttisynteesisuodattimelle annetaan myös LPC-kertoimet 0^:t, joita käytetään äänen tason 30 synteesisuodattimen antosignaalin suodatuksessa, lohko 158. LPC-kertoimet rekonstruoidaan dekooderissa interpolointia varten dekoodaamalla vastaanotetut DPCM-parametrit kvantisoiduiksi LSP-taajuuksiksi, käänteiskvantisoidaan LSP-taajuudet ja muunnetaan LSP-35 taajuudet LPC-kertoimiksi cg:t.
29
Formanttisynteesisuodattimen anto annetaan adaptiiviselle jälkisuodattimelle, jossa kvantisointi-kohina maskataan, ja rekonstruoitu puhe vahvistusohjataan, lohko 160. Rekonstruoitu puhe annetaan antona, 5 lohko 162, analogiseen muotoon muuntamista varten.
Viitaten nyt kuvien 7a ja 7b lohko-diagrammiesityksiin, kuvataan yksityiskohtaisemmin esillä olevan keksinnön mukaisia puheen 10 koodaustekniikoita. Kuviossa 7a digitoitujen puhenäytteiden kukin kehys annetaan Hamming-ikkuna-alajärjestelmään 200, jossa tulopuhe ikkunoidaan ennen autokorrelointikertoimien laskentaa autokorrelointialajärjestelmässä 202.
15
Hamming-ikkuna-alajärjestelmä 200 ja autokorrelointialajär jestelmä 202 esitetään kuviossa 8 esimerkinomaisena toteutuksena. Hamming-ikkuna- alajär j estelmä 200, joka koostuu hakutaulukosta 250, 20 joka tyypillisesti on 80xl6-bittinen lukumuisti (ROM), ja kertojasta 252. Kullekin nopeudelle puheen ikkuna keskitetään 139:nnen ja 140:nnen näytteen väliin kullakin analyysikehyksellä, joka on 160 näytettä pitkä. Ikkuna, jossa lasketaan 25 autokorrelointikertoimet, siirretään täten analyysike-hyksestä 60:llä näytteellä.
Ikkunointi suoritetaan käyttäen ROM-taulukkoa, joka sisältää 80 160:stä WH(n)-arvoista, koska Hamming-30 ikkuna on symmetrinen keskuksen ympärillä. Hamming-ikkunan siirtymä aikaansaadaan vinouttamalla ROM: n osoitteen osoitin 60:llä positiolla suhteessa analyysikehyksen ensimmäiseen näytteeseen. Nämä arvot kerrotaan yhdellä täsmäyksellä vastaavilla tulopuheen 35 näytteillä kertojassa 252. Annetaan s(n):n olla 30 tulopuhesignaali analyysi-ikkunassa. Ikkunoitu puhesignaali sw(n) määritetään tällöin: sw(n) = s(n+60) WH(n) 0 <= n <= 79 (5) 5 ja
Sw (n) = s(n+60) WH(159-n) 80 <= n <= 159. (6)
Esimerkinomaiset arvot, heksadesimaaleina, hakutaulukon 250 sisällöstä esitetään taulukossa II. 10 Nämä arvot tulkitaan kahden komplementtilukuina, joissa on 14 murtolukubittiä, ja jossa taulukkoa luetaan vasemmalta oikealle ja ylhäältä alas.
15
TAULUKKO II
0x051f 0x0525 0x0536 0x0554 0x057d 0x05bl 0x05f2 0x063d 20 0x0694 0x06f6 0x0764 0x07dc 0x085e 0x08ec 0x0983 0x0a24
OxOadO 0x0b84 0x0c42 0x0d09 0x0dd9 OxOebO 0x0f90 0x1077 0x1166 0x125b 0x1357 0x1459 0x1560 0xl66d 0xl77f 0x1895 0xl9af Oxlacd Oxlbee Oxldll 0xle37 0xlf5e 0x2087 0x21b0 0x22da 0x2403 0x252d 0x2655 0x277b 0x28a0 0x29c2 0x2ael 25 0x2bfd 0x2dl5 0x2e29 0x2f39 0x3043 0x3148 0x3247 0x333f 0x3431 0x351c 0x3600 0x36db 0x37af 0x387a 0x393d 0x39f6 0x3aa6 0x3b4c 0x3be9 0x3c7b 0x3d03 0x3d80 0x3df3 0x3e5b 0x3eb7 0x3f09 0x3f4f 0x3f89 0x3fb8 0x3fdb 0x3ff3 0x3fff 31
Autokorrelointialajärjestelmään 202 kuuluu rekisteri 254, multiplekseri 256, siirtorekisteri 258, kertoja 260, summain 262, rengassiirtorekisteri 264 ja puskuri 266. Ikkunoidut puhenäytteet sw(n) lasketaan 5 joka 20. ms ja lukitaan rekisteriin 254. Näytteellä sw(0) ensimmäinen LPC-analyysikehyksen näyte, siirto-rekisterit 258 ja 264 nollataan arvoksi 0. Kullakin uudella näytteellä sw(n) multiplekseri 256 vastaanottaa uuden näytevalintasignaalin, joka mahdollistaa näytteen 10 siirtymisen rekisteristä 254. Uusi näyte sw(n) myös annetaan kertojalle 260, jossa kerrotaan näytteellä sw(n-10), joka sijaitsee siirtorekisterin 258 viimeisessä positiossa SR10. Saatu arvo lisätään summaimessa 262 rengassiirtorekisterin 264 viimeisen 15 position CSR11 arvolla.
Siirtorekisterit 258 ja 260 kellotetaan kerran, korvaten sw(n-l):n sM(n):llä siirtorekisterin 258 ensimmäisessä positiossa SRI ja korvaten arvon, joka 20 aikaisemmin oli positiossa CSR10. Siirtorekisterin 258 kellotuksessa uusi näytevalintasignaali poistetaan otosta multiplekseriin 256 siten, että näyte sw(n-9), joka sillä hetkellä sijaitsee siirtorekisterin 260 positiossa SR10 sallitaan siirtyä multiplekseriin 256. 25 Rengassiirtorekisterissä 264 arvo, joka aikaisemmin oli positiossa CSR11, siirretään ensimmäiseen positioon CSRl. Kun uusi näytteenvalintasignaali on poistettu multiplekseristä, siirtorekisteri 258 asetetaan antamaan siirtorekisterin datalle rengassiirto 30 vastaavasti kuin rengassiirtorekisteri 264.
Siirtorekistereitä 258 ja 264 kellotetaan molempia 11 kertaa yhteensä jokaiselle näytteelle siten, että suoritetaan 11 kerto/koontitoimintoa. Sen jälkeen, 35 kun 160 näytettä on kellotettu, autokor- 32 relointitulokset, jotka sijaitsevat rengassiirtorekisterissä 264, kellotetaan puskuriin 266 arvoina R(0)-R(10). Kaikki siirtorekisterit nollataan, ja prosessi toistuu ikkunoitujen puhenäytteiden 5 seuraavalle kehykselle.
Viitaten kuvioon 7a, kun autokorrelointikertoimet on laskettu puhekehykselle, nopeusmääritysalajärjestelmä 204 ja LPC-ana-10 lyysialajärjestelmä 206 käyttävät tätä dataa laskemaan vastaavasti kehysdatanopeus ja LPC-kertoimet. Koska nämä toiminnot ovat riippumattomia toisistaan ne voidaan laskea missä tahansa järjestyksessä tai jopa samanaikaisesti. Selitystarkoituksessa selostetaan 15 nopeuden määritys ensin.
Nopeudenmääritysalajärjestelmällä 204 on kaksi funktiota: (1) sillä määritetään nykyisen kehyksen nopeus, ja (2) sillä lasketaan taustakohinatason uusi 20 estimaatti. Nykyisen analyysikehyksen nopeus määritetään alun perin nykyisen kehyksen energian perusteella, aikaisemman taustakohinatason estimaatin perusteella, aikaisemman nopeuden perusteella ja nopeuskäskyn perusteella ohjausmikroprosessorilta. Uusi 25 taustakohinataso estimoidaan käyttäen aikaisempaa taustakohinatason estimaattia ja nykyistä kehysenergiaa.
Esillä olevassa keksinnössä hyödynnetään 30 adaptiivista kynnystekniikkaa nopeuden määrittämiseksi. Taustakohinan muuttuessa muuttuu myös kynnykset, joita käytetään nopeuden valinnassa. Esimerkinomaisessa suoritusmuodossa lasketaan kolme kynnystä alustavan nopeusvalinnan RTP määrittämiseksi. Kynnysarvot ovat 35 edellisen taustakohinaestimaatin neliöintifunktioita, 33 ja ovat seuraavanlaisia:
Tl (B) = -5,544613(10~S)B2+4,047152B+363,1293; (7) 5 T2(B) = -1,529733(10_5)B2+8,750045B+1136,214; (8) ja T3(B) = -3, 957050 (10~5)B2+18,89962B+3346, 789 (9) jossa B on aikaisempi taustakohinaestimaatti.
10
Kehysenergiaa verrataan kolmeen kynnykseen Tl (B), T2(B) ja T3(B) . Mikäli kehysenergia on näiden kaikkien kynnysarvojen alapuolella, valitaan pienin lähetysnopeus (1 kbps), nopeus 1/8, jossa RTP =' 4. 15 Mikäli kehysenergia on kahden kynnyksen alapuolella, valitaan toinen lähetysnopeus (2 kbps), nopeus 1/4, jossa RTP = 3. Mikäli kehysenergia on vain yhden kynnyksen alapuolella, valitaan kolmas lähetysnopeus (4 kbps), nopeus 1/2, jossa RTP = 2. Mikäli kehysenergia on 20 kaikkien kynnysten yläpuolella, valitaan suurin lähetysnopeus (8 kbps), nopeus 1, jossa RTP = 1.
Alustavaa nopeutta RTP voidaan tämän jälkeen modifioida perustuen aikaisemman kehyksen lop-25 punopeuteen RTT. Mikäli alustava nopeus RTP on vähemmän kuin aikaisemman kehyksen lopullinen nopeus vähennettynä yhdellä (RTT-1) , asetetaan välinopeus RTm, jossa RTm = (RTX-1). Tämä modifiointiprosessi aiheuttaa sen, että nopeus hitaasti laskee kun siirtymä suuren 30 energian signaalista matalan energian signaaliin esiintyy. Kuitenkin mikäli alkunopeusvalinta on yhtä kuin tai suurempi kuin aikaisempi nopeus vähennettynä yhdellä (RTT-1), välinopeus RTm asetetaan samaksi kuin 34 aikaisempi nopeus RTP, eli RTm = RTP. Tässä tilanteessa nopeus siten lisääntyy välittömästi kun tapahtuu siirtymä matalan energian signaalista korkean energian signaaliin.
5
Lopuksi välinopeutta RTm modifioidaan edelleen nopeudesta riippuvilla käskyillä mikroprosessorilta. Mikäli nopeus RTm on suurempi kuin suurin sallittu nopeus mikroprosessorin taholta, alkunopeus RTi asete-10 taan suurimpaan hyväksyttävään arvoon. Vastaavasti, mikäli välinopeus RTm on pienempi kuin pienin sallittu nopeus mikroprosessorin taholta, alkunopeus RT± asetetaan pienimpään hyväksyttävään arvoon.
15 Tietyissä tapauksissa voi olla toivottavaa koodata kaikki puhe nopeudella, jonka mikroprosessori määrittää. Nopeudesta riippuvia käskyjä voidaan käyttää kehysnopeuden asettamiseksi toivotulla nopeudella asettamalla maksimi ja minimi hyväksyttävät nopeudet 20 toivotulle nopeudelle. Nopeudesta riippuvia käskyjä voidaan käyttää erityisissä nopeuden ohjaustilanteissa, kuten nopeuden keskinäinen lukitus, ja häive- ja purskelähetyksissä, joita molempia selostetaan j älj empänä.
25
Vaihtoehtoisessa suoritusmuodossa LPC-vakiot voidaan laskea ennen nopeuden määritystä. Koska lasketut LPC-vakiot heijastavat tulopuhekehyksen spektriominaisuuksia, vakioita voidaan käyttää 30 ilmaisuna puheaktiviteetista. Siten nopeuden määritys voidaan tehdä laskettujen LPC-vakioiden perusteella.
Kuvio 9 antaa esimerkinomaisen toteutuksen nopeusmääritysalgoritmista. Laskennan alkajaisiksi 35 rekisteriin 270 ladataan arvo 1, joka annetaan suramaimeen 272. Rengassiirtorekistereihin 274, 276 ja 278 ladataan vastaavasti ensimmäinen, toinen ja kolmas kerroin neliökynnyskaavoista (7)-(9). Esimerkiksi 5 rengassiirtorekisterin 274 viimeiseen, keskimmäiseen ja ensimmäiseen positioon ladataan vastaavasti ensimmäinen kerroin kaavoista, joista Tl, T2 ja T3 lasketaan. Vastaavasti rengassiirtorekisterin 276 viimeiseen, keskimmäiseen ja ensimmäiseen positioon ladataan 10 vastaavasti toinen kerroin kaavoista, joista Tl, T2 ja T3 lasketaan. Lopuksi rengassiirtorekisterin 278 viimeiseen, keskimmäiseen ja ensimmäiseen positioon ladataan vastaavasti vakiotermikaavoista, joista Tl, T2 ja T3 lasketaan. Kussakin rengassiirtorekistereistä 15 274, 276 ja 278 arvo annetaan lähtönä viimeisestä positiosta.
Laskettaessa ensimmäinen kynnys Tl, aikaisempi kehystaustakohinaestimaatti B neliöidään kertomalla 20 arvo itsellään kertojassa 280. Näin saatu B2-arvo kerrotaan ensimmäisellä kertoimella, -5,544613(10~6) , joka annetaan lähtönä rengassiirtorekisterin 274 viimeisestä positiosta. Tämä saatu arvo lisätään summaimessa 286 taustakohinan B ja toisen kertoimen, 25 4,047152, tuloon, joka on saatu lähtönä rengassiir torekisterin 276 viimeisestä positiosta, kertojasta 284. Summaimen 286 antoarvo lisätään tämän jälkeen summaimessa 288 vakiotermin, 363.1293, kanssa, joka on annettu lähtönä rengassiirtorekisterin 278 viimeisestä 30 positiosta. Summaimen 288 anto on Tl:n laskettu arvo.
Tl: n laskettu arvo, joka annetaan lähtönä summaimelta 290, vähennetään summaimessa 288 kehyksen energia-arvosta Ef, joka esimerkinomaisessa 35 suoritusmuodossa on arvo R(0) lineaarialueella, ja joka 36 on saatu autokorrelointialajärjestelmästä.
Vaihtoehtoisessa toteutuksessa kehysenergia Ef voidaan myös esittää log-alueella desibeleinä (dB), 5 jossa se approksimoidaan ensimmäisen autokorre- lointikertoimen R(0)-logaritmilla, joka on normalisoitu tehokkaalla ikkunapituudella: jri 1ft1 R(0)
Ef = 101og10——- LAIZ (10) 10 jossa La on autokorreloinnin ikkunapituus. On myös ymmärrettävä, että ääniaktiviteetti voidaan myös mitata monista muista parametreista, sisältäen äänentason ennustusvahvistuksen tai formanttiennustusvahvistuksen 15 Ga: rOO) G a =101og10-^y- (11) jossa E(10) on ennustejäännösenergia 10:nnen iteraation 20 jälkeen ja E(0) on LPC-ennustejäännösenergian alkuarvo, kuten selostetaan jäljempänä LPC-analyysin yhteydessä, joka on sama kuin R(0).
Summaimen 290 annosta näin saadun kahden komp-25 lementin erotuksen etumerkkibitti poistetaan komparaattorissa tai rajoittimessa 292 ja annetaan summaimelle 272, jossa se lisätään rekisterin 270 antoon. Täten, mikäli erotus R(0):n ja Tl:n välillä on positiivinen, rekisteriä 270 lisätään yhdellä. Mikäli erotus on 30 negatiivinen rekisteri 270 pysyy samana.
37
Rengasrekistereitä 274, 276 ja 278 kierretään tämän jälkeen siten, että T2:n kaavan, kaava (8), kertoimet esiintyvät tämän annossa. Prosessi 5 kynnysarvon T2 laskemiseksi ja sen vertaamiseksi kehysenergiaan toistetaan, kuten todettiin kynnysarvon Tl prosessin yhteydessä. Rengasrekistereitä 274, 276 ja 278 kierretään tämän jälkeen taas siten, että T3:n kaavan, kaava (9), kertoimet esiintyvät tämän annossa. 10 Kynnysarvon T3 laskeminen ja kehysenergian vertailu selostettiin yllä. Sen jälkeen, kun kaikki kolme kynnysarvolaskentaa ja vertailua on suoritettu, rekisteri 270 sisältää alkuperäisen nopeusestimaatin RTi. Alustava nopeusestimaatti RTP annetaan nopeuden 15 alasramppilogiikkaan 294. Logiikkaan 294 annetaan myös aikaisemman kehyksen loppunopeus RTX LSP- taajuuskvantisointialajärjestelmästä, joka on talletettu rekisteriin 298. Logiikka 296 laskee arvon (RTT-1) ja antaa antona suuremman arvoista alustava 2 0 nopeusestimaatti RTP ja arvo (RTX-1) . Arvo RTm annetaan nopeuden rajoitinlogiikkaan 296.
Kuten mainittiin aikaisemmin, mikroprosessori tuottaa nopeusrajakäskyjä vokooderille, erityisesti 25 logiikalle 296. Digitaalisen signaalin prosessorisovelluksessa tämä käsky vastaanotetaan logiikassa 296 ennen kuin LPC-analyysiosa koodausprosessista on suoritettu loppuun. Logiikka 296 varmistaa, että nopeus ei ylitä nopeusrajoja, ja 30 modifioi arvon RTm, mikäli tämä ylittää rajat. Mikäli arvo RTm on sallittujen nopeuksien alueella tämä annetaan lähtönä logiikasta 296 alkunopeusarvona RTi. Alkunopeusarvo RTi annetaan lähtönä logiikasta 296 LSP-kvantisointialajärjestelmälle 210 kuviossa 7a.
35 38
Taustakohinaestimaattia, kuten mainittiin aikaisemmin, käytetään adaptiivisen nopeuden kynnysten laskemiseksi. Nykyiselle kehykselle edellisen kehyksen taustakohinaestimaattia B käytetään nopeuskynnysten 5 aikaansaamiseksi nykyiselle kehykselle. Kuitenkin kullekin kehykselle taustakohinaestimaattia päivitetään käytettäväksi nopeuskynnysten määrityksessä seuraavalle kehykselle. Uusi taustakohinaestimaatti B' määritetään kyseisessä kehyksessä perustuen edellisen kehyksen 10 taustakohinaestimaattiin B ja nykyisen kehyksen energiaan Ef.
Uuden taustakohinaestimaatin B' määrityksessä käytettäväksi seuraavan kehyksen aikana (kuten aikai-15 sempi kehyksen taustakohinaestimaatti B) , kaksi arvoa lasketaan. Ensimmäinen arvo Vi on yksinkertaisesti nykyinen kehysenergia Ef. Toinen arvo V2 on suurempi arvoista B+l ja KB, jossa K=l,00547. Sen estämiseksi, että toinen arvo kasvaa liian suureksi pakotetaan se 20 olemaan alle suuren vakion M=160 000. Pienempi kahdesta arvosta Vi tai V2 valitaan uudeksi taustakohinaestimaatiksi B'.
Matemaattisesti 25
Vi = R(0) (12) V2 = min (160000, max (KB, B+l) (13) 30 ja uusi taustakohinaestimaatti B' on: B' = min (Vx, V2) (14) 39 jossa min (x,y) on minimi arvoista x ja y, ja max (x,y) on maksimi arvoista x ja y.
5 Kuviossa 9 esitetään edelleen esimerkinomainen toteutus taustakohinan estimointialgoritmista.
Ensimmäinen arvo Vi on yksinkertaisesti nykyinen kehysenergia Ef, joka on annettu suoraan multiplekserin 300 yhteen ottoon.
10
Toinen arvo V2 lasketaan arvoista KB ja B+l, jotka ensin lasketaan. Kun arvot KB ja B+l lasketaan, aikaisempi kehystaustakohinaestimaatti B, joka on talletettu rekisteriin 302, annetaan lähtönä summaimelle 15 304 ja kertojalle 306. On huomattava, että aikaisempi kehystaustakohinaestimaatti B, joka on talletettu rekisteriin 302 käytettäväksi nykyisessä kehyksessä, on sama kuin uusi taustakohinaestimaatti B', joka on laskettu edellisessä kehyksessä. Summaimeen 304 20 annetaan myös ottoarvo 1, joka lisätään arvoon B, siten että saadaan termi B+l. Kertojalle 304 annetaan myös ottoarvo K, joka kerrotaan arvon B:n kanssa, jolloin generoidaan termi KB. Termit B+l ja KB annetaan lähtönä vastaavasti summaimelta 304 ja kertojalta 306 sekä 25 multiplekserin 308 että summaimen 310 eri ottoihin.
Summainta 310 ja komparaattoria tai rajoitinta 312 käytetään suuremman termin valitsemiseksi termeistä B+l ja KB. Summain 310 vähentää termin B+l KB:sta ja 30 antaa saadun arvon komparaattorille tai rajoittimelle 312. Rajoitin 312 antaa ohjaussignaalin multi-plekserille 308 siten, että valitaan sen lähtö suuremmaksi termeistä B+l ja KB. Valittu termi B+l tai KB annetaan lähtönä multiplekseriltä 308 rajoittimelle 40 314, joka on kyllästystyyppinen rajoitin, joka antaa joko valitun termin, mikäli tämä on vakioarvon M alapuolella, tai arvon M, mikäli arvo on arvon M yläpuolella. Rajoittimen 314 anto annetaan toisena 5 ottona multiplekserille 300 ja ottona summaimelle 316.
Summain 316 vastaanottaa myös toisessa otossa kehysenergia-arvon Ef. Summainta 316 ja komparaattoria tai rajoitinta 318 käytetään valittaessa pienempi 10 arvosta Ef ja termistä, joka on annettu lähtönä rajoittimelta 314. Summain 316 vähentää kehysenergia-arvon rajoittimen 314 antoarvosta ja antaa saadun arvon komparaattorille tai rajoittimelle 318. Rajoitin 318 antaa ohjaussignaalin multiplekserille 300, pienemmän 15 arvosta Ef ja annosta rajoittimelta 314 valitsemiseksi. Multiplekserin 300 valittu lähtönä annettu arvo annetaan uutena taustakohinaestimaattina B' rekisterille 302, johon se talletetaan käytettäväksi seuraavan kehyksen aikana aikaisemman kehyksen 20 taustakohinaestimaattina B.
Viitaten kuvioon 7, kukin autokorrelointikertoimista R(0)-R(10) annetaan lähtönä autokorrelointialajärjestelmästä 202 LPC- 25 analyysialajärjestelmään 206. LPC-kertoimet, jotka on laskettu LPC-analyysialajärjestelmässä 206 sekä havainnollisen painotuksen suodattimessa 52 ja formanttisynteesisuodattimessa 60.
30 LPC-kertoimet voidaan saada autokorreloin- timenetelmällä, käyttäen Durbinin rekursiota, kuten on esitetty julkaisussa Digital Processing of Speech Signals, Rabiner & Schafer, Prentice-Hall, Inc., 1978. Tämä menetelmä on tehokas . laskennallinen menetelmä, 35 jolla saadaan LPC-kertoimet. Algoritmi voidaan esittää 41 seuraavissa kaavoissa: E(0> = R(0) , i = 1; (15) 5 = |i?(0 - Σ - y) j / £(m) (16) oij(i) = ki; (17) aj(1) = α-ί{χ~1) - kiai_j(;L_1) l<=j<=i-l: lie; (18) 10 E(i) =. (1-ki2) E(i_1>; ja (19)
Mikäli i<10 niin siirry kaavaan (16) arvolla i = i+1. (20) 15
Kymmenen LPC-kerrointa merkitään a-j(10), jolloin l<=j<-=10.
Ennen kuin koodataan LPC-kertoimet, suodattimen stabiliteetti on varmistettava. Suodattimen stabi-20 liteetti aikaansaadaan suodattimen napojen skaalaami-sella säteettäin sisäänpäin pienellä määrällä, joka vähentää huipputaajuusvasteiden suuruutta ja laajentaa huippujen kaistanleveyttä. Tämä tekniikka tunnetaan yleisesti nimellä kaistanleveyslaajennus, ja 25 selostetaan lisää artikkelissa "Spectral Smoothing in PÄRCOR Speech Analysis-Synthesis", Tohkura et ai., ASSP Transactions, joulukuu 1978. Tässä tapauksessa kaistanleveyslaajennus voidaan suorittaa tehokkaasti, skaalaamalla kukin LPC-kerroin. Siksi, kuten 30 selostetaan taulukossa III näin saadut LPC-kertoimet 42 kerrotaan kukin vastaavalla hex-arvolla, jolloin saadaan LPC-analyysialajärjestelmän 206 lopullinen LPC-kertoimien cg-αιο anto. On huomattava, että taulukossa III esitetyt arvot esitetään heksadesimaalina siten, 5 että niissä on 15 murtolukubittiä esitettynä kahden komplementtimerkintänä. Tässä muodossa arvo 0x8000 edustaa -l,0:aa ja arvo 0x7333 (tai 29491) edustaa 0,899994 - 29491/32768:aa.
10 TAULUKKO III
αι = a!(10> e 0x7333 «2 = a2<10) · 0x67ae «3 = a3(10> · 0x5d4f 15 a4 = a4(10) · 0x53fb a5 = a5 (10) e 0x4b95 a.s = ov ® 0x440b a7 = a7(10; · 0x3d38 a8 = a8(10> · 0x3719 20 a9 = a9(10) ® 0x3196 aio = ai0(10) · 0x2cal
Toiminnot suoritetaan edullisesti kaksoistark-kuudella, eli 32 bitin jako-, kerto- ja summauslaskuna. 25 Kaksoistarkkuustäsmällisyys on suositeltava, jotta ylläpidetään autokorrelointitoimintojen ja suodatuskertoimien dynaaminen alue.
Kuviossa 10 on esitetty lohkodiagrammi LPC-30 alajärjestelmän 206 esimerkinomaisesta suoritusmuodosta, joka toteuttaa kaavat (15)-(20) yllä.
43 LPC-alajärjestelmään 206 kuuluu kolme piiriosaa, päälaskentapiiri 330 ja kaksi puskuripäivityspiiriä 332 ja 334, joita käytetään päälaskentapiirin 330 rekisterien päivittämiseksi. Laskenta aloitetaan 5 lataamalla ensin arvot R(l)-R(10) puskuriin 340.
Laskennan aloittamiseksi rekisteri 348 esiladataan arvolla R(l) multiplekserin 344 kautta. Rekisteri alustetaan R(0):lla multiplekserin 350 kautta, puskuri 352 (jossa on arvot 10 aj<1-1)) alustetaan kaikki 10 nollaksi multiplekserin 354 kautta, puskuri 356 (jossa on arvot 10 «j(1)) alustetaan kaikki nollaksi multiplekserin 358 kautta, ja i:n arvoksi asetetaan l:ksi laskennallista jaksoa varten. Selvyyden vuoksi laskimet i:lle ja j:lie ja muuta laskennallista 15 ohjausta ei esitetä, mutta tämän tyyppisen logiikkapiiristön suunnittelu ja integraatio on hyvinkin digitaalisen logiikan suunnittelun ammattimiehen kykyjen puitteissa.
20 Arvo cij*1”15 annetaan lähtönä puskurista 356 termin ki E<1_1) laskemiseksi kaavan (14) esittämänä. Kukin arvo R(i-j) annetaan lähtönä puskurista 340 kerrottavaksi arvon 0£-ρ1-1> kanssa kertojassa 360. Kukin saatu arvo vähennetään summaimessa 362 rekisterin 346 25 arvosta. Kunkin vähennyslaskun tulos talletetaan rekisteriin 346, josta seuraava termi vähennetään. i:nnessä jaksossa on i-1 kertolaskua ja koontia, kuten kaavan 14 summaustermi osoittaa. Tämän jakson päätteeksi rekisterin 346 arvo jaetaan jakajassa 364 30 rekisterin 348 arvolla Ε(1_1> arvon ki saamiseksi,
Arvoa ki käytetään tämän jälkeen puskurin päivityspiirissä 332 arvon E(l! laskemiseksi kuten kaavassa (19) yllä, jota käytetään arvona E(1_1> ki:n 35 seuraavan laskentajakson aikana. Nykyinen jaksoarvo ki 44 kerrotaan itsellään kertojassa 366, jolloin saadaan arvo ki2. Arvo kj.2 vähennetään tämän jälkeen arvosta 1 summaimessa 368. Tämän lisäyksen tulos kerrotaan kertojassa 370 arvolla Ε(1) rekisteristä 348. Saatu arvo 5 E(1) syötetään rekisteriin 348 multiplekserin 350 kautta talletettavaksi arvona E(1-1) seuraavaa jaksoa varten.
Arvoa ki käytetään tämän jälkeen arvon cg*15 laskemiseksi kuten kaavassa (15). Tässä tapauksessa 10 arvo ki syötetään puskuriin 356 multiplekserin 358 kautta. Arvoa ki käytetään myös puskuripäivityspiirissä 334 arvojen aj(1> laskemiseksi arvoista aj(1_1), kuten kaavassa (18). Puskuriin 352 sillä hetkellä talletettuja arvoja käytetään arvojen a-j<:L) laskemisessa. 15 Kuten kaavassa (18) esitetään, i:nnessä jaksossa tapahtuu i-1 laskentaa. Iteroinnilla i=l tällaisia laskentoja ei tarvita. Kullekin j:n arvolle i:nnelle jaksolle lasketaan arvo oij(1>. Kunkin ofj(l):n arvon laskennassa kukin arvo ai-j*1"1’ kerrotaan kertojassa 372 20 arvolla ki ja summaimelle 374 lähtönä antoa varten. Summaimessa 374 arvo kiai-j(1_1) vähennetään arvosta c<j(1_ 1), joka myös on syötetty summaimelle 374. Kunkin kertolaskun ja summauslaskun tulos annetaan arvona oij(1) puskurille 356 multiplekserin 358 kautta.
25
Kun arvot αι(ι> ja <Xj(l) on laskettu nykyiselle jaksolle, nämä äsken lasketut arvot ja puskuriin 356 talletetut arvot annetaan lähtönä puskuriin 352 multiplekserin 354 kautta. Puskuriin 356 talletetut 30 arvot talletetaan vastaaviin positioihin puskurissa 352. Puskuri 352 päivittyy tällöin arvojen ki laskemiseksi i+l-jaksolle.
On tärkeää huomata, että dataa aj(1_1), joka on 35 generoitu aikaisemman jakson lopussa, käytetään 45 nykyisen jakson aikana generoimaan päivityksiä oij(1) seuraavaa jaksoa varten. Tämä aikaisemman jakson data on säilytettävä, jotta generoitaisiin täysin päivitettyä dataa seuraavaa jaksoa varten. Täten 5 hyödynnetään kahta puskuria 356 ja 352 tämän aikaisemman jakson datan säilyttämiseksi kunnes päivitetty data on täysin generoitu.
Yllä oleva kuvaus on kirjoitettu liittyen 10 datan rinnakkaissiirtoon puskurista 356 puskuriin 352 päivitettyjen arvojen laskennan valmistuttua. Tämä toteutus varmistaa sen, että vanha data säilytetään uuden datan koko laskentaprosessin ajan ilman että menetetään vanhaa dataa ennen kuin se on kokonaan 15 käytetty, kuten kävisi yksittäisen puskurin järjestelyssä. Kuvattu toteutus on yksi monista toteutuksista, joita on jo saatavilla aikaansaamaan sama tulos. Esimerkiksi puskurit 352 ja 356 voidaan multipleksoida siten, että laskettaessa arvo ki 20 nykyiselle jaksolle arvoista, jotka on talletettu ensimmäiseen puskuriin, päivitykset talletetaan toiseen puskuriin käytettäväksi seuraavan laskentajakson aikana. Tällä seuraavalla jaksolla arvo ki lasketaan toiseen puskuriin talletetuista arvoista. Toisessa puskurissa 25 olevia arvoja ja arvoa ki käytetään generoimaan päivityksiä seuraavaa jaksoa varten siten, että nämä päivitykset on talletettu ensimmäiseen puskuriin. Tämä puskureiden vaihtaminen mahdollistaa jatkuvien laskenta-jaksoarvojen ylläpitämisen joista päivitykset 30 generoidaan, samalla kun talletetaan päivitysarvoja ilman, että ylikirjoitetaan käsiteltäviä arvoja, joita tarvitaan generoimaan päivitykset. Tämän tekniikan käyttö voi minimoida laskentaan liittyvän viiveen arvon ki laskemisella seuraavalle jaksolle. Siksi kertolaskun 35 ja akkumuloinnin päivitykset laskettaessa ki, voidaan suorittaa samanaikaisesti kun aj(1_1):n arvo lasketaan.
46
Kymmenen LPC-kerrointa ajil0), jotka on talletettu puskuriin 356 viimeisen laskennallisen jakson (i=10) päätyttyä, skaalataan siten, että ne saapuvat 5 vastaaviin lopullisiin LPC-kertoimiin cq. Skaalaus suoritetaan aikaansaamalla skaalauksen valintasignaali multipleksereille 344, 376 ja 378 siten, että skaalausarvot, jotka on talletettu hakutaulukkoon 342, taulukon III hex-arvot, valitaan antoa varten 10 multiplekserin 344 kautta. Hakutaulukkoon 342 talletettuja arvoja kellotetaan sekvenssissä ulos ja syötetään kertojalle 360. Kertoja 360 vastaanottaa myös multiplekserin 37 6 kautta cq(10) arvot, jotka on sekven-tiaalisesti annettu lähtönä rekisteriltä 356. Skaalatut 15 arvot annetaan lähtönä kertojasta 360 multiplekserin 378 kautta antona LPC-LSP-muunnosalajärjestelmään 208 (kuvio 7).
Kunkin kymmenen skaalatun LPC-kertoimen koo-20 daamiseksi tehokkaasti pienellä bittimäärällä kertoimet muunnetaan linjaspektripari-taajuisiksi, kuten on selostettu artikkelissa "Line Spectrum Pair (LSP) and Speech Data Compression", Soong ja Juang, ICASSP '84. LSP-parametrien laskenta esitetään alla kaavoissa (21) 25 ja (22) yhdessä taulukon IV kanssa.
LSP-taajuudet ovat kymmenen juurta, jotka esiintyvät 0:n ja n:n välillä seuraavissa yhtälöissä: 30 Ρ(ω) = cos5co + pi cos4co+. . .+p4cosco+p5/2; (21) Q(co) = cos5co + qi cos4co+. . .+q4cosco+q5/2 (22) ja 47 jossa Pn ja qn ovat arvoilla n = 1,2,3,4, ja määritetään rekursiivisesti taulukossa IV.
5 TAULUKKO IV
Pi = -(αι+οίιο) - 1 qi = -(οίι-Οίιο) + 1 p2 = - (α2+α9) - pi q2 = - (α2-α9) + qi P3 = - (α3+α8) - p2 U3 = -(α3-α8) + q2 10 p4 = - («4+0:7) - p3 q4 = - (α4-α7) + q3 P5 = -(0:5+0(5) - P4 qs = -(0(5-0:5) + q4
Taulukossa IV arvot ai, ... , aio ovat skaalatut kertoimet, jotka tulevat LPC-analyysista. 15 Yhtälöiden (21) ja (22) kymmenen juurta skaalataan 0 ja 0,5 välille yksinkertaisuuden vuoksi. LSP-taajuuksien ominaisuus on, että mikäli LPC-suodatin on stabiili, kahden funktion juuret vaihtelevat, eli pienin juuri ωι on Ρ(ω):η pienin juuri ja toiseksi pienin juuri, ω2, on 20 ζ)(ω):η pienin juuri jne. Kymmenestä taajuudesta parittomat taajuudet ovat Ρ(ω):η juuria ja parilliset taajuudet ovat Q(co):n juuria.
Juurihaku suoritetaan seuraavasti. Ensin p ja 25 q kertoimet lasketaan kaksinkertaisella tarkkuudella lisäämällä LPC-kertoimet yllä selostetulla tavalla. Ρ(ω) määritetään tämän jälkeen joka n/256 radiaanilla, ja näitä arvoja tutkitaan etumerkin muuttumisen osalta, joka identifioi juuren tällä ala-alueella. Mikäli juuri 30 löydetään, lineaarinen interpolaatio kahden tämän alueen rajan välillä suoritetaan sen jälkeen juuren sijainnin approksoimiseksi. On varmaa, että yksi Q- 48 juuri esiintyy kunkin P-juuren parin välillä (viides Q-juuri esiintyy viidennen P-juuren ja n:n välillä), taajuuksien järjestämisen ominaisuuksien vuoksi. Binäärinen haku suoritetaan kunkin P-juurien parin 5 välillä Q-juurien sijainnin määrittämiseksi.
Toteutuksen yksinkertaistamiseksi jokainen P-juuri approksimoidaan lähimmällä n/256 arvolla ja binäärinen haku tehdään näiden approksimaatioiden välillä. Mikäli juurta ei löydetä, LSP-taajuuksien aikaisempia ei-10 kvantisoituja arvoja edellisestä kehyksestä, josta juuret löydettiin, käytetään.
Viitaten nyt kuvioon 11, nähdään esimerkinomainen' toteutus piiristöstä, jota käytetään 15 LSP-taajuuksien generoimiseksi, kuten esitetään. Yllä selostettu toiminta vaatii kaikkiaan 257 mahdollista kosiniarvoa 0:n ja n:n välillä, jotka talletetaan kaksoistarkkuudella hakutaulukkoon, ko- s i n i h a kutaulukkoon 400, jota osoitetaan mod 256 20 laskimella 402. Kullakin j:n arvolla, joka on syötetty hakutaulukkoon 400, saadaan anto cos ω, cos 2ω, cos 3ω, cos 4ω ja cos 5ω, jossa: ω = jn/256 (23) 25 jossa j on laskuarvo.
Arvot cos ω, cos 2ω, cos 3ω ja cos 4ω, jotka on saatu lähtönä hakutaulukosta 400, syötetään 30 vastaavaan kertojaan 404, 406, 408, ja 410 samalla, kun arvo cos 5ω syötetään suoraan summaimeen 412. Nämä arvot kerrotaan vastaavassa kertojassa 404, 406, 408 ja 410 vastaavalla arvoista p4, p3, P2 ja Pi, jotka on syötetty siihen multipleksereiden 414, 416, 418 ja 420 49 kautta. Tästä kertolaskusta saadut arvot syötetään myös summaimeen 412. Edelleen arvo p5 annetaan multiplekserin 422 kautta kertojalle 424 vakioarvolla 0,5, eli 1/2, joka myös annetaan kertojalle 424. Tuloksena olevan 5 kertojan 424 arvolähtö annetaan toisena ottona summaimeen 412. Multiplekserit 414-422 valitsevat arvojen pi - p5 tai qi - q5 välillä vasteena p/q-kerroin valintasignaaliin siten, että käytetään samaa piiristöä sekä Ρ(ω):η sekä Q(co):n arvojen laskemiseksi. 10 Piiristöä, joka generoi arvoja ρχ - ps tai qi - q5 ei ole esitetty, mutta se on helposti toteutettu käyttäen sarjaa summaimia LPC-kertoimien ja pi - ps tai qi - q5 arvojen lisäämiseksi ja vähentämiseksi, yhdessä rekistereiden kanssa ρχ - p5 tai qx - q5 arvojen 15 tallettamiseksi.
Summain 412 summaa ottoarvot ja antaa annon Ρ(ω)- tai ζ>(ω) -arvon riippuen tilanteesta. Jotta seuraava lisäselostus olisi helpompi Ρ(ω):η arvoja 20 harkitaan yhdessä Q(m):n arvojen kanssa ja lasketaan vastaavilla tavoilla käyttäen qx - q5 arvoja. Ρ(ω):η nykyinen arvo annetaan antona summaimelta 412 jossa ne on tallennettuna rekisterissä 426. Ρ(ω):n edeltävä arvo, joka aikaisemmin oli talletettu rekisteriin 426, 25 viedään rekisteriin 428. Ρ(ω):η nykyisten ja aikaisempien arvojen etumerkkibitit ERI-operoidaan ERI-portissa 430, jolloin saadaan osoitus nollaylityksestä tai etumerkin muuttumisesta aktivointisignaalin muodossa, joka lähetettiin lineaariselle 30 interpolaattorille 434. Ρ(ω):η nykyinen ja aikaisempi arvo myös annetaan lähtönä rekistereiltä 426 ja 428 lineaariselle interpolaattorille 434, joka toimii vasteena aktivointisignaaliin interpoloidakseen pisteen Ρ(ω) kahden arvon välillä, jossa nollaylitys tapahtuu. 35 Tämän lineaarisen interpoloinnin murtoarvotulos, etäisyys arvosta j-1, annetaan puskuriin 436 yhdessä 50 arvon j kanssa laskimelta 256. Portti 430 myös antaa aktivointisignaalin puskurille 436, joka mahdollistaa arvon j ja vastaavan murtoarvon FVj tallettamisen.
5 Murtoarvo vähennetään arvosta j lähtönä puskurista 436 summaimessa 438, tai voidaan vaihtoehdossa vähentää siitä ottona puskuriin 436. Vaihtoehdossa rekisteriä j-linjaotossa puskurille 436 voidaan käyttää siten, että j-1 -arvo syötetään 10 puskuriin 436 yhdessä murtoarvo-oton kanssa joka on myös syötetty siihen. Murtoarvo voidaan lisätä arvoon j-1 joko ennen talletusta rekisteriin 436 tai tämän annon yhteydessä. Joka tapauksessa j + FVj tai (j-1) + FVj yhdistetty arvo annetaan lähtönä jakajalle 440, joka 15 suorittaa jaon oton vakioarvolla 512. Jakolasku voidaan suorittaa yksinkertaisesti yleensä vaihtamalla binääripisteen sijainti edustavassa binäärisanassa. Tämä jakolasku antaa tarvittavan skaalauksen, jotta saavutetaan LSP taajuus välillä 0 - 0,5.
20
Kukin Ρ(ω):η ja Q(m):n funktioarviointi tarvitsee 5 kosinihakua, 4 kaksoistarkkuuskertolaskua ja 4 lisäystä. Lasketut juuret ovat tyypillisesti tarkkoja ainoastaan noin 13 bitin osalta, ja 25 talletetaan yksittäisellä tarkkuudella. LSP-taajuudet annetaan LSP-kvantisointialajärjestelmään 210 (kuvio 7) kvantisointia varten.
Kun LSP-taajuudet on laskettu, on ne 30 kvantisoitava lähetystä varten. Kukin kymmenestä LSP-taajuuksista keskittyy karkeasti esiarvon ympärille. On huomattava, että LSP-taajuudet approksimoivat esiarvot, mikäli tulopuheessa on tasaiset spektraaliominaisuudet eikä lyhyen välin ennustusta voida suorittaa. Esiarvot 35 vähennetään pois kooderissa, ja yksinkertaista DPCM- 51 kvantisoijaa käytetään. Dekooderissa esiarvo lisätään takaisin. Esiarvon negatiiviarvo, heksadesimaalina', kullekin LSP-taajuudella, ©i - Oio, kuten saatuna LPC-LSP muunnosalajärjestelmältä, esitetään taulukossa V.
5 Jälleen taulukon V arvot ovat kahden komplementtina 15 murtobitillä. Hex-arvo 0x8000 (tai -32768) edustaa -1.0:aa. Täten ensimmäinen arvo taulukossa V, arvo 0xfa2f (tai -1489) edustaa -0.045441 = -1489/32768:aa.
10 TAULUKKO V
LSP- Negatiivinen taajuus esiarvo coi 0xfa2f 15 02 0xf45e 03 0xee8c p4__Qxe8bb_ 05 0xe2e9 ©6 0xddl8 20 o7 0xd746 ©s 0xdl75 ©g oxcba3
Oio 0xc5d2 25 Ennustin, jota käytetään alajärjestelmässä, on 0,9 kertaa kvantisoitu LSP-taajuus edelliseltä kehykseltä, joka on talletettu alajärjestelmän puskuriin. Vaimennuskerroin 0,9 sijoitetaan siten, että kanavavir-heet lopulta poistuvat.
30 52 Käytetyt kvantisoijat ovat lineaarisia, mutta vaihtelevat dynaamiselta alueeltaan ja vaihekooltaan nopeuden mukaan. Myös, suuren nopeuden kehyksillä enemmän bittejä lähetetään kullekin LSP-taajuudelle, 5 jolloin kvantisointitasojen lukumäärä riippuu nopeudesta. Taulukossa VI kvantisoinnin bittiallokointi ja dynaaminen alue esitetään kullekin taajuudelle kullakin nopeudella. Esimerkiksi nopeudella 1/C0i kvantisoidaan tasaisesti käyttäen 4 bittiä (eli 16 10 tasoon), jolloin suurin kvantisointitaso on 0,025 ja alin on -0,025.
TAULUKKO VI
Nopeus Täysi Puoli Neljäs- Kahdeksas- .
15 osa osa ωι 4:+.025 2:+.015 1:+.01 1:+.01 ω2 4:±.04 2:±.015 1:±.01 1:±.015 ω3 4:+.07 2:+.03 1:+.01 1:1.015 ~~ω^ 4:±.07 2:+.03 1:+.01 1:+.015 20 ω5 4:+.06 2:+.03 1:1.01 1:+.015 ω6 4:+.06 2:±.02 1:±.01 1:±.015 ~ωΊ 4:+.05 2:+.02 1:+.01 1:+.01 ω8__4 : ±. 05 2:±.02 1:±.Q1 1:±.Q1_ ω9 4:±.04 2:+.02 1:±.01 1:±.01 25 ωιο 4:+.04 2:+.02 1:+.01 1:±.01
Yhteensä 40 bittiä 20 bittiä 10 bittiä 10 bittiä
Mikäli nopeuden päätösalgoritmin valitsemalle nopeudelle kvantisointialueet eivät ole riittävän 30 suuria tai esiintyy luiskan ylivuoto, nopeus siirretään seuraavaksi nopeammalle tasolle. Nopeutta lisätään 53 kunnes dynaaminen alue on riittävä tai täysi nopeus on saavutettu. Kuviossa 12 esitetään esimerkinomaisena lohkokaaviona optionaalisen nopeuden lisäystekniikan yksi toteutus.
5
Kuvio 12 esittää lohkokaavion muodossa LSP-kvantisointialajärjestelmän 210 esimerkinomaisen toteututuksen, joka sisältää nopeuden lisäyspiirin. Kuviossa 12 nykyisen kehyksen LSP-taajuudet viedään 10 jakajalta 440 (kuvio 11) rekisterille 442, johon ne talletetaan nopeuden lisäysmäärityksen aikana seuraa-vassa kehyksessä. Edellisen kehyksen LSP-taajuudet ja nykyisen kehyksen LSP-taajuudet viedään vastaavasti rekisteriltä 440 ja jakajalta 440 nykyisen kehyksen 15 lisäyslogiikkaan 442 nopeuden lisäysmäärityksen suorittamiseksi. Nopeuden lisäyslogiikka 442 vastaanottaa myös alkunopeuspäätöksen, yhdessä nopeudesta toiseen rajakäskyjen kanssa nopeuden määritysalajärjestelmästä 204. Kun määritetään, onko 20 nopeuden lisäys välttämätön, logiikka 442 vertaa edel lisen kehyksen LSP-taajuuksia nykyisen kehyksen LSP-taajuuksiin perustuen nykyisen ja edellisen kehyksen LSP-taajuuksien erotuksen neliön summaan. Näin saatua arvoa verrataan kynnysarvoon, ja kun tämä ylittyy, tämä 25 osoittaa, että nopeuden lisäys on välttämätön puheen korkean laadun ylläpitämiseksi. Kun kynnysarvo ylitetään, logiikka 442 lisää alkunopeutta yhdellä nopeus-tasolla siten, että saadaan loppunopeuden anto, jota käytetään koko kooderissa.
30
Kuviossa 12 kukin LSP-taajuusarvo ωχ - ωχ0 viedään ottona yksi kerrallaan summaimeen 450 yhdessä vastaavan esiarvon kanssa. Esiarvo vähennetään oton LSP-arvosta ja tämän tulos viedään summaimeen 452. 35 Summain 452 vastaanottaa myös ottona ennustearvon, 54 edellisen kehyksen vastaavan LSP-arvon, joka on kerrottu vaimennusvakiolla. Ennustearvo vähennetään summaimen 450 annosta summaimessa 452. Summaimen 452 anto sovitetaan ottona kvantisoijalle 454.
5
Kvantisoijaan 454 kuuluu rajoitin 456, minimi dynaamisen alueen hakutaulukko 458, käänteisaskeleen koon hakutaulukko 460, summain 462, kertoja 464 ja bittimaski 466. Kvantisointi suoritetaan kvantisoijassa 10 454 määrittämällä ensin, sijaitseeko ottoarvo kvan- tisoijan 454 dynaamisella alueella. Ottoarvo viedään rajoittimelle 456, joka rajoittaa ottoarvon dynaamisen alueen ylä- ja alarajoihin, mikäli otto ylittää haku-taulukon 458 rajoja. Hakutaulukosta 458 saadaan talle-15 tetut rajat, taulukon VI mukaisesti, rajoittimelle 456 nopeusoton ja LSP-taajuusindeksin i, joka on sovitettu siihen vasteena. Rajoittimen 456 antoarvo viedään ottona summaimeen 462, jossa dynaamisen alueen minimi, joka saadaan hakutaulukosta 458, vähennetään siitä. Hakutau-20 lukon 458 antoarvo määritetään jälleen nopeuden ja LSP-taajuusindeksin i mukaisesti minimin dynaamisen alueen arvojen mukaisesti, riippumatta arvon etumerkistä, taulukon VI mukaisesti. Esimerkiksi hakutaulukon 458 arvo tilanteelle (täysi nopeus, ωχ) on 0,025.
25
Summaimen 462 anto kerrotaan tämän jälkeen kertojassa 464 arvolla, joka on valittu hakutaulukosta 460. Hakutaulukko 460 sisältää arvot, jotka vastaavat askelkoon käänteisarvoa kullekin LSP-arvolle, kullakin 30 nopeudella taulukon VI arvojen mukaisesti. Hakutaulukon 460 antoarvo valitaan nopeuden ja LSP-taajuusindeksin i mukaisesti. Kullekin nopeudelle ja LSP-taajuusindeksil-le i hakutaulukkoon 460 talletettu arvo on ((2n - 1)/dynaaminen alue), jossa n on bittien lukumäärä, joilla 35 esitetään kvantisoitu arvo. Jälleen esimerkin muodossa 55 hakutaulukon 460 arvo (nopeudella 1, ωα) on (15/0,05) eli 300.
Kertojan 464 anto on arvo välillä 0 ja 2n - 1, 5 joka sovitetaan bittimaskille 466. Bittimaski 466 poistaa nopeuden ja LSP-taajuusindeksin vaikutuksesta otto-arvosta vastaavan bittien lukumäärän taulukon VI mukaisesti. Poistetut bitit ovat n-kokonaisluku ottoarvosta siten, että saadaan bittirajoitettu anto Δωι. Arvot Δωι 10 ovat kvantisoidut ei-esidifferentiaalikoodatut LSP-taajuudet, jotka lähetetään kanavalla edustaen LPC-kertoimia.
Arvo Δωι viedään myös takaisin ennustimen 15 kautta, johon kuuluu käänteiskvantisoija 468, summain 470, puskuri 472 ja kertoja 474. Käänteiskvantisoija 468 käsittää askelkoon hakutaulukon 476, minimidynaamisen alueen hakutaulukon 478, kertojan 480 ja summaimen 482.
20
Arvo Δωι viedään kertojalle 480 yhdessä taulukosta 476 valitun arvon kanssa. Hakutaulukko 476 sisältää arvoja, jotka vastaavat kunkin LSP-arvon askelkoko-ja kullakin nopeudella taulukon VI arvojen mukaisesti. 25 Hakutaulukon 476 antoarvo valitaan nopeuden ja LSP-taajuusindeksin i mukaisesti. Kullekin nopeudelle ja LSP-taajuusindeksille i taulukkoon 460 talletettu arvo on (dynaaminen alue/2n -1) , jossa n on bittien lukumäärä, jotka esittävät kvantisoitua arvoa. Kertoja 480 30 kertoo ottoarvot ja aikaansaa annon summaimelle 482.
Summain 482 vastaanottaa toisena ottona arvon nakutaulukosta 478. Hakutaulukon 478 anto määritetään nopeuden ja LSP-taajuusindeksin i mukaisesti minimi- 56 dynaamisen alueen arvojen mukaisesti, jättäen huomioimatta arvon etumerkki, joka on esitetty taulukossa VI. Summain 482 lisää hakutaulukon 478 minimidynaamisen alueen arvon kertojan 480 arvoantoon, jolloin saadaan 5 anto summaimelle 470.
Summain 470 saa toisena ottona kertojan 474 ennustusarvoannon. Nämä arvot summataan summaimessa 470 ja talletetaan kymmenen sanan talletuspuskuriin 472. 10 Kunkin arvon edellisen kehyksen arvo, joka on sovitettu puskurista 472 nykyisen kehyksen aikana, kerrotaan kertojassa 474 vakiolla, 0,9. Kertojan 474 ennustusarvot sovitetaan sekä summaimelle 452 että summaimelle 470 kuten selostettiin yllä.
15
Nykyisessä kehyksessä puskuriin 472 talletettu arvo on edellisessä kehyksessä rekonstruoitu LSP-arvo miinus esiarvo. Vastaavasti kyseisen kehyksen summaimen 470 anto on kyseisen kehyksen rekonstruoitu LSP-arvo 20 myös ilman esiarvoa. Nykyisellä kehyksellä puskurin 472 ja summaimen 470 anto viedään vastaavasti summaimelle 484 ja summaimelle 486, jossa esiarvo lisätään näihin arvoihin. Summainten 484 ja 486 antoarvot ovat vastaavasti edellisen kehyksen rekonstruoituja LSP-25 taajuusarvoja, ja nykyisen kehyksen rekonstruoituja LSP-taajuusarvoja. LSP-tasoitus suoritetaan pienemmillä nopeuksilla seuraavan kaavan mukaisesti:
Tasoitettu LSP = a(nykyinen LSP) + (1-a)(edellinen LSP) (24) 30 jossa a = 0 täydellä nopeudella; a = 0,1 puolella nopeudella; a = 0,5 neljäsosanopeudella; ja 57 a = 0,85 kahdeksasosanopeudella.
Edellisen kehyksen (f—1) rekonstruoimat LSP-taajuudet arvot ja nykyisen kehyksen (f) rekonst- 5 ruoimat LSP-taajuusarvot o'i,f viedään kvantisoinnin alajärjestelmästä 210 äänen tason alakehyksen LSP-in-terpolointialajärjestelmään 216 ja koodikirjain alakehyksen LSP-interpolointialajärj esteinähän 226. Kvan-tisoidut LSP-taajuusarvot Δθί viedään LSP-kvantisoin- 10 tialajärjestelmästä 210 datakokoaja-alajärjestelmään 236 lähetystä varten.
Painotussuodattimessa ja formanttisyn-teesisuodattimessa käytetyt LSP-kertoimet ovat sopivat 15 äänentason alakehykselle, jota koodataan. Äänentason alakehyksillä LPC-kertoimien interpolointi suoritetaan kerran kutakin äänentason alakehystä kohti ja ovat taulukon VII mukaisia:
20 TAULUKKO VII
Nopeus 1:
Oi = 0,75co'i,f-i + 0,25co'i,f äänentason alakehyksellä 1
Oi = 0,5o'i,f-i + 0,5o'i,f äänentason alakehyksellä 2 25 Oi = 0,25'Oi,f_i + 0,75o'iff äänentason alakehyksellä 3
Oi = o’i,f äänentason alakehyksellä 4
Nopeus 1/2:
Oi = 0,625o'i,f_i + 0,375o'i,f äänentason alakehyksellä 1 30 Oi = 0,125o'i,f-i + 0,875ω'ι,f äänentason alakehyksellä 2 58
Nopeus 1/4:
Mi = 0,625o'i/f_i + 0,375ωτι,f äänentason alakehyksellä 1 Nopeus 1/8: 5 Äänentason hakua ei suoriteta.
Äänentason alakehyksen laskinta 224 käytetään äänentason alakehysten, joille äänentasoparametrejä lasketaan, pitämiseksi järjestyksessä siten, että 10 laskimen anto sovitetaan äänentason alakehyksen LSP-interpolointialajärjestelmään 216 käytettäväksi äänentason alakehyksen LSP-interpoloinnissa. Äänentason alakehyksen laskin 224 sovittaa myös annon, joka osoittaa äänentason alakehyksen täyttymisen valitulle 15 nopeudelle datapakkausjärjestelmään 236.
Kuviossa 13 esitetään esimerkki äänentason alakehyksen LSP-interpolointialajärjestelmästä 216 LSP-taajuuksien interpoloimiseksi relevantilla äänentason 20 alakehyksellä. Kuviossa 13 edeltävät ja senhetkiset LSP-taaj uudet M'i/f_i ja o'i/f viedään vastaavasti LSP-kvantisointialajärjestelmästä kertojille 500 ja 502, jossa ne vastaavasti kerrotaan vakiolla, joka saadaan muistiosta 504. Muistiin 504 on talletettu joukko 25 vakioarvoja, ja äänentason alakehyksen numeron oton mukaisesti äänentason alakehyksen laskimelta, jota selostetaan alla, saadaan muistista antovakioita, taulukon VII mukaisesti kertolaskua varten edeltävän ja senhetkisten LSP-arvojen kanssa. Kertojien 500 ja 502 30 annot summataan summaimessa 50-6, jolloin saadaan LSP-taajuusarvot äänentason alakehykselle taulukon VII kaavojen mukaisesti. Kullakin äänentason alakehyksellä, kun LSP-taajuuksien interpolointi on suoritettu, tehdään käänteis-LSP-LPC-muunnos senhetkisten A(z)- 59 kertoimien ja havaintopainosuodattimen aikaansaamiseksi. Interpoloidut LSP-taajuusarvot viedään täten LSP-LPC-muunnosalajärjestelmään 218 kuviossa 7.
5 LSP-LPC-muunnosalajärjestelmä 218 muuntaa interpoloidut LSP-taajuudet takaisin LPC-kertoimiksi, joita käytetään puheen jälleen syntetisoinnissa. Tässä viitataan jälleen artikkeliin "Line Spectrum Pair (LSP) 10 and Speech Data Compression", Soong ja Juang, jossa selostetaan, miten algoritmia käytetään ja sillä olevassa keksinnössä muunnosprosessissa. Laskenta-aspektit ovat sellaiset, että P(z) ja Q(z) voidaan lausua LSP-taajuuksien avulla kaavan 25 avulla: 15 5 P(z) = {\ + zA)Yl{\-2cos{(o2i_x)zA+z-2) (25) /•=1 jossa Wi:t ovat P1 polynomin juuret (parittomat taajuudet) , ja 20 ÖO) = (i + )Π (1 - 2 C0S(®2,. )z"' + z"2) (26) jossa Wi:t ovat Q' polynomin juuret (parilliset taajuudet) ja 25 A(z)=m±m (27) 2
Laskenta suoritetaan siten, että ensin lasketaan arvot 2cos (coi) kaikilla parittomilla taajuuksilla i. Tämä 60 laskenta suoritetaan viidennen asteen Taylor-sarjan avulla laajentaen kosinia noin nollan (0) ympärillä. Taylor-laajennus lähimmän pisteen ympärillä kosinitau-lukossa voisi olla mahdollisesti tarkempi, mutta laa-5 jennus 0:n ympärillä on riittävän tarkka, eikä se sisällä ylimääräistä laskentaa.
Seuraavaksi P polynomin kertoimet lasketaan. Polynomien kertoimien tulos on kertoimien sekvenssien 10 konvoluutio yksittäisissä polynomeissa. Kuuden z-po-lynomin sekvenssin konvoluutio kaavassa (25) on {1, - 2cos(a>i), 1}, {1, -2cos (ω3) , 1}, ... {1, -2cos(m9), 1}, ja {1, 1}, joka tämän jälkeen lasketaan.
15 Kun polynomi P on laskettu, sama poistetaan Q- polynomilla, jossa z-polynomin kertoimen 6 sekvenssiä kaavassa (26) yllä, {1, -2cos (co2) , 1}, {1, -2cos (ω4) , 1}... {1, -2cos (α>ιο) , 1}, ja {1, -1}, ja vastaavat ker toimet summataan ja jaetaan kahdella, eli siirretään 1 20 bitin verran LPC-kertoimien tuottamiseksi.
Kuviossa 13 esitetään edelleen esimerkki LSP-LPC-muunnosalajärjestelmästä yksityiskohtaisemmin.
Piiriosa 508 laskee -2cos (coi) arvon ω±:η ottoarvosta. 25 Piiriosaan 508 kuuluu puskuri 509, summaimet 510 ja 515, kertojat 511, 512, 514, 516 ja 518, ja rekisterit 513 ja 515. Laskettaessa arvot -2cos {ω±) : lie rekisterit 513 ja 515 alustetaan nollaan. Koska tämä piiri laskee sin(coi), G)i vähennetään ensin summaimessa 510 30 ottovakioarvosta n/2. Tämä arvo korotetaan toiseen potenssiin kertojassa 511 ja tämän jälkeen arvot (n/2 -ωχ)2, (n/2 - coi)4, (n/2 - ωι)6, ja' (n/2 - ωι)8 lasketaan tämän jälkeen kertojan 512 ja rekisterin 513 avulla.
61
Taylor-sarjojen laajennuskertoimet c[1] - c[4] syötetään peräkkäin kertojaan 514 yhdessä kertojan 512 antojen kanssa. Kertojan 514 antoarvot lisätään summai-meen 515, jossa ne yhdessä rekisterin 516 annon kanssa 5 summataan annon c[l] (rr/2 - ω±)2 + c[2] (n/2 - ecu)4 + c[3] (n/2 - Qi)6 + c[4] (n/2 - coi)8 aikaansaamiseksi kertojalle 517. Rekisteriltä 516 tuleva kertojan 517 otto kerrotaan kertojassa 517 summaimen 510 annolla (n/2 - Oi). Kertojan 517 anto ja arvo cos (ωι) kerrotaan 10 kertojassa 518 kertoimella -2, jolloin saadaan -2cos(ω-i). Tämä arvo -2cos(oi) viedään piiriosaan 520.
Piiriosaa 520 käytetään P-polynomin kertoimien laskennassa. Piiriosaan 520 kuuluu muisti 521, kertoja 15 522 ja summain 523. Muistialueiden ryhmä P(1) ... P(ll) alue alustetaan arvoon 0 paitsi arvo P(l), jonka arvoksi asetetaan 1. Vanhat indeksoidut -2cos(wi) arvot sovitetaan kertojaan 524 suorittamaan (1, -2cos(w±) , 1) konvoluution, jossa 1 < i < 5, 1 < j < 2i+l, P(j) =0 20 arvolla j<l. Piiriosa 520 monistetaan (ei esitetty) Q-polynomin kertoimien laskemiseksi. Näin saadut lopulliset uudet arvot P(1) - P(ll) ja Q(l) - Q(ll) sovitetaan piiriosaan 524.
25 Piiriosa 524 annetaan, jotta voidaan suorittaa äänentason alakehyksen kymmenen LPC-kertoimien ai, i = 1-10, laskennan. Piiriosaan 524 kuuluu puskurit 525 ja 526, summaimet 527, 528 ja 529, ja jakaja tai bitinsiirtäjä 530. Lopulliset P (i) ja Q(i)-arvot 30 talletetaan puskureihin 525 ja 526. P(i) ja P(i+1) arvot summataan summaimessa 527 ja vastaavat Q(i) ja Q(i+1) arvot vähennetään summaimessa 528 arvoilla 1 < i < 10. Summainten 527 ja 528 annot, vastaavasti P(z) ja Q(z), sovitetaan summaimen 529 ottoon, jossa ne 35 summataan ja viedään edelleen eteenpäin arvona (P(z) + 62 Q(z)). Sunmnaimen anto jaetaan kahdella siirtämällä bitit yhden position verran. Kukin bittisiirretty (P(z) + Q(z))/2 arvo on LPC-kerroin oy anto. Äänentason alakehyksen LPC-kertoimet sovitetaan äänentason haku-5 alajärjestelmään 220 kuviossa 7.
LSP-taajuuksia interpoloidaan myös kullekin koodikirjainalakehykselle valitun nopeuden määrittämällä tavalla, paitsi täydelle nopeudelle. 10 Interpolointi suoritetaan tavalla, joka on identtinen äänentason alakehyksen LSP-interpolointien kanssa. Koodikirjan alakehys LSP-interpoloinnit lasketaan koodikirjan LSP-interpolointialajärjestelmässä 226 ja sovitetaan LSP-LPC -muunnos alajärjestelmään 228, jossa 15 muunnos lasketaan vastaavalla tavalla kun LSP-LPC muunnosalajärjestelmässä 218.
Kuten selostettiin kuvion 3 yhteydessä, äänentason haku on analyysi-synteesitekniikka, jossa koodaus 20 suoritetaan valitsemalla parametrit, jotka minimoivat virheen tulevan puheen ja syntetisoidun puheen välillä käyttäen näitä parametreja. Äänentason haussa puhe syntetisoidaan käyttäen äänentason synteesisuodatinta, jonka vaste esitetään kaavassa (2). Jokainen 20 mil-25 lisekunnin puhekehys alijaetaan tiettyyn lukumäärään äänentason alakehyksiä, jotka, kuten selostettiin yllä, riippuvat kehykselle valitusta datanopeudesta. Kerran kutakin äänentason alakehystä kohti lasketaan parametrit b ja L, äänentason vahvistus ja hidastus vastaavas-30 ti. Esimerkinomaisessa toteutuksessa äänentason hidastus L on välillä 17 ja 143 ja lähetystarkoituksia varten L=16 varataan tapausta varten, jolloin b=0.
Puhekooderissa käytetään 35 havaintokohinapainotussuodatinta kaavan (1) mukaisesti.
63
Kuten mainittiin aikaisemmin, havaintopainotussuodattimen tarkoitus on painottaa virhe taajuuksille, joilla on pienempi teho virheistä johtuvan kohinan vaikutuksen vähentämiseksi.
5 Havaintopainotussuodatin johdetaan· lyhyen aikavälin ennustussuodattimesta, joka on esitetty yllä. LPC-kertoimet, joita käytetään painotussuodattimessa, ja formanttisynteesisuodatin, jota selostetaan alla, ovat ne interpoloidut arvot, jotka ovat oikeat 10 alakehykselle, joka koodataan.
Kun suoritetaan analyysi-synteesitoimenpiteet, käytetään kopiota puheen dekooderi/syntetisoijasta kooderissa. Kaavoista (3) ja (4) saadaan puheen 15 kooderin synteesisuodattimen muoto. Kaavat (3) ja (4) vastaavat dekooderipuhesynteesisuodatinta, jota seuraa havaintopainotussuodatin, jota siksi kutsutaan painotetuksi synteesisuodattimeksi.
20 Äänentason haku suoritetaan olettaen, että vaikutus koodikirjasta nykyisellä kehyksellä on 0, eli G = 0. Kullakin mahdollisella äänentason hidastuksella L, puhe syntetisoidaan ja verrataan alkuperäiseen puheeseen. Tulopuheen ja syntetisoidun puheen välinen 25 virhe painotetaan havaintopainosuodattimessa ennen kuin sen keskimääräinen neliövirhe (MSE) lasketaan. Tämän tarkoituksena on poimia L ja b arvot kaikista mahdollisista arvoista L ja b, jotka minimoivat virheen havaintopainotuspuheen ja 30 havaintopainotussynteesipuheen välillä. Virheen minimointi voidaan lausua seuraavalla yhtälöllä: i V-i MSE = ~ Σ (x(n) - x\n)f (28)
Lp „=Q
64 jossa Lp on näytteiden lukumäärä äänentason alakehykses-sä, joka tässä suoritusmuodossa on 40 täyden nopeuden äänentason alakehyksellä. Äänentason vahvistus b laske-5 taan, jolla MSE minimoidaan. Nämä laskennat toistetaan kaikilla L:n sallituilla arvoilla, ja L ja b, jotka tuottavat minimin MSE:n, valitaan äänentason suodattimelle.
10 Optimi äänentason hidastuksen laskenta sisäl tää formantin jäännösarvon (p(n) kuviossa 3) kaikkina ajanhetkinä välillä n = -Lmax ja n = (LP - Lmin) - 1, jossa Lmax on maksimi äänentason hidastusarvo, Lmin on minimi äänentason hidastusarvo ja LP on äänentason 15 alakehyksen pituus valitulle nopeudelle, ja jossa n = 0 on äänentason alakehyksen alkuarvo. Esimerkinomaisessa suoritusmuodossa Lmax = 143 ja Lmin = 17. Käyttämällä kuvion 14 numerointijärjestelyä saadaan nopeudelle 1/4, n = -143 ... n = 142; nopeudelle 1/2, n = -143 ... n = 20 62; ja nopeudelle 1, n = -143 ... n = 22. Arvoille n<0 formantti jäännösarvo on yksinkertaisesti äänentason suodattimen anto edellisistä äänentason alakehyksistä, joka pidetään äänentason suodattimen muistissa, ja tätä sanotaan suljetun silmukan formanttijäännösarvoksi. 25 Arvolle n > 0 formanttijäännösarvo on formanttianalyysisuodattimen anto, jolla on suodatusominaisuus A(z), jossa otto on nykyinen ana-lyysikehysnäyte. Arvoille n > 0 formanttijäännösarvoa kutsutaan avoimen silmukan formanttijäännösarvoksi, ja 30 se olisi täsmälleen yhtä suuri kuin p(n), mikäli äänentason suodatin ja koodikirja ennustavat täydellisesti tässä alakehyksessä. Optimi äänentason hidastuksen laskentaa siihen liittyvistä formanttijäännösarvoista selostetaan tarkemmin viittaamalla kuviin 14-17.
35 65 Äänentason haku suoritetaan 143 rekonstruoidun suljetun silmukan formanttijäännösarvonäytteen yli, p(n), jossa n < 0 ja lisäksi LP - Lmin ei-kvantisoitujen avoimen silmukan formanttijäännösarvojen yli, p0(n) 5 arvoille n < 0. Haku muuttuu asteittain lähes avoimen silmukan hausta, jossa L on pieni, ja täten useimmat käytetyt jäännösarvot ovat n > 0, lähes suljetun silmukan hakuun, jossa L on suuri, ja täten kaikki käytetyt jäännösnäytteet ovat n < 0. Esimerkiksi käyttämällä 10 kuvion 14 numerointijärjestelyä täydellä nopeudella, jossa äänentason alakehys koostuu 40 puhenäytteestä, äänentason haku alkaa käyttämällä formanttijäännösnäyt-teiden joukkoa, jotka on numeroitu n = -17 ... n = 22. Tässä arvoilla n = -17 ... n = -1 näytteet ovat sulje-15 tun silmukan formanttijäännösnäytteitä, toisaalta arvoilla n = 0 ... n = 22 näytteet ovat avoimen silmukan formanttijäännösnäytteitä. Seuraava joukko formantti-jäännösnäytteitä, joita käytetään optimiäänitason hidastuksen määrittämiseksi, ovat näytteet, jotka on 20 numeroitu n = -18 ... n = 21. Jälleen alueella n = -18 ... n = -1 näytteet ovat suljetun silmukan formantti-jäännösarvonäytteitä ja toisaalta alueella n = 0 ... n = 21 näytteet ovat avoimen silmukan formanttijäännösnäytteitä. Tämä prosessi jatkuu näytejoukkojen yli, 25 kunnes äänpntasohidastus on laskettu viimeiselle joukolle formanttijäännösarvonäytteitä, n = -143 ... n = 104.
Kuten selostettiin yllä kaavan (28) yhteydes-30 sä, tarkoituksena on minimoida virhe x(n):n, joka on havaintopainopuhe miinus nollaottovaste (ZIR) painotetulla formanttisuodattimella, ja x' (n) :n välillä, joka on erotus painosyntetisoitu puhe, jolle ei anneta muistia suodattimissa, kaikkien mahdollisten L ja b arvojen 35 yli, stokastisen koodikirjan (G=0) annetulia nollapanoksella. Kaava (28) voidaan kirjoittaa ββ uudestaan b:n suhteen: MSE = ^Σ{χ(η) - by{n)f (29)
Lp n=O
5 jossa, y(n) = h(n)*p(n-L) 0 < n < LP - 1 (30) jossa y(n) on painotettu syntetisoitu puhe, jossa ää-10 nentason hidastus L, mikäli b=l ja h (n) on impulssi vaste painotetulle formanttisynteesisuodattimelle, jolla on suodatusominaisuus kaavan (3) mukaisesti.
Tämä minimointiprosessi on ekvivalentti arvon 15 El maksimoinnin kanssa, jossa: (E )2 E EjvL· (31)
Eyy missä, 20
Exy = £*(»).K«) (32) n=0 ja.
LP-1 25 Ew = 2] y(n)y(n) (33) n~0 67
Optimi b tietylle L:lle on: E„ h=~f- (34)
Eyy 5
Haku toistetaan kaikille L:n sallituille arvoille. Optimi b rajoitetaan positiiviarvoksi, jolloin L, joka johtaa mihin tahansa negatiiviseen Exy arvoon, jätetään huomioimatta haussa. Lopuksi hidastus, L, ja äänentason 10 vahvistus, b, jotka maksimoivat EL:n, valitaan lähetettäväksi.
Kuten mainittiin yllä, x(n) on todellisuudessa havaintopainotettu erotus tulopuheen ja painotetun for-15 manttisuodattimen ZIR:n välillä, koska rekursiivisella konvoluutiolla, joka on esitetty kaavoissa (35)-(38), oletetaan, että. suodatin A(z) aina käynnistyy arvolla 0 suodatinmuistissa. Suodatin, joka käynnistyy arvolla 0 suodatinmuistissa, ei kuitenkaan aina ole todellisuutta 20 vastaava. Synteesissä suodattimena on tila, joka on peräisin edellisestä alakehyksestä. Tässä toteutuksessa alkutilan vaikutus vähennetään havaintopainotetusta puheesta alussa. Tällä tavalla ainoastaan kiinteän tilan suodattimen A(z) vaste, jolla kaikki muistit ovat 25 alunperin = 0, suhteessa p(n):ään, on laskettava kullekin L:lle, ja rekursiivista konvoluutiota voidaan käyttää. Tämä x(n):n arvo on laskettava ainoastaan kerran, mutta y(n), formanttisuodattimen 0-tilavaste äänentason suodattimen annon suhteen, on laskettava 30 kullakin hidastukselle L. Kunkin y(n):n laskenta sisältää monta redunanssikertolaskua, joita ei tarvitse laskea kullakin hidastuksella. Rekursiivisen konvoluution menetelmää, jota selostetaan alla, käytetään tar- 68 vittavan laskennan minimoimiseksi.
Rekursiivisessa konvoluutiossa arvo yL(n) määritetään arvolla y(n), jossa 5 yL (n) = h(n)*p(n-L) 17<L<143 (35) tai yL (n) = Eh(i) p(n-L-l) 17<L<143 (36) 10 Kaavoista (32) ja (33) nähdään, että: yL(0) = p(-L)h(0) (37) yL(n) = yL-i (n-1) +p (-L) h (n) l<n<Lp, 17<L<143 (38) 15 Tällä tavalla, kun kerran alkukonvoluutio yi7 (n) on suoritettu, jäljellä olevia konvoluutioita voidaan tehdä rekursiivisesti, jolloin tarvittavien laskutoimenpiteiden lukumäärä suuresti laskee. Esime-20 kiksi yllä mainitussa tapauksessa nopeudella 1 arvo yi7(n) lasketaan kaavalla (36) käyttäen formanttijään-nösnäytteitä, jotka on numeroitu n = -17 ... n = 22.
Seuraavassa viitaten kuvioon 15. Kooderi si-25 sältää kuvion 5 dekooderin kaksoiskappaleen, kuvion 7 dekooderin alajärjestelmän 235, ilman adaptiivista jälkisuodatinta. Kuviossa 15 otto äänen tason syn-teesisuodattimeen 550 on koodikirja arvon Ci(n) ja koodikirjan vahvistuksen G tulo. Otossa olevat formant-30 tijäännösarvonäytteet p(n) viedään ottona formant- tisynteesisuodattimelle 552, jossa ne suodatetaan ja 69 viedään edelleen rekonstruoituna puhenäytteinä s' (n). Rekonstruoidut puhenäytteet s' (n) vähennetään vastaavista ottopuhenäytteistä s(n) summaimessa 554. Näytteiden s (n) ' ja s(n) erotus viedään ottona havaintopaino-5 tussuodattimelle 556. Äänen tason synteesisuodatin 550, formanttisynteesisuodatin 552 ja havaintopainotussuoda-tin 556 sisältävät kukin suodatustilan muistin, jossa: Mp on muisti äänentason synteesisuodattimessa 550; Ma muisti formanttisynteesisuodattimessa 552; ja Mw muisti 10 havaintopainotussuodattimessa 556.
Suodattimen tila Ma dekooderi alajärjesteinään formanttisynteesisuodattimelta 552. sovitetaan äänen tason alajärjestelmään 220 kuviossa 7. Kuviossa 16 15 suodatintila Ha annetaan laskemaan suodattimen 560 nollaottovasteen (ZIR), joka suodatin laskee formanttisynteesisuodattimen 552 ZIR:n. Laskettu ZIR-arvo vähennetään ottopuhenäytteistä s(n) summaimessa 562, jolloin tulos painotetaan 20 havaintopainotussuodattimessa 564.
Havaintopainotussuodattimen 564 antoa, xp(n) käytetään kaavojen (28) - (34) painotettuna ottopuheena, jolloin x(n) = xp (n) .
25 Seuraavassa viitataan kuviin 14 ja 15, joissa äänentason synteesisuodatin 550 kuvion 14 esittämänä aikaansaa adaptiiviselle koodikirjalle 568, joka on luonteeltaan muisti suljetun ja avoimen silmukan formanttijäännösnäytteiden tallentamiseksi, jotka 30 laskettiin yllä mainitulla tavalla. Suljetun silmukan formanttijäännös talletetaan muistiosaan 570 ja avoimen silmukan formanttijäännös talletetaan muistiosaan 572. Näytteet talletetaan yllämainitun numerointisysteemin mukaisesti. .Suljetun silmukan formanttijäännös 35 järjestetään yllä mainitulla tavalla käyttäen kutakin 70 äänen tason hidastushakua L. Avoimen silmukan formanttijäännös lasketaan ottopuhenäytteistä s (n) kullekin äänen tason alakehykselle käyttäen formanttianalyysisuodatinta 574, joka käyttää 5 dekooderialajärjestelmän formanttisynteesisuodattimen 552 muistia Ma laskettaessa pG(n):n arvoja. p0(n):n arvot nykyisellä äänentason alakehyksellä siirretään viive-elementtien sarjan 576 kautta ja viedään adaptiivisen koodikirjan 568 muistiosaan 572. Avoimen 10 silmukan formanttijäännökset talletetaan siten, että ensimmäinen jäännösnäytegeneroitu luku on 0 ja viimeinen 142.
Viitaten nyt kuvioon 16, impulssivaste h (n) 15 formanttisuodattimella lasketaan suodattimessa 566 ja viedään siirtorekisterille 580. Kuten mainittiin yllä formanttisuodattimen h(n) impulssivasteen yhteydessä, kaavat (29 - (30) ja (35) - (38), nämä arvot lasketaan kullekin äänentason alakehykselle suodattimessa. Las-20 kentavaatimusten vähentämiseksi edelleen äänentason suodattimen alajärjestelmässä, formanttisuodattimen h(n) impulssivastetta rajoitetaan 20 näytteeseen.
Siirtorekisteri 580 yhdessä kertojan 582, 25 summaimen 584 ja siirtorekisterin 586 kanssa on sovitettu suorittamaan rekursiivisen konvoluution rekisteriltä 580 tulevien arvojen h (n) ja adaptiivisesta koodikirjasta 568 tulevien arvojen c (m) välillä, kuten mainittiin yllä. Tätä konvoluutiotoimintoa suoritetaan 30 formanttisuodattimen nollatilavasteen (ZSR) löytämiseksi ottoon, joka tulee äänentason suodattimen muistista olettaen, että äänentason vahvistus asetetaan l:ksi. Konvoluutiopiiristön toimiessa n saa arvot Lp ... 1 kullekin m:lle, m:n saadessa arvot (Lp - 17) - 1 ... - 35 143. Rekisterissä 586 dataa ei viedä eteenpäin mikäli n 71 = 1 eikä dataa ladata sisään mikäli n = Lp. Data sovitetaan antona konvoluutiopiiristä mikäli m<-17.
Konvoluutiopiirin jälkeen seuraa korrelointi-5 ja vertailupiiri, joka pyrkii löytämään optimaalisen äänentason hidastuksen L ja äänentason vahvistuksen b. Korrelointipiiri, jota myös kutsutaan keskimääräisen neliövirheen (MSE) piiriksi, laskee ZSR:n auto- ja ristikorreloinnin havaintopainotuserotuksella formant-10 tisuodattimen ZIR:n ja tulopuheen, eli x(n),. välillä. Käyttäen näitä arvoja korrelointipiiri laskee optimaalisen äänentason vahvistuksen b arvon kullekin äänentason hidastuksen arvolle.
Korrelointipiiriin kuuluu siirtorekisteri 588, kertojat 15 590 ja 592, summaimet 594 ja 596, rekisterit 598 ja 600 ja jakaja 602. Korrelointipiirissä laskennat ovat sellaisia, että n saa arvot Lp ... 1 jam saa arvot (Lp -17) -1 ... -143.
20 Korrelointipiiriä seuraa vertailupiiri, joka suorittaa vertailut ja tallettaa datan optimiarvon määrittämiseksi äänen tasolle L ja vahvistukselle b. Vertailupiiriin kuuluu kertoja 604/ vertailija 606, rekisterit 608, 610 ja 612; ja kvantisoija 614. Vertai-25 lupiiri antaa lähtöönsä kullekin äänentason alakehyk- selle arvot L ja b, jotka minimoivat virheen syntetisoidun puheen ja tulopuheen välillä. b:n arvo kvan-tisoidaan kahdeksalle tasolle kvantisoijalla 614 ja esitetään 3-bittisellä arvolla lisätasolla, b = 0 -ta-30 solia mikäli L = 16. Nämä L:n ja b:n arvot viedään koodikirjan hakualajärjestelmään 230 ja datapuskuriin 222. Nämä arvot sovitetaan datapakkausalajärjestelmän 238 kautta tai datapuskurin 222 kautta dekooderille 234 käytettäväksi äänentason haussa.
35 72
Kuten äänentason haussa, koodikirjahaku on analyysi/synteesi-koodausjärjestelmä, jossa koodaus suoritetaan valitsemalla parametrit, jotka minimoivat virhettä tulopuheen ja näitä parametrejä käyttämällä 5 syntetisoidun puheen välillä. Nopeudella 1/8 äänentason vahvistus b asetetaan nollaan.
Kuten mainittiin yllä, kukin 20 ms alijaetaan tiettyyn lukumäärään koodikirjan alakehyksiä, jotka, 10 kuten mainittiin yllä, riippuvat kehykselle valitusta datanopeudesta. Kerran koodikirjan alakehystä kohti parametrit G ja I, koodikirjan vahvistus ja indeksi lasketaan vastaavasti. Näiden parametrien laskennassa LSP-taajuudet interpoloidaan alikehykselle, paitsi 15 täydelle nopeudelle koodikirjan alikehyksen LSP-
interpolointialajärjestelmässä 226 tavalla, jota on selostettu äänentason alikehyksen LSP
interpolointialajärjestelmän 216 yhteydessä.
Koodikirjan alikehyksen interpoloidut LSP-taajuudet 20 konvertoidaan myös LPC-kertoimiksi LSP - LPC muunnos alajärjestelmässä 228 kullekin koodikirjan alakehy-skelle. Koodikirjan alakehyksen laskinta 232 käytetään pitämään kirjaa koodikirjan alakehyksistä, joilla koodikirjan parametrejä lasketaan, jolloin laskimen anto 25 sovitetaan koodikirjan alakehyksen LSP- interpolointialajärjestelmään 226 käytettäväksi koodikirjan alakehyksen LSP-interpoloinnissa.
Koodikirjan alakehyslaskimeen 232 sovitetaan myös anto, joka osoittaa koodikirjan alakehyksen valmistumisen 30 valitulle nopeudelle, äänentason alakehyksen laskimelle 224.
Herätekoodikirja koostuu 2M koodivektoreista, jotka konstruoidaan yksikkö-vaihtelevasta valkoisesta 35 Gaussi-satunnaissekvenssistä. Se sisältää 128 syöttöä 73 koodikirjassa arvolla M = 7. Koodikirja organisoidaan rekursiivisella tavalla siten, että kukin koodivektori poikkeaa vierekkäisestä koodivektorista yhden näytteen osalta; eli koodivektorin näytteet siirretään yhden 5 position verran siten, että uusi näyte siirretään sisään toisessa päässään ja näyte poistetaan toisesta. Siksi rekursiivinen koodikirja voidaan tallettaa lineaarisena alueena, joka on 2M + (Lc - 1) pitkä, jossa Lc on koodikirjan alakehyksen pituus. Kuitenkin 10 toteutuksen yksinkertaistamiseksi ja muistitilan säästämiseksi käytetään rengasmaista koodikirjaa, joka on 2m näytettä pitkä (128 näytettä).
Laskutoimitusten vähentämiseksi leikataan 15 koodikirjan Gaussi-arvoja keskeltä. Arvot valitaan alunperin valkoisesta Gaussi-prosessista varianssilla 1. Tämän jälkeen mikä tahansa arvo, joka on kooltaan alle 1,2 asetetaan nollaksi. Tämä asettaa noin 75 % arvoista nollaksi, jolloin saadaan impulssien 20 koodikirja. Tämä koodikirjan keskileikkaus vähentää tarvittavien kertolaskujen lukumäärän, jotka tarvitaan rekursiivisen konvoluution suorittamiseksi koodikirjassa, kertoimen 4 verran, koska kertomista nollalla ei tarvitse tehdä. Nykyisessä toteutuksessa 25 käytettävä koodikirja esitetään alla taulukossa VII.
Taulukko VIII
0x0000 0x0000 0x0000 0x0000 0x2afe 0x0000 0x0000 0x0000 30 0x41da 0x0000 0x0000 0x0000 0x0000 0x0000 0x0000 0x0000 0x0000 0x0000 0x0000 0x0000 0x0000 0x3bb3 0x0000 0x363e 0x0000 0x0000 0x0000 0x0000 0x0000 0x0000 0x417d 0x0000 0x0000 0x0000 0x0000 0x0000 0x0000 0x0000 0x0000 0x0000 74 0x0000 0x0000 0x0000 0x0000 0x0000 0x9dfe 0x0000 0x0000 0x0000 0x0000 0x0000 0x0000 0x0000 0x0000 0x0000 0x0000 0x0000 0xc58a 0x0000 0x0000 0x0000 0x0000 0x0000 0x0000 0x0000 0xc8db 0xd365 0x0000 0x0000 0xd6a8 0x0000 0x0000 5 0x0000 0x3e53 0x0000 0x0000 0xd5ed 0x0000 0x0000 0x0000 0xd08b 0x0000 0x0000 0x0000 0x0000 0x3dl4 0x396a 0x0000 0x0000 0x0000 0x0000 0x0000 0x0000 0x4ee7 0xd7ca 0x0000 0x0000 0x438c 0x0000 0x0000 0xad49 0x30bl 0x0000 0x0000 0x0000 0x0000 0x0000 0x0000 0x0000 0x0000 0x0000 0x0000 10 0x0000 0x0000 0x3fcd 0x0000 0x0000 0xdl87 0x2el6 0xd09b 0xcb8d 0x0000 0x0000 0x0000 0x0000 0x0000 0x0000 0x32ff Jälleen puhekooderi käyttää havaintokohinapai-notussuodatinta, joka on muotoa, joka on esitetty kaa-15 vassa (1), joka sisältää painotetun synteesisuodattimen kaavan (3) mukaisesti. Kullakin koodikirjaindeksillä, I puhe syntetisoidaan ja verrataan alkuperäiseen puheeseen. Virhe painotetaan havaintopainotussuodattimella ennen kuin sen MSE lasketaan.
20
Kuten mainittiin yllä, tehtävänä on minimoida virhe x(n):n ja x'(n):n välillä kaikilla mahdollisilla I:n ja G:n arvoilla. Virheen minimointi suoritetaan seuraavalla kaavalla: 25 1 fc1 MSE = — 2] (x(n) ~ x'n))2 (39) A: nm 0 jossa Lc on näytteiden lukumäärä koodikirjan alakehyk-sessä. Kaava (38) voidaan myös kirjoittaa G:n suhteen: lb 1 Le-1 MSE = — £ 00) - GyO))2 (40) O "=0 jossa y saadaan formanttisuodattimen impulssivasteesta 5 I:nnellä koodivektorilla olettaen, että G=l. MSE:n minimointi on vuorostaan sama kuin maksimointi:
Ej=^L· (41)
Eyy 10 jossa ^ = ΣΧ(#0(Π) (42) n~ 0 ja
Lc-1 15 Eyy= ΣΐΟ)ΐΟ) «=o (43) G:n optimiarvo tietyllä I:llä saadaan seuraavan kaavan mukaisesti:
Exv 20 (44) Tämä haku toistetaan kaikilla I:n sallituilla arvoilla. Äänentason haun vastakohtana optimivahvistuksen, G, sallitaan olla positiivinen tai negatiivinen. Lopuksi 25 indeksi, I, ja koodikirjan vahvistus, G, jotka 76 maksimoivat E^n, valitaan lähetettäväksi.
On jälleen huomattava, että x(n), joka on havaintopainotuserotus tulopuheen ja painotetun 5 äänentason ja formanttisuodattimen ZIR:n välillä, on laskettava vain kerran. Kuitenkin y(n), nollatilan äänentason ja formanttisuodattimien vaste kullekin koodin vektorille, on laskettava kullekin indeksille I. Koska käytetään rengasmaista koodikirjaa, menetelmää, 10 jota selostettiin rekursiivisen konvoluution yhteydessä äänentason haulle, voidaan käyttää tarvittavien lasku-toimenpiteiden minimoimiseksi.
Jälleen viitaten kuvioon 15, kooderi sisältää 15 kuvion 5 kopion, kuvion 7 dekooderin alajärjestelmän 235, jossa suodattimen tilat lasketaan, jossa: Mp on äänentason synteesisuodattimen 550 muisti; Ma on formanttisynteesisuodattimen 552 muisti; ja Mw on havaintopainotussuodattimen 556 muisti.
20
Suodatintilat Mp ja Ma, vastaavasti dekooderin alajärjestelmän äänentason synteesi- ja formant-tisuodattimista 550 ja 552 (kuvio 15), sovitetaan koodikirjan hakualajärjestelmään 230 kuviossa 7. 25 Kuviossa 17 suodatintilat Mp ja Ma sovitetaan nollaimpulssi vaste (ZIR) suodattimelle 620, joka laskee äänentason ja formnattisynteesisuodattimien 550 ja 552 ZIR:n. Laskettu ZIR vähennetään summaimessa 662 ottopuhenäytteistä s(n) ja tulos painotetaan 30 erotuspainotussuodattimessa 624.
Havaintopainotussuodattimen 564 antoa xc(n) käytetään painotettuna ottopuheena yllä mainituissa MSE kaavoissa (39) - (44), joissa x(n) = Xc(n).
77
Kuviossa 17 formanttisuodattimen impulssivaste h (n) lasketaan suodattimessa 626 ja viedään siirtore-kisteriin 628. Formanttisuodattimen h (n) impulssivaste lasketaan kullekin koodikirjan alakehykselle. Edelleen 5 tarvittavien laskentatoimenpiteiden vähentämiseksi formanttisuodattimen impulssivaste h (n) katkaistaan 20 näytteeksi.
Siirtorekisteri 628 yhdessä kertojan 630, 10 summaimen 632 ja siirtorekisterin 634 kanssa on sovi tettu suorittamaan rekursiivinen konvoluutio siirtorekisterin 628 arvojen h (n) ja koodikirjan 636 arvojen c(m) välillä, joka sisältää koodikirjan vektorit, kuten yllä on kuvattu. Tämä konvoluutiotoiminto suoritetaan 15 nollatilavasteen (ZSR) löytämiseksi formanttisuodattimelle kullekin koodivektorille olettaen että koodikirjavahvistus on asetettu l:ksi. Konvoluutiopiiin toiminnassa, n muuttuu alueella Lc ... 1 kullakin m:n arvolla, kun m vaihtelee välillä 1 ...
20 256. Rekisterissä 586 dataa ei lähetetä eteenpäin mikäli n = 1 ja dataa ei ladata sisään mikäli n = Lc. Data saadaan antona konvoluutiopiiriltä kun m < 1. On huomattava, että konvoluutiopiiri on alustettava suorittamaan rekursiivisen konvoluution toiminnon 25 kiertämällä alikehystä m kertaa ennen kuin käynnistetään korrelointi- ja vertailupiiristö, joka sijaitsee konvoluutiopiiristön jälkeen.
Korrelointi- ja vertailupiiristö suorittaa 30 todellisen koodikirjahaun koodikirjaindeksin I ja koodikirjan vahvistuksen G saamiseksi.
Korrelointipiiristö, jota myös kutsutaan nimellä keskimääräisen neliövirheen (MSE) piiristö, laskee ZSR: n auto- ja ristikorreloinnin havaintopainotetulla 35 erotuksella äänentason ja formanttisuodattimen ZIR:n ja 78 tulopuheen x'(n) välillä. Toisin sanoen korrelointipiiristö laskee koodikirjan vahvistuksen G arvon kullakin koodikirjan indeksin I arvolla. Korrelointipiiristö koostuu siirtorekisteristä 638, 5 kertoimista 640 ja 642, summaimista 644 ja 646, rekistereistä 648 ja 650 ja jakajasta 652. Korrelointipiirissä laskennat tehdään siten, että n on välillä Lc ... 1 m:n vaihdellessa välillä 1 ... 256.
10 Korrelointipiiristön jälkeen sijaitsee vertailupiiristö, joka suorittaa vertailut ja tallettaa dataa koodikirjan indeksin I ja vahvistuksen G optimiarvojen määrittämiseksi. Vertailupiiristöön kuuluu kertoja 654, komparaattori 656, rekisterit 658, 15 660 ja 662, ja kvantisoija 664. Vertailupiiristö antaa
kullekin koodikirjan alakehykselle I:n ja G:n arvot, jotka minimoivat virheen syntetisoidun puheen ja tulopuheen välillä. Koodikirjavahvistusta G
kvantisoidaan kvantisoijassa 614, joka DPCM-koodaa 20 arvot kvantisoinnin aikana tavalla, joka vastaa esipoistetun LSP:n taajuuskvantisointia ja koodausta, jota on selostettu viittamaalla kuvioon 12. Nämä I:n ja G:n arvot viedään tämän jälkeen datapuskuriin 222.
25 Koodikirjan vahvistuksen G koodauksessa ja DPCM-koodauksessa laskenta suoritetaan seuraavan kaavan mukaisesti:
Kvantisoitu Gj_ = 20 log Gi - 0, 45(20 log Gi_i + 20 log Gi_2) (45) 30 jossa 20 log Gi-ι ja 20 log Gi-2 ovat vastaavat arvot, jotka on laskettu välittömästi edeltävälle kehykselle (i—1) ja sitä edeltävälle kehykselle (i —2).
79 LSP, I, G, L ja b -arvot yhdessä nopeuden kanssa sovitetaan datapakkausalajärjestelmään 236, jossa data järjestetään lähetettäväksi. Eräässä sovelluksessa LSP, I, G, L ja b -arvot yhdessä nopeuden 5 kanssa voidaan lähettää dekooderille 234 datapakkausalajär j esteinään 236 kautta. Toisessa sovelluksessa nämä arvot voidaan sovittaa datapuskurin 222 kautta kooderille 234 käytettäväksi äänentason haussa. Edullisessa suoritusmuodossa koodikirjan 10 etumerkkibitin suojaus suoritetaan datapakkausalajärjestelmän 236 sisällä, joka voi vaikuttaa koodikirjan indeksiin. Siksi tämä suojaus on otettava huomioon mikäli I ja G sovitetaan suoraan datapuskurista 222.
15
Datapakkausalajärjestelmässä 236 data voidaan pakata eri formaateissa lähetettäväksi. Kuviossa 18 esitetään esimerkkisuoritusmuoto datapakkausalajärjestelmän 236 toimintoelementeistä.
20 Alajärjestelmään 236 kuuluu näennäissatunnaisgeneraattori (PN) 670, syklinen redun-danssitarkistus (CRC) laskentaelementti 672, da-tasuojauslogiikka 674 ja datayhdistin 676. PN-generaat-tori 670 vastaanottaa nopeuden ja generoi 8-nopeudella 25 4-bittisen satunnaisluvun, joka sovitetaan datayhdisti-meen 676. CRC-elementti 672 vastaanottaa koodikirjan vahvistuksen ja LSP-arvot yhdessä nopeuden kanssa ja generoi täydellä nopeudella 11-bittisen sisäisen CRC-koodin, joka viedään datayhdistimelle 676.
30
Datayhdistin 674 vastaanottaa satunnaisluvun; CRC-koodin, ja yhdessä nopeuden ja LSP, I, G, L ja b -arvojen kanssa datapuskurista 222 (kuvio 7b) antaa annon lähetyskanavadataprosessorialajärjestelmälle 234.
35 Sovelluksessa, jossa data vietiin suoraan 80 datapuskurista 222 dekooderille 234 ainakin PN-generaattorin 4-bittinen luku sovitetaan PN-generaattorilta 670 datayhdistimen 676 kautta dekooderille 234. Täydellä nopeudella CRC-bitit 5 sisältyvät yhdessä kehysnopeuden kanssa datayhdistimen 674 antoon, kun taas 8-nopeudella koodikirjan indeksiarvo jätetään pois ja korvataan satunnaisella 4-bittisellä luvulla.
10 Esimerkkisovelluksessa on edullista, että suojaus sovitetaan koodikirjan vahvistuksen etumerkki-bittiin. Tämän bitin suojaus tekee vokooderin dekoode-rin vähemmän herkäksi yhdelle ainoalle bittivirheelle tässä bitissä. Mikäli etumerkkibitti muuttuu havaitse-15 mattonaan virheen takia, koodikirjaindeksi osoittaisi vektoria, joka ei ole optimi. Virhetilanteessa ilman suojausta optimivektorin negatiivinen arvo valittaisiin, joka pahimmassa tapauksessa on huonoin mahdollinen vektori. Tässä käytetty suojausjärjestely 20 varmistaa, että virhe yhdessä ainoassa bitissä vahvistusetumerkkibitissä ei aiheuta sitä, että valitaan optimivektorin negatiiviarvoa virhetilanteessa. Datasuojauslogiikka 674 vastaanottaa koodikirjan indeksin ja vahvistuksen ja tutkii 25 vahvistusarvon etumerkkibittiä. Mikäli bitti todetaan negatiiviseksi, arvo 89 lisätään, mod 128, vastaavaan koodikirjaindeksiin. Oli koodikirjaindeksi modifioitu tai ei, viedään se datasuojauslogiikalta 674 datayhdistimeen 676.
30 Tässä suoritusmuodossa on edullista, että täydellä nopeudella tiivistetyn äänipaketin herkimmät bitit suojataan, kuten sisäisellä CRC:llä. Yksitoista ylimääräistä bittiä käytetään tämän virhehavainnon ja 35 korjauksen suorittamiseksi, joka pystyy korjaamaan 81 yksittäisiä virheitä suojatussa lohkossa. Suojattuun lohkoon kuuluu 10 LSP taajuuksien merkityksellisimmät bitit ja 8 koodikirjan vahvistusarvojen merkitykselli-simmät bitit. Mikäli korjaamaton virhe tapahtuu tässä 5 lohkossa, paketti jätetään huomioimatta ja määritetään poisto. Muutoin äänentason vahvistus asetetaan nollaksi mutta muita parametrejä käytetään vastaanotetussa muodossa. Tässä valitaan syklinen koodi, joka on muodossa : 10 g(x) = 1 + x3 + x5 + x6 + x8 + x9 + x10 (46) josta saadaan (31,21) syklinen koodi. On kuitenkin ymmärrettävää, että voidaan käyttää myös muita 15 generaattoripolynoomeja. Kokonaispariteettibitti sovitetaan (32,21) koodin aikaansaamiseksi. Koska tähän sisältyy vain 18 informaatiobittiä, ensimmäiset 3 bittiä koodisanassa sovitetaan nollaksi, eikä näitä lähetetä. Tämä tarjoaa lisäsuojaa siten, että mikäli 20 havaitaan virhe näissä kohdissa, on kysymyksessä korjaamaton virhe. Syklisen koodin koodaaminen systemaattisella tavalla sisältää pariteettibittien laskemisen muodossa xlO u(x) modulo g(x), jossa u(x) on viestipolynomi.
25
Dekoodauspäässä oire lasketaan jäännösarvona jaettaessa vastaanotettu vektori g(x):llä. Mikäli oire osoittaa, että ei esiinny virhettä, paketti hyväksytään riippumatta kokonaispariteettibitin tilasta. Mikäli 30 oire osoittaa yhtä virhettä, virhe korjataan mikäli kokonaispariteettibitin tila ei tarkista. Mikäli oire osoittaa useampia virheitä, paketti poistetaan. Katso edelleen "Error Control Coding: Fundamentals and Applications", osa 4.5; Lin ja Costello.
82 CDMA-solupuhelinjärjestelmäsovelluksessa data viedään datayhdistimeltä 674 lähetyskanavan dataproses-' sorialajärjestelmään 238 pakattavaksi ja lähetettäväksi 5 20 ms kehyksessä. Lähetyskehyksessä, jossa vokooderi säädetään täydelle nopeudelle, 912 bittiä siirretään tehollisella nopeudella 9,6 kbps. Lähetyskehys muodostuu tässä tapauksessa yhdestä sekoitetun tilan moodibi-tistä, jota käytetään osoittamaan sekakehyksen tyyppiä 10 (0 = ainoastaan puhetta, 1 = puhetta ja dataa/signaale- ja); 160 vokooderin databitistä yhdessä 11 sisäisen CRC-bitin kanssa; 12 ulkoista tai kehys-CRC-bittiä; ja 8 häntä- tai tasabittiä. Puolella nopeudella 80 vokooderidatabittiä lähetetään yhdessä 8 kehys-CRC-15 bitin kanssa ja 8 häntäbitin kanssa nopeudella 4,8 kbps. Neljäsosanopeudella 40 vokooderin databittiä lähetetään yhdessä 8 häntäbitin kanssa nopeudella 2,4 kbps. Lopuksi kahdeksasosanopeudella 16 vokooderin databittiä lähetetään yhdessä 8 häntäbitin kanssa 20 nopeudella 1,2 kbps.
Yksityiskohtia CDMA-järjestelmästä, jossa käytetään keksinnön mukaista vokooderia selostetaan US-patenttihakemuksessa 07/543,496, tehty 25. kesäkuuta ja 25 1990 ja nimettynä "SYSTEM AND METHOD FOR GENERATING SIGNAL WAVEFORMS IN A CDMA CELLULAR TELEPHONE SYSTEM", siirretty esillä olevan keksinnön haltijalle. Tässä järjestelmässä käytetään muilla nopeuksilla kuin täydellä nopeudella järjestelyä, jossa databitit järjeste-30 tään ryhmiin siten, että bittiryhmät sijaitsevat näen-näissatunnaisesti 20 ms datalähetyskehyksen sisällä. On ymmärrettävää, että voidaan käyttää muita kehysnopeuk-sia ja bittiesityksiä kuin tässä esitetyt.
35 CDMA-järjestelmässä ja myös muissa järjestel- 83 missä, prosessorialajärjestelmä 238 voi kehys kehykseltä periaatteella keskeyttää vokooderidatan lähetyksen muiden datojen lähettämiseksi, kuten signaalidataa tai muuta ei-puhedataa. Tätä kutsutaan 5 nimellä "tyhjä ja purske". Prosessorialajärjestelmä 238 korvaa olennaisesti vokooderidatan toivottavalla lähetysdatalla kehykselle.
Toinen tilanne voi syntyä, jossa on tarve 10 lähettää sekä vokooderidataa että muuta dataa saman datalähetyskehyksen aikana. Tätä kutsutaan nimellä "himmeä ja purske". "Himmeä ja purske"-lähetyksessä vokooderille lähetetään nopeudesta riippuvia käskyjä, jotka sovittavat vokooderin loppunopeuden toivotuksi, 15 esim. puolinopeudeksi. Puolinopeuskoodattu vokooderidata sovitetaan prosessorialajärjestelmään 238, joka sovittaa ylimääräisen datan yhdessä vokooderidatan kanssa datalähetyskehystä varten.
20 Lisäfunktio täysdupleksipuhelinlinkkejä varten on nopeuden lukitus. Mikäli toinen suunta linkistä lähettää suurimmalla nopeudella, toinen suunta pakotetaan lähettämään pienimmällä nopeudella. Myös pienimmällä nopeudella saadaan riittävästi tietoa perille 25 puhujalle, jotta hän ymmärtää, että hänet halutaan keskeyttää, näin linkin toiselle suunnalle annetaan aktiivisen puhujan rooli. Edelleen, mikäli aktiivinen puhuja jatkaa puhumista huolimatta yritetystä keskeytyksestä, hän ei todennäköisesti havaitse 30 huonontumista laadussa, koska hänen oma puheensa "jumittaa" kyvyn havaita laatua. Jälleen, käyttämällä nopeusrajakomentoja, vokooderi voidaan asettaa vokoodaamaan puhetta normaalia alhaisemmalla nopeudella.
35 84
On ymmärrettävää, että nopeudesta riippuvia käskyjä voidaan käyttää vokooderin maksiminopeuden asettamiseksi nopeudelle, joka on eri kuin täysinopeus mikäli tarvitaan CDMA-järjestelmässä lisäkapasiteettia.
5 CDMA-järjestelmässä, jossa käytetään tavallista taajuusspektriä lähetystä varten, yksi käyttäjäsignaali toimii interferenssinä muille käyttäjille järjestelmässä. Järjestelmän käyttäjäkapasiteetti rajoittuu täten järjestelmän käyttäjien aiheuttamasta 10 kokonaisinterferenssistä. Interferenssitason lisääntyessä, yleensä johtuen käyttäjien lisääntymisestä järjestelmän sisällä, laadun huononeminen havaitaan johtuen lisääntyneestä interferenssistä.
15
Kunkin käyttäjän havaitsema interferenssi CDMA-järjestelmässä on käyttäjän lähetysdatanopeuden funktio. Sovittamalla vokooderi koodaamaan puhetta pienemmällä nopeudella kuin normaalilla nopeudella, 20 koodattu data lähetetään tämän jälkeen vastaavalla pienennetyllä nopeudella, joka vähentää käyttäjän aiheuttamaa interferenssitasoa. Siten järjestelmän kapasiteettia voidaan olennaisesti lisätä koodaamalla puhetta pienemmällä nopeudella. Järjestelmän 25 vaatimusten lisääntyessä, käyttäjän vokooderia voidaan käskeä järjestelmän ohjaimella tai solupohjäisellä asemalla koodausnopeuden pienentämiseksi. Esillä olevan keksinnön mukainen vokooderi on sellainen, että on erittäin vähän havaittavaa eroa täydellä nopeudella ja 30 puolella nopeudella koodatussa puheessa. Siksi vaikutus kommunikaation laatuun järjestelmäkäyttäjien välillä, missä puhetta vokoodataan alhaisella nopeudella, kuten puolinopeudella, on vähemmän merkityksellistä kuin sellainen joka aiheutuu kasvaneesta 35 interferenssitasosta, joka johtuu kasvaneesta käyttäjien määrästä järjestelmässä.
85
Eri menetelmiä voidaan siksi käyttää asettamaan yksittäisiä vokooderinopeusrajoja normaalia alhaisemmille vokoodausnopeuksille. Esimerkiksi kaikkia 5 käyttäjiä solussa voidaan komentaa koodaamaan puhetta puolella nopeudella. Tällainen toiminto olennaisesti vähentää järjestelmäinterferenssiä, pienellä vaikutuksella kommunikaation laatuun käyttäjien välillä, samalla antaen oleellisen kasvun 10 kapasiteetissa lisäkäyttäjille. Kunnes kokonaisinterferenssi järjestelmässä on kasvanut lisäkäyttäjillä heikentymistasoon, tällä ei ole vaikutusta kommunikaation laatuun käyttäjien välillä.
15 Kuten mainittiin yllä, kooderi sisältää kopion dekooderista analyysi-synteesillä-tekniikan soveltamiseksi puhenäytteiden kehysten koodaamisessa. Kuten esitetään kuviossa 7, dekooderi 234 vastaanottaa arvoja L, b, I ja I joko datapakkauksen alajärjestelmän 20 238 tai datapuskurin 222 kautta syntetisoidun puheen rekonstruoimiseksi, jotta sitä voidaan verrata ottopuheeseen. Dekooderin annossa on arvot Mp, Ma ja Mw, kuten aikaisemmin on kuvattu. Dekooderin 234 lisäyksityiskohdat, kuten käytettynä kooderissa 25 syntetisoidun puheen uudelleenrakentamisessa lähetyskanavan toisessa päässä, voidaan kuvata yhdessä viittaamalla kuvioihin 19-24,
Kuvio 19 on vuokaavio esillä olevan keksinnön 30 dekooderin esimerkinomaiselle toteutukselle. Johtuen kooderin sisällä olevan dekooderin vastaavasta rakenteesta kuin vastaanottimessa sijaitsevalla dekooderilla, näitä selostetaan yhdessä. Kuvaus suhteessa kuvioon 19 koskee pääasiassa dekooderia 35 lähetyskanavan päässä, sillä siellä vastaanotettu data 86 täytyy esiprosessoida dekooderissa, kun taas kooderin dekooderissa sopiva data (nopeus, I, G, L ja b) vastaanotetaan suoraan datapakkausalijärjestelmästä 238 tai datapuskurista 222. Kuitenkin, dekooderin 5 perusfunktio on sama sekä kooderin että dekooderin toteutuksille.
Viitaten kuvion 5 selostukseen, kullakin koodikirjan alakehyksellä koodikirjan indeksin I 10 määrittämä koodikirjan vektori haetaan talletetusta koodikirjasta. Vektori kerrotaan koodikirjan vahvistuksella G ja suodatetaan tämän jälkeen äänentason suodattimena kullakin alakehyksellä, jolloin saadaan formanttijäännös. Tämä 15 formanttijäännös suodatetaan formanttisuodattimella ja viedään tämän jälkeen adaptiivisen formanttijälkisuodattimen kautta ja kirkkauden jälkisuodattimen kautta yhdessä automaattisen vahvistuksen ohjauksen (AGC) kanssa antopuhesignaalin 20 tuottamiseksi.
Vaikkakin koodikirjan ja äänentason alakehyk-sen pituus vaihtelee, dekoodaus suoritetaan 40 näytelohkossa toteutuksen helpottamiseksi.
25 Vastaanotettu tiivistetty data pakataan ensin auki koodikirjavahvistuksiin, koodikirjaindekseihin, äänentason vahvistuksiin, äänentason hidastuksiin ja LSP-taajuuksiin. LSP-taajuudet on käsiteltävä näiden vastaavien käänteisten kvantisoijien ja DPCM-30 dekooderien kautta, kuten selostettiin kuvion 22 yhteydessä. Vastaavasti koodikirjan vahvistusarvoja on käsiteltävä vastaavalla tavalla kuin LSP-taajuuksia, lukuun ottamatta esinäkökohtaa. Myös äänentason arvoja käänteiskvantisoidaan. Nämä parametrit sovitetaan tämän 35 jälkeen kuhunkin dekoodausalakehykseen. Kussakin 87 dekoodauksen alakehyksessä tarvitaan 2 joukkoa koodikirjan parametreja (G & 1}, 1 joukko äänentason parametreja (b & L) ja 1 joukko LPC-kertoimia generoimaan 40 antonäytettä. Kuvissa 20 ja 21 esitetään esi-5 merkki alakehyksen dekoodausparametreja eri nopeuksille ja muille kehysolosuhteille.
Täyden nopeuden kehyksille on 8 joukkoa vastaanotettuja koodikirjaparametreja ja 4 joukkoa vas-10 taanotettuja äänen tason parametreja. LSP-taajuudet interpoloidaan neljä kertaa 4:n LSP-taajuusjoukon aikaansaamiseksi. Vastaanotetut parametrit ja vastaava alakehysinformaatio on esitetty kuviossa 20a.
15 Puolen nopeuden kehyksille jokaista joukkoa neljästä vastaanotetusta koodikirjaparametristaa toistetaan kerran, kutakin joukkoa kahta vastanotettua äänentason parametreja toistetaan kerran. LSP-taajuudet interpoloidaan kolme kertaa 4:n joukon LSP-taajuuksien 20 aikaansaamiseksi. Vastaanotetut parametrit ja vastaava alakehysinformaatio on listattu kuviossa 20b.
Neljäsosanopeuden kehyksille kutakin joukkoa kahdesta vastaanotetusta koodikirjaparametrista 25 toistetaan neljä kertaa, ja äänentason parametrijoukkoa toistetaan myös neljä kertaa. LSP-taajuudet interpoloidaan kerran 2:n joukon LSP-taajuuksien aikaansaamiseksi. Vastaanotetut parametrit ja vastaava alakehysinformaatio on listattu kuviossa 20c.
30
Kahdeksasosanopeuden kehyksille vastaanotettujen koodikirjaparametrien joukkoa käytetään koko kehystä varten. Äänentason parametreja ei esiinny kahdeksasosakehyksissä ja äänentason 88 vahvistus asetetaan yksinkertaisesti nollaksi. LSP-taajuudet interpoloidaan kerran l:n joukon LSP-taajuuk-sia aikaansaamiseksi. Vastaanotetut parametrit ja vastaava alikehysinformaatio on listattu kuviossa 20d.
5
Joskus äänipaketit voivat nollautua, jotta CDMA-solu tai mobiiliasema voi lähettää signalointi-informaatiota. Kun vokooderi vastaanottaa tyhjän kehyksen, se jatkaa pienellä modifikaatiolla edellisen 10 kehyksen parametriin. Koodikirjan vahvistus asetetaan nollaksi. Edellisen kehyksen äänentasoa ja vahvistusta käytetään nykyisen kehyksen äänentason hidastuksena ja vahvistuksena paitsi, että vahvistusta rajoitetaan arvoon 1 tai alle. Edellisen kehyksen LSP-taajuuksia 15 käytetään samalla tavalla kuin ilman interpolaatiota. Huomaa, että koodauspää ja dekoodauspää ovat edelleen tahdistettuja ja vokooderi pystyy palautumaan tyhjästä kehyksestä hyvin nopeasti. Vastaanotettu parametri- ja vastaava alakehysinformaatio on listattu kuvioon 21a.
20
Mikäli kehys häviää johtuen kanavavirheestä, vokooderi pyrkii maskaarnaan tämän virheen ylläpitämällä edellisen kehyksen energian murtoluvun ja siirtymällä tasaisesti taustakohinalle. Tässä tapauksessa äänen 25 tason vahvistus asetetaan nollaksi; satunnaiskoodikirja valitaan käyttämällä edellisen alakehyksen koodikir-jaindeksiä plus 89; koodikirjavahvistus on 0,7 kertaa edellisen alikehyksen koodikirjavahvistus. On huomattava, että luvussa 89 ei ole mitään maagista, 30 tämä on vain helppo tapa valita näennäissa-tunnaiskoodikirjavektori. Edellisen kehyksen LSP-taajuuksia pakotetaan vaimenemaan kohti esiarvojaan: cdi = 0,9 (edell. (¾ - ω:η esiarvo) + ω±:η esiarvo (47) 89 LSP-taajuuden esiarvot on esitetty taulukossa 5. Vastaanotettu parametri ja vastaava alakehysinformaatio on listattu kuvioon 21b.
5
Mikäli nopeutta ei voida määrittää vastaanottajassa, paketti hylätään ja poisto ilmoitetaan. Kuitenkin, mikäli vastaanotin määrittää, että on olemassa suuri todennäköisyys, että kehys on lähetetty 10 täydellä nopeudella, vaikkakin virheellisenä, tehdään seuraavaa. Kuten mainittiin täyden nopeuden yhteydessä herkimmät bitit suojataan sisäisellä CRC:llä. Dekoodauspäässä oire lasketaan jäännöksenä jakamalla vastanotettu vektori g(x):llä kaavassa (46). Mikäli 15 oire esittää, että virhe ei ole läsnä, paketti hyväksytään riippumatta kokonaispariteettibitin tilasta. Mikäli oire näyttää, että on yksi ainoa virhe, virhe korjataan mikäli kokonaisbitin tilaa ei tarkisteta. Mikäli oire esittää useampia virheitä kuin 20 yksi, paketti hylätään ja poisto ilmoitetaan. Mikäli virhe, jota ei. voida korjata, esiintyy tässä lohkossa, paketti hylätään ja poisto ilmoitetaan. Muutoin äänentason vahvistus asetetaan nollaksi, mutta loppuosaa parametreista käytetään vastaanotettuina ja 25 korjattuina, kuten esitetty kuviossa 21c.
Tässä sovelluksessa käytettyjä jälkisuodatti-mia on selostettu julkaisussa "Real-Time Vector APC Speech Coding At 4800 BPS with Adaptive Postfiltering", 30 J. H. Chen et ai., Proc ICASSP, 1987. Koska puheforman-tit ovat tärkeämpiä kuin spektrilaaksot, jälkisuodatin vahvistaa formantteja hieman koodatun puheen laadun parantamiseksi. Tämä tehdään skaalaamalla formanttisyn-teesisuodattimen napoja skaalaamalla säteettäisesti 35 kohti keskipistettä. Kuitenkin kaikkien napojen jäi- 90 kisuodatin yleensä aikaansaa spektrikallistuman, joka huonontaa suodatettua puhetta. Tämä kaikkine napajälkisuodattimien spektrikallistuma vähenee lisäämällä nollia, joilla on samat vaihekulmat kuin na-5 voilla mutta pienempi säde, jolloin saadaan jälkisuoda-tin, joka on muotoa: H{z) = P}. ο<ρ<σ< 1 Α(ζΙσ) (48) 10 jossa A(z) on formanttiennustussuodatin ja arvot p ja σ ovat jälkisuodattimen skaalauskertoimia, jossa p on asetettu 0,5:een ja σ on asetettu 0,8:aan.
Adaptiivinen kirkkaussuodatin lisätään edel-15 leen kompensoimaan spektrikallistumaa, jonka aiheuttaa formanttijälkisuodatin. Kirkkaussuodatin on muotoa: s(z)=h|i (49, 20 jossa k: n arvo (yksihaarasuodattimen kerroin) määritetään LSP-taajuuksien keskimääräisestä arvosta, joka on likimäärin A(z):n spektrikallistuman muutos.
Vahvistuksen suurempien muutosten estämiseksi 25 johtuen jälkisuodattamisesta, AGC-silmukka sovitetaan skaalaamaan puheantoa siten, että sillä on karkeasti sama energia kuin ei-jälkisuodatetulla puheella. Vahvistuksen ohjaus suoritetaan jakamalla 40 suodatinoton näytteen neliöiden summa 40 suodatinannon näytteen 30 neliön summalla käänteissuodatinvahvistuksen aikaansaa miseksi. Vahvistuskertoimen neliöjuuri tasoitetaan 91 tämän jälkeen:
Tasoitettu β = 0,2 nyk. β + 0,98 edell. β (50) 5 ja tämän jälkeen suodatinanto kerrotaan tällä tasoitetulla käänteisvahvistuksella antopuheen aikaansaamiseksi .
Kuviossa 19 kanavan data yhdessä nopeuden 10 kanssa, joko lähetettynä yhdessä datan kanssa tai johdettu muulla tavalla sovitetaan datapakkausten avausalajärjestelmään 700. Esimerkkisovelluksessa CDMA-järjestelmää varten nopeuspäätös voidaan johtaa virhenopeudesta, joka on vastaanotettu data, mikäli 15 tämä on dekoodattu kullakin eri nopeuksista. Datapakkausten avaamisalajärjestelmässä 700 CRC:n tarkistus täydellä nopeudella suoritetaan etsien virheitä, ja tämän tarkistuksen tulos viedään aiakehyksen datapakkausten avausalajärjestelmään 702. 20 Alajärjestelmä 700 antaa osoituksen epänormaaleista kehysolosuhteista, kuten tyhjä kehys, poistettu kehys tai virheellinen kehys, jonka data voidaan käyttää alajärjestelmälle 702. Alajärjestelmä 700 antaa nopeuden yhdessä parametrien I, G, L ja b kanssa 25 koskien kehystä alajärjestelmälle 702. Koodikir-jaindeksin I ja vahvistuksen G aikaansaamisessa, vah-vistusarvon etumerkkibitti tarkistetaan alajärjestel-mässä 702. Mikäli etumerkkibitti on negatiivinen, arvo 89 vähennetään, mod 128, vastaavasta koodikirjaindek-30 sistä. Edelleen alajärjestelmässä koodikirjan vahvistus käänteiskvantisoidaan ja DPCM-dekoodataan, samalla kun äänentason vahvistus käänteiskvantisoidaan.
Alajärjestelmä 700 antaa myös nopeuden ja LSP
92 -taajuudet LSP-käänteiskvantisointi/interpolointi alajärjestelmälle 704. Alajärjestelmä 700 antaa edelleen osoituksen tyhjästä kehyksestä, poistetusta kehyksestä tai virheellisestä kehyksestä, jonka data 5 voidaan käyttää, alajärjestelmälle 704.
Dekoodausalikehyslaskin 706 antaa osoituksen alikehyksen arvosta i ja j sekä alajärjestelmälle 702 että 704.
10 Alajärjestelmässä 704 LSP-taajuudet käänteis- kvantisoidaan ja interpoloidaan. Kuviossa 22 esitetään alajärjestelmän 704 käänteiskvantisointiosa, kun interpolointiosa on olennaisesti identtinen kuviossa 12 esitetyn kanssa. Kuviossa 22 alajärjestelmän 704 15 käänteiskvantisointiosa koostuu käänteiskvantisoijasta 750, joka on valmistettu identtiseksi kuvion 12 käänteiskvantisoijan kanssa ja toimii samalla tavalla. Käänteiskvantisoijan 750 anto sovitetaan yhtenä ottona summaimeen 752. Toinen otto summaimeen 752 saadaan 20 kertojan 754 annosta. Summaimen 752 anto annetaan rekisteriin 756, jossa tallennetaan ja annetaan kertomista varten vakiolla 0,9 kertoimessa 754. Summaimen 752 anto sovitetaan myös summaimeen 758, jossa esiarvo lisätään takaisin LSP-taajuuteen. LSP-25 taajuuksien järjestys varmistetaan logiikalla 760, joka pakottaa LSP-taajuuden sellaiseksi, että erotus on minimi. Yleensä tarve pakottaa erotus ei esiinny ellei tapahdu virhettä lähetyksessä. LSP-taajuudet ovat interpoloituja, kuten on esitetty kuvion 13 yhteydessä 30 ja kuvioiden 20a - 20d ja 21a - 21c yhteydessä.
Viitaten takaisin kuvioon 19, muisti 708 on kytketty alajärjestelmään 704 tallettamaan edellisen kehyksen LSP:t, ja sitä voidaan myös käyttää 35 tallettamaan esiarvot b«i. Näitä aikaisempia kehysarvoja 93 käytetään interpoloinnissa kaikilla nopeuksilla. Tilanteissa, joissa esiintyy tyhjiä kehyksiä, kehyksen poisjäämistä tai virheitä käytettävällä datalla, edellisiä LSP:tä coi/f-i käytetään kuvien 21a - 21c 5 kaavioiden mukaisesti. Tyhjällä kehyksellä, jonka osoittaa alajärjesteinä 700, alajärjestelmä 704 vastaanottaa edelliset kehys-LSP-taajuudet, jotka on talletettu muistiin 708 käytettäväksi nykyisessä kehyksessä. Poistetun kehyksen osoituksena 10 alajärjestelmä 704 noutaa jälleen edelliset kehysten LSP-taajuudet muistista 708 yhdessä esiarvojen kanssa siten, että lasketaan nykyiset kehys LSP-taajuudet yllä mainitulla tavalla. Suoritettaessa tämä lasku talletettu esiarvo vähennetään edellisen kehyksen LSP-15 taajuudesta summaimessa, ja tulos kerrotaan kertojassa vakioarvolla 0,9, ja tämä tulos lisätään summaimessa talletettuun esiarvoon. Mikäli kehys on viallinen mutta data käyttökelpoista, LSP-taajuudet interpoloidaan kuten täydellä nopeudella mikäli CRC läpäisee testin.
20 LSP:t viedään LSP - LPC muunninalajärjestel-mälle 710, jossa LSP-taajuudet muunnetaan takaisin LPC-arvoiksi. Alajärjestelmä 710 on olennaisesti identtinen kuvion 7 LSP - LPC muunnosalajärjestelmien 218 ja 228 25 kanssa, ja sitä on selostettu viittaamalla kuvioon 13. LPC-kertoimet ai viedään tämän jälkeen sekä formant-tisuodattimelle 714 että formanttijälkisuodattimelle 716. LSP-taajuuksista otetaan myös keskiarvot alake-hyksen yli LSP-keskiarvoalajärjestelmässä 712 ja vie-30 dään adaptiiviselle kirkkaussuodattimelle 718 arvona k.
Alajärjestelmä 702 vastaanottaa parametrit I, G, L ja b kehystä varten alajärjestelmästä 700 yhdessä nopeuden tai epänormaalin kehyksen tilan osoituksena. 35 Alajärjestelmä 702 vastaanottaa myös alakehyslaskimelta 94 706 j-lukumäärän kullakin i-luvulla kussakin dekoo-dausalakehyksessä 1 - 4. Alajär jestelmä 702 on myös kytketty muistiin 720, johon on talletettu G:n, I:n, L:n ja b:n edellisen kehyksen arvot käytettäväksi mikä-5 li kehys on epänormaali. Alajärjestelmästä 702 saadaan, normaaleissa kehysolosuhteissa, paitsi 8-osanopeudella, koodikirjan indeksiarvo Ij koodikirjaan 722, koodikirjan vahvistusarvo Gj kertojalle 724, ja äänentason hidastus L ja vahvistus b äänentason suodattimelle 726 kuvien 10 20a - 20d mukaisesti. Kahdeksasosanopeudella, koska ei esiinny koodikirjan indeksiarvoa, sovitetaan pakettisyöttö, joka on 16-bittinen parametriarvo (kuvio 2d) kahdeksasosanopeudella, koodikirjalle 722 yhdessä nopeusosoituksen kanssa. Epänormaalien 15 kehysolosuhteiden vallitessa arvot sovitetaan alajärjestelmästä 702 kuvien 21a - 21c mukaisesti.
Edelleen kahdeksasosanopeudella osoitus lähetetään koodikirjalle 722, kuten on selostettu kuvion 23 yhteydessä.
20
Tyhjän kehyksen vasteena alajärjestelmästä 700, alajärjestelmä 702 hakee edellisen kehyksen äänentason hidastuksen L ja vahvistuksen b, paitsi että vahvistus rajoitetaan ykköseen tai alle, ja talletetaan 25 muistiin 708 käytettäväksi nykyisen kehyksen dekoo-dausalakehyksissä. Edelleen koodikirjaindeksiä I ei soviteta, ja koodikirjavahvistus G sovitetaan nollaan. Poistokehysosoituksen tuloksena alajärjestelmä 702 noutaa jälleen edellisen kehyksen alakehyskoodikirjain-30 deksin muistista 720 ja lisää summaimessa arvon 89. Edellisen kehyksen alakehyskoodikirjavahvistus kerrotaan kertojassa vakiolla 0,7 vastaavien G:n alakehysar-vojen tuottamiseksi. Tässä ei käytetä äänentason hidastuksen arvoa, koska vahvistus on asetettu nollaan. 35 Virhekehyksen vasteena, mikäli osoitetaan, että data on käytettävissä, koodikirjaindeksiä ja vahvistusta 95 käytetään samalla tavalla kuin täyden nopeuden kehyksessä, mikäli CRC-testi on läpäisty, kun äänentason hidastusarvoa ei ole sovitettu ja äänentason vahvistus on asetettu nollaan.
5
Kuten on selostettu kooderin dekooderiin yhteydessä analyysi-synteesillä-tekniikassa, koodikirjan indeksiä I käytetään alkuosoitteena koodikirja-arvolle lähetettäväksi kertojalle 724. Koodikirjan vahvistusar-10 vo kerrotaan kertojassa 724 koodikirjan 722 antoarvol- la, ja tulos viedään äänentason suodattimelle 726. Äänentasosuodatin 726 käyttää ottoäänentason hidastusta L ja vahvistusta b formanttijäännösarvon generoimiseksi, joka viedään formanttisuodattimelle 15 714. Formanttisuodattimessa 714 LPC-kertoimia käytetään formanttijäännösarvon suodattamiseksi siten, että puhe rekonstruoidaan. Vastaanottimen dekooderissa rekonstruoitu puhe suodatetaan edelleen formanttijälkisuodattimessa 716 ja adaptiivisessa 20 kirkkaussuodattimessa 718. AGC-silmukkaa 728 käytetään formanttisuodattimen 714 annossa ja formanttijälkisuodattimen 716 yhteydessä siten, että tämän anto kerrotaan kertojassa 730 adaptiivisen kirkkaussuodattimen 718 annolla. Kertojan 730 anto on 25 rekonstruoitu puhe, joka tämän jälkeen konvertoidaan analogiseen muotoon käyttäen tunnettuja menetelmiä, ja esitetään kuulijalle. Kooderin dekooderissa havaintopainotussuodatin sovitetaan antoon sen muistien päivittämiseksi.
30
Viitataan kuvioon 22, jossa esitetään yksityiskohtia itse dekooderin toteutuksesta. Kuviossa 22 koodikirjaan 722 kuuluu muisti 750, joka on vastaava kuin kuvion 17 yhteydessä esitetty. Tässä käytetään 35 hieman eri järjestelmää muistin 750 osalta, ja kuviossa 96 22 esitetään sen osoitukset. Koodikirjaan 722 kuuluu edelleen kytkin 752, multiplekseri 753 ja näennäissatunnaisluku (PN) -generaattori 754. Kytkin 752 vastaa koodikirjan indeksistä osoittaen 5 muistipaikan 750 indeksiosoitekohtaan, kuten selostettiin kuvion 17 yhteydessä. Muisti 750 on rengasmuisti, siten, että kytkin 752 osoittaa alkumuistiosoitteeseen, ja arvot siirretään muistin läpi antoa varten. Koodikirja-arvot viedään muistista 10 750 kytkimen 752 kautta multiplekserin 753 ottoon.
Multiplekseri 753 vastaa nopeuksista täysi, puoli ja neljäsosa ja sovittaa kytkimen 752 kautta lähetettyjen arvojen annon koodikirjan vahvistimelle kertojalle 724. Multiplekseri 753 vastaa jälleen kahdeksasosanopeudesta 15 valitsemaan PN-generaattorin 754 anto koodikirjan 722 annoksi kertojalle 724.
Hyvän äänilaadun ylläpitämiseksi CELP-koodauk-sessa kooderin ja dekooderin sisäisten suodattimien 20 muistipaikkoihin on talletettava samat arvot. Tämä suoritetaan lähettämällä koodikirjan indeksi siten, että dekooderin ja kooderin suodattimet viritetään samoilla sekvenssiarvoilla. Kuitenkin, suurimmilla nopeusarvoilla nämä sekvenssit koostuvat enimmäkseen 25 nollista, ja muutama huippu näiden seassa. Tämäntyyppinen viritys ei ole optimi taustakohinan koodaamiseksi.
Taustakohinan koodauksessa, joka suoritetaan pienimmällä datanopeudella, voidaan käyttää näennäissa-30 tunnaissekvenssiä suodattimien virittämiseksi. Sen varmistamiseksi, että suodattimien muisteissa on samat arvot kooderissa ja dekooderissa, näennäissatunnaisse-kvenssien on oltava samat. Alku on lähetettävä jollakin tavalla vastaanottimen dekooderille. Siksi, että ei 35 käytetä lisäbittejä, alun lähettämiseksi, lähetettyjä 97 pakettibittejä voidaan käyttää alkuna, ikään kuin nämä muodostaisivat luvun. Tämä tekniikka voidaan tehdä, koska pienellä nopeudella käytetään täsmälleen samaa CELP-analyysiä/synteesiä koodikirjan vahvistuksen ja 5 indeksin määräämiseksi. Ero on siinä, että koodikir-jaindeksi heitetään pois, ja kooderin suodattimen muistipaikat päivitetään sen sijaan käyttäen näennäissatun-naissekvenssiä. Siksi virityksen alku voidaan määrittää sen jälkeen, kun analyysi on suoritettu. Sen var-10 mistamiseksi, että itse paketit eivät periodisesti muutu bittimallien joukon eri arvojen välillä, sovitetaan neljä satunnaisbittiä kahdeksasosanopeuspakettiin koodikirjan indeksiarvojen paikalle. Siksi pakettialku on 16-bittinen arvo, kuten kuviossa 2d.
15 PN-generaattori 754 on rakennettu käyttäen tunnettuja tekniikoita ja voidaan toteuttaa eri algoritmeilla. Tässä esimerkinomaisessa suoritusmuodossa käytetty algoritmi on tyyppiä, jota on 20 selostettu artikkelissa "DSP chips can produce random numbers using proven algorithm", Paul Mennen, EDN, tammikuun 21. 1991. Lähetettyä bittipakettia käytetään alkuna (alajärjestelmästä 700 kuviossa 18) sekvenssin generoimiseksi. Yhdessä suoritusmuodossa alku kerrotaan 25 arvolla 521 arvo 259 lisättynä siihen. Tästä tulosarvosta käytetään vähiten merkitseviä bittejä etumerkillisenä 16-bittisenä lukuna. Tätä arvoa käytetään tämän jälkeen alkuna seuraavan koodikirja-arvon generoimisessa. PN-generaattorin generoima 30 sekvenssi normalisoidaan siten, että sen varianssi on 1.
Kukin koodikirjan 722 antoarvo kerrotaan kertojassa 724 koodikirjan vahvistuksen G kanssa sellaise-35 na, kuin se on saatu dekoodausalakehyksen aikana. Tämä 98 arvo sovitetaan yhtenä ottona summaimeen 756 äänentason suodattimessa 726. Äänentason suodatin 726 käsittää lisäksi kertojan 758 ja muistin 760. Äänentason hidastus L määrittää muistipaikan muistissa 760, joka 5 viedään kertojalle 758. Muistin 760 anto kerrotaan . kertojassa 758 äänentason vahvistusarvolla b, ja tulos viedään summaimeen 756. Summaimeen 756 anto sovitetaan muistin 760 ottoon, joka muodostuu sarjasta viive-elementtejä, kuten siirtorekisteri. Arvot siirretään 10 muistin 760 kautta (nuolen osoittamassa suunnassa) ja sovitetaan L:n arvon määräämässä valitussa haara-annossa. Koska arvot on siirretty muistin 760 läpi, 143 siirtoa vanhemmat arvot häviävät. Summaimen 756 anto sovitetaan myös ottona formanttisuodattimelle 714.
15
Summaimen 756 anto sovitetaan yhtenä ottona summaimeen 762 formanttisuodattimessa 714. Formant-tisuodattimeen 714 kuuluu edelleen ryhmä kertojia 764a - 7 64 j ja muisti 7 66. Summaimen 7 62 anto sovitetaan 20 ottona muistiin 766, joka myös sovitetaan sarjana haaroitettuja viive-elementtejä, kuten siirtorekisterinä. Arvot siirretään muistin 766 läpi (nuolen osoittamassa suunnassa), ja poistetaan lopussa. Kullakin elementillä on haara, joka antaa arvon, joka 25 on tallennettu siihen antona vastaavaan yhteen kertojista 764a - 764j. Kukin kertojista 764a - 7 64 j vastaanottaa myös yhden LPC-kertoimista ai - aio kerrottavaksi muistin 766 annon kanssa. Summaimen 762 anto sovitetaan formanttisuodattimen 714 antona.
30
Formanttisuodattimen 714 anto sovitetaan ottona formanttijälkisuodattimelle 716 ja AGC-alajärjestel-mään 728. Formanttijälkisuodattimeen 716 kuuluu summai-met 768 ja 770 yhdessä muistin 772 ja kertojien 774a - . 35 774j, 776a - 776j, 780a - 780j, ja 782a - 782j, kanssa.
99
Kun arvoja siirretään muistin 772 läpi, ne poistetaan vastaavissa haaroissa kertomaan skaalattujen LPC-kerroinarvojen kanssa summautumaan summaimissa 768 ja 770. Formanttijälkisuodattimen 716 anto sovitetaan 5 ottona adaptiiviselle kirkkaussuodattimelle 718.
Adaptiiviseen kirkkaussuodattimeen 718 kuuluu summaimet 784, 786, rekisterit 788 ja 790, ja kertojat 792 ja 794. Kuviossa 24 esitetään adaptiivisen 10 kirkkaussuodattimen ominaisuudet. Formantin jälkisuodattimen 716 anto sovitetaan ottona summaimelle 784, toisaalta toinen otto saadaan kertojan 792 annosta. Summaimen 784 anto sovitetaan rekisteriin 788 ja talletetaan yhden jakson ajan ja sovitetaan 15 seuraavan jakson aikana antona kertojille 792 ja 794 yhdessä arvon -k, joka saadaan LSP- keskimääräistämispiiriltä 712 kuviossa 19. Kertojien 792 ja 794 annot sovitetaan molemmat summaimelle 784 ja 786. Summaimen 786 anto sovitetaan AGC-järjestelmään 20 728 ja siirtorekisteriin 790. Rekisteriä 790 käytetään viivelinjana varmistamaan formanttisuodattimen data-annon koordinaatio AGC-alijärjestelmään 728 ja mukautuvaan kirkkaussuodattimeen 718, formanttijälkisuodattimen 716 kautta, annettuun.
25 AGC-alajärjestelmä 728 vastaanottaa formantti-jälkisuodattimen 716 dataa ja adaptiivisen kirkkaussuodattimen 718 dataa siten, että se skaalaa puheen antoenergian vastaamaan suurin piirtein puheen otto- ja 30 formanttijälkisuodattimen 716 ja adaptiivisen kirkkaussuodattimen 718 arvoja. AGC-alajärjestelmään 728 kuuluu kertojat 798, 800, 802 ja 804, summaimet 806, 808, 810, rekisterit 812, 814, 816, jakaja 818, ja neliöjuuriele-mentti 820. Formanttijälkisuodattimen 716 40 an- 35 tonäytettä korotetaan toiseen potenssiin kertojassa 798 100 ja summataan akkumulaattorissa, joka koostuu summaimes-ta 806 ja rekisteristä 812, jolloin saadaan arvo "x". Vastaavasti adaptiivisen kirkkaussuodattimen 718 40 näyteanto, joka on aikaisemmin viety rekisteriin 790, 5 korotetaan toiseen potenssiin kertojassa 800, ja summataan akussa, joka muodostuu summaimesta 808 ja rekisteristä 814 arvon "y" tuottamiseksi. Arvo "y" jaetaan arvolla "x" jakajassa 816 suodattimien kään-teisvahvistuksen aikaansaamiseksi. Käänteisen vahvis-10 tuskertoimen neliöjuuri otetaan elementissä 818, ja sen tulos tasoitetaan. Tasoitustoimenpide suoritetaan kertomalla kyseinen arvovahvistus G vakioarvolla 0,02 kertojassa 8.02, ja tulos lisätään summaimessa 810 tulokseen, joka on 0,98 kertaa edellinen vahvistus, 15 rekisterin 820' ja kertojan 804 laskemana. Suodattimen 718 anto kerrotaan tämän jälkeen kertojan 730 tasoitetulla käänteisvahvistuksella rekonstruoidun puheen annon aikaansaamiseksi. Antopuhe muunnetaan analogiseen muotoon käyttäen hyvin tunnettuja eri 20 muuntotekniikoita käyttäjälle antoa varten.
Tulisi ymmärtää, että esillä olevan keksinnön suoritusmuoto, kuten esitettynä tässä, on vain esimerkinomainen suoritusmuoto ja että muutoksia 25 suoritusmuotoon voidaan tehdä, jotka ovat toiminnallisesti ekvivalentteja. Esillä oleva keksintö voidaan toteuttaa digitaalisessa signaaliprosessorissa sopivalla ohjelmaohjauksella tässä esitetyn funktionaalisen toiminnallisuuden aikaansaamiseksi 30 koodaamaan puhenäytteitä ja dekoodaamaan koodattua puhetta. Muissa toteutuksissa esillä oleva keksintö voidaan sijoittaa sovelluskohtaiseen integroituun piiriin (ASIC) käyttäen hyvin tunnettuja hyvin laajaan skaalan integraation (VLSI) tekniikoita.
35 101
Edellä oleva kuvaus suositelluista suoritusmuodoista on annettu, jotta kuka tahansa alan ammattilainen kykenee tekemään tai käyttämään esillä olevaa keksintöä. Eri modifikaatiot näihin 5 suoritusmuotoihin ovat helposti ilmeisiä alan ammattilaisille, ja tässä esitettyjä perusperiaatteita voidaan soveltaa muihin suoritusmuotoihin käyttämättä keksimiskykyä. Siten, esillä oleva keksintö ei ole tarkoitettu rajoittuvaksi tässä esitettyihin 10 suoritusmuotoihin, vaan sille tulee suoda laajin piiri, joka on yhdenmukainen tässä esitettyjen periaatteiden ja uusien piirteiden kanssa.

Claims (15)

102
1. Menetelmä akustisen signaalin, joka koostuu pääasiassa puheesta ja taustakohinasta, 5 digitaalisten näytteiden tulokehysten (10; 14) vaihtelevanopeuksiseksi koodaamiseksi koodiherätteiselle lineaarisen ennustuksen (CELP) kooderille, tunnettu siitä, että käsittää: lasketaan (82, 206) lineaarisen ennustuksen 10 koodauksen (LPC) vakiot digitoitujen puhenäytteiden tulokehysten sekvenssin jokaiselle kehykselle; valitaan (84, 204) jokaiselle kehykselle (10; 14. antodatapakettinopeus joukosta 15 datapakettinopeuksia perustuen ainakin yhteen sanotuista LPC-vakioista; rajoitetaan sanottuja LPC-vakioita edustavien bittien lukumäärää ennalta määrättyyn lukumäärään, kuten määrättynä sanotulla 20 valitulla nopeudella; määrätään (96, 98, 100) parametrit jokaisen kehyksen olennaisten äänentasoanalyysialakehysten joukon jokaiselle äänentasoalakehykselle (16; 20; 25 24), jossa äänentasoalakehysten (16; 20; 24) lukumäärä jokaiselle kehykselle (10; 14) määrätään sanotulla valitulla nopeudella, ja jossa sanottuja äänentasoparametreja jokaiselle äänentasoalakehykselle (16; 20; 30 24) edustetaan lukumäärällä bittejä, kuten määrättynä sanotulla valitulla nopeudella; määrätään (104, 106, 108) koodikirjaparametrit jokaisen kehyksen (10; 14) olennaisten koodikirja- 103 analyysialakehysten joukon jokaiselle koodikirja-alakehykselle (18; 22; 26; 28), jossa koodikirja-analyysialakehysten lukumäärä jokaiselle kehykselle määrätään 5 sanotulla valitulla nopeudella, ja jossa sanottuja koodikirjaparametreja jokaiselle koodikirja-alakehykselle (18; 22; 26; 28) edustetaan lukumäärällä bittejä, kuten määrättynä sanotulla valitulla nopeudella; ja 10 annetaan (114) jokaiselle kehykselle (10; 14) bittien, jotka edustavat sanottuja LPC-vakioita, vastaava antodatapaketti, ja sanotut äänentasoparametrit ja koodikirjaparametrit jokaiselle vastaavalle 15 äänentaso- ja koodikirja-alakehykselle.
2. Patenttivaatimuksen 1 mukainen menetelmä, lisäksi käsittäen vaiheen, jossa muunnetaan (86) sanotut LPC-vakiot linjaspektripari(LSP)arvoiksi. 20
3. Patenttivaatimuksen 1 mukainen menetelmä, lisäksi käsittäen joukon virhesuojciJoitteja. antamisen jokaiselle kehykselle (10; 14).
4. Vaihtelevanopeuksinen koodiherätteinen lineaarisen ennustuksen (CELP) kooderi akustisen signaalin, joka koostuu pääasiassa puheesta ja taustakohinasta, digitoitujen näytteiden tulokehysten (10; 14) vaihtelevanopeuksiseen 30 koodaukseen, tunnettu siitä, että käsittää: välineen laskemaan (50; 82; 206) lineaarisen ennustuksen koodauksen (LPC) vakiot akustisen signaalin digitoitujen näytteiden 104 tulokehysten sekvenssin jokaiselle kehykselle (10; 14); välineen valitsemaan (84; 204) jokaiselle kehykselle antodatapakettinopeus joukosta 5 datapakettinopeuksia perustuen ainakin yhteen sanotuista LPC-vakioista; välineen rajoittamaan LPC-vakioita edustavien bittien lukumäärää ennalta määrättyyn lukumäärään, kuten määrättynä sanotulla 10 valitulla nopeudella; välineen määräämään (96, 98, 100) äänentasoparametrit jokaisen kehyksen (10; 14. olennaisten äänentasoanalyysialakehysten joukon jokaiselle äänentasoalakehykselle (16; 15 20; 24), jossa äänentasoalakehysten (16; 20; 24. lukumäärä jokaiselle kehykselle määrätään sanotulla valitulla nopeudella, ja jossa sanottuja parametreja jokaiselle äänentasoalakehykselle edustetaan 20 lukumäärällä bittejä, kuten määrättynä sanotulla valitulla nopeudella; välineen määräämään (104, 106, 108) koodikirjaparametrit jokaisen kehyksen (10; 14) olennaisten koodikirja-25 analyysialakehysten (16; 20; 24) joukon jokaiselle koodikirja-alakehyselle (16; 20; 24), jossa koodikirja-analyysialakehysten lukumäärä jokaiselle kehykselle määrätään sanotulla valitulla nopeudella, ja jossa 30 sanottuja koodikirjaparametreja jokaiselle koodikirja-alakehykselle edustetaan lukumäärällä bittejä, kuten määrättynä sanotulla valitulla nopeudella; ja jossa jokaiselle kehykselle (10; 14) 35 sanottuja LPC-kertoimia edustavien bittien 105 vastaava antodatapaketti, ja sanotut äänentasoparametrit ja koodikirjaparametrit jokaiselle vastaavalle äänentaso- (16; 20; 24. ja koodikirja-alakehykselle (18; 22; 26; 5 28) annetaan sanotulla valitulla nopeudella.
5. Patenttivaatimuksen 4 mukainen kooderi, jossa sanottu lukumäärä äänentasoalakehyksiä jokaiselle kehykselle (10; 14) määrätään sanotulla valitulla 10 nopeudella, käsittäen: neljä äänentasoalakehystä (16), kun sanottu valittu antodatapakettinopeus on täysi nopeus; kaksi äänentasoalakehystä (16), kun sanottu 15 valittu antodatapakettinopeus on puolinopeus; yksi äänentasoalakehys (16), kun sanottu valittu antodatapakettinopeus on nelj äsosanopeus.
6. Patenttivaatimuksen 4 mukainen kooderi, lisäksi käsittäen välineen esikertomaan (200) sanotut digitoidut näytteet ennalta määrätyllä ikkunointifunktiolla (12).
7. Patenttivaatimuksen 6 mukainen kooderi, jossa sanottu ennalta määrätty ikkunointifunktio on Hamming-ikkuna (12).
8. Patenttivaatimuksen 4 mukainen kooderi, jossa 30 sanottu väline valitsemaan koodausnopeus toimii vasteena ulkoiseen nopeussignaaliin. 106
9. Patenttivaatimuksen 5 mukainen kooderi, jossa sanottu lukumäärä äänentasoalakehyksiä jokaiselle kehykselle määrätään sanotulla valitulla nopeudella, lisäksi ei käsitä 5 äänentasoalakehyksiä, kun valittu antodatapakettinopeus on kahdeksasosanopeus.
10. Patenttivaatimuksen 4 mukainen kooderi, jossa sanottu antodatapaketti lisäksi käsittää ennalta 10 määrätyn lukumäärän bittejä virhesuojaukseen, jossa sanottu ennalta määrätty lukumäärä bittejä virhesuojaukseen toimii vasteena ääniaktiviteetin tasoon.
11. Patenttivaatimuksen 4 mukainen kooderi, jossa sanottu väline määräämään äänentasoparametrit antaa neljä äänentasoparametria, jossa jokainen sanotuista äänentasoparametreista käsittää kymmenen bittiä, kun sanottu valittu 20 antodatapakettinopeus on täysi nopeus, antaa kaksi äänentasoparametria, jossa jokainen sanotuista äänentasoparametreista käsittää kymmenen bittiä, kun sanottu valittu antodatapakettinopeus on puolinopeus, antaa 25 äänentasoparametrin käsittäen kymmenen bittiä, kun sanottu valittu antodatapakettinopeus on nelj äsosanopeus.
12. Patenttivaatimuksen 11 mukainen kooderi, jossa 30 sanottua välinettä laskemaan äänentasoparametrit estetään, kun sanottu valittu antodatapakettinopeus on kahdeksasosanopeus. 107
13. Patenttivaatimuksen 11 mukainen kooderi, jossa sanottu väline määräämään koodikirjaparametrit antaa kahdeksan koodikirjaparametria, kun sanottu valittu antodatapakettinopeus on täysi nopeus, 5 antaa neljä koodikirjaparametria, kun sanottu valittu antodatapakettinopeus on puolinopeus, antaa kaksi koodikirjaparametria, kun sanottu valittu antodatapakettinopeus on neljäsosanopeus, ja antaa yhden koodikirjaparametrin, kun sanottu 10 antodatapakettinopeus on kahdeksasosanopeus.
14. Patenttivaatimuksen 13 mukainen kooderi, jossa sanottu väline määräämään koodikirjaparametrit antaa kymmenen bittiä jokaiselle sanotuista 15 koodikirjaparametreista, kun sanottu valittu nopeus on täysi nopeus, kymmenen bittiä jokaiselle sanotuista koodikirjaparametreista, kun sanottu valittu nopeus on puolinopeus, kymmenen bittiä jokaiselle sanotuista 20 koodikirjaparametreista, kun sanottu valittu nopeus on neljäsosanopeus, ja kuusi bittiä jokaiselle sanotuista koodikirjaparametreista, kun sanottu valittu nopeus on kahdeksasosanopeus.
15. Patenttivaatimuksen 4 mukainen kooderi, jossa sanottu väline rajoittamaan LPC-vakioita edustavien bittien lukumäärää antaa neljäkymmentä bittiä edustamaan sanottuja LPC-vakioita, kun sanottu valittu nopeus on täysinopeus, 30 kaksikymmentä bittiä edustamaan sanottuja LPC- vakioita, kun sanottu valittu nopeus on puolinopeus, kymmenen bittiä edustamaan sanottuja LPC-vakioita, kun sanottu valittu nopeus on neljäsosanopeus, ja kymmenen bittiä edustamaan 108 sanottuja LPC-vakioita, kun sanottu valittu nopeus on täysinopeus. 5 109
FI935597A 1991-06-11 1993-12-13 Vaihtelevanopeuksinen vokooderi FI120425B (fi)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US71366191A 1991-06-11 1991-06-11
US71366191 1991-06-11
PCT/US1992/004605 WO1992022891A1 (en) 1991-06-11 1992-06-03 Variable rate vocoder
US9204605 1992-06-03

Publications (3)

Publication Number Publication Date
FI935597A0 FI935597A0 (fi) 1993-12-13
FI935597A FI935597A (fi) 1993-12-13
FI120425B true FI120425B (fi) 2009-10-15

Family

ID=24866989

Family Applications (5)

Application Number Title Priority Date Filing Date
FI935597A FI120425B (fi) 1991-06-11 1993-12-13 Vaihtelevanopeuksinen vokooderi
FI20011508A FI20011508A (fi) 1991-06-11 2001-07-10 Vaihtelevanopeuksinen vokooderi
FI20011509A FI20011509A (fi) 1991-06-11 2001-07-10 Vaihtelevanopeuksinen vokooderi
FI20061122A FI20061122L (fi) 1991-06-11 2006-12-15 Vaihtelevanopeuksinen vokooderi
FI20061121A FI118702B (fi) 1991-06-11 2006-12-15 Vaihtelevanopeuksinen vokooderi

Family Applications After (4)

Application Number Title Priority Date Filing Date
FI20011508A FI20011508A (fi) 1991-06-11 2001-07-10 Vaihtelevanopeuksinen vokooderi
FI20011509A FI20011509A (fi) 1991-06-11 2001-07-10 Vaihtelevanopeuksinen vokooderi
FI20061122A FI20061122L (fi) 1991-06-11 2006-12-15 Vaihtelevanopeuksinen vokooderi
FI20061121A FI118702B (fi) 1991-06-11 2006-12-15 Vaihtelevanopeuksinen vokooderi

Country Status (21)

Country Link
US (3) US5414796A (fi)
EP (8) EP1162601A3 (fi)
JP (7) JP3432822B2 (fi)
CN (8) CN1220334C (fi)
AT (4) ATE477571T1 (fi)
AU (3) AU671952B2 (fi)
BR (1) BR9206143A (fi)
CA (6) CA2483296C (fi)
DE (4) DE69232202T2 (fi)
DK (2) DK0588932T3 (fi)
ES (4) ES2240252T3 (fi)
FI (5) FI120425B (fi)
HK (3) HK1014796A1 (fi)
HU (1) HU215861B (fi)
IL (4) IL113986A (fi)
MX (1) MX9202808A (fi)
NO (1) NO319559B1 (fi)
RU (1) RU2107951C1 (fi)
SG (1) SG70558A1 (fi)
WO (1) WO1992022891A1 (fi)
ZA (1) ZA924082B (fi)

Families Citing this family (500)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20010050943A1 (en) * 1989-08-03 2001-12-13 Mahany Ronald L. Radio frequency communication network having adaptive communication parameters
US7606575B2 (en) 1988-08-04 2009-10-20 Broadcom Corporation Remote radio data communication system with data rate switching
US6693951B1 (en) 1990-06-25 2004-02-17 Qualcomm Incorporated System and method for generating signal waveforms in a CDMA cellular telephone system
DE69232202T2 (de) * 1991-06-11 2002-07-25 Qualcomm, Inc. Vocoder mit veraendlicher bitrate
AU3274593A (en) * 1991-12-13 1993-07-19 Avid Technology, Inc. Quantization table adjustment
US5355450A (en) * 1992-04-10 1994-10-11 Avid Technology, Inc. Media composer with adjustable source material compression
SE469764B (sv) * 1992-01-27 1993-09-06 Ericsson Telefon Ab L M Saett att koda en samplad talsignalvektor
TW224191B (fi) * 1992-01-28 1994-05-21 Qualcomm Inc
CA2105269C (en) * 1992-10-09 1998-08-25 Yair Shoham Time-frequency interpolation with application to low rate speech coding
FI95086C (fi) * 1992-11-26 1995-12-11 Nokia Mobile Phones Ltd Menetelmä puhesignaalin tehokkaaksi koodaamiseksi
US5812534A (en) 1993-01-08 1998-09-22 Multi-Tech Systems, Inc. Voice over data conferencing for a computer-based personal communications system
US5546395A (en) 1993-01-08 1996-08-13 Multi-Tech Systems, Inc. Dynamic selection of compression rate for a voice compression algorithm in a voice over data modem
US5617423A (en) 1993-01-08 1997-04-01 Multi-Tech Systems, Inc. Voice over data modem with selectable voice compression
US5754589A (en) 1993-01-08 1998-05-19 Multi-Tech Systems, Inc. Noncompressed voice and data communication over modem for a computer-based multifunction personal communications system
US5452289A (en) 1993-01-08 1995-09-19 Multi-Tech Systems, Inc. Computer-based multifunction personal communications system
US5535204A (en) 1993-01-08 1996-07-09 Multi-Tech Systems, Inc. Ringdown and ringback signalling for a computer-based multifunction personal communications system
US5864560A (en) 1993-01-08 1999-01-26 Multi-Tech Systems, Inc. Method and apparatus for mode switching in a voice over data computer-based personal communications system
US5453986A (en) 1993-01-08 1995-09-26 Multi-Tech Systems, Inc. Dual port interface for a computer-based multifunction personal communication system
US6009082A (en) 1993-01-08 1999-12-28 Multi-Tech Systems, Inc. Computer-based multifunction personal communication system with caller ID
US5657423A (en) * 1993-02-22 1997-08-12 Texas Instruments Incorporated Hardware filter circuit and address circuitry for MPEG encoded data
EP0694241A4 (en) * 1993-04-16 1996-05-29 Data Translation Inc ADAPTIVE VIDEO COMPRESSION
CA2160568A1 (en) * 1993-04-16 1994-10-27 James M. Hardiman Adaptive video compression using variable quantization
FI96248C (fi) * 1993-05-06 1996-05-27 Nokia Mobile Phones Ltd Menetelmä pitkän aikavälin synteesisuodattimen toteuttamiseksi sekä synteesisuodatin puhekoodereihin
US5659659A (en) * 1993-07-26 1997-08-19 Alaris, Inc. Speech compressor using trellis encoding and linear prediction
ZA946674B (en) * 1993-09-08 1995-05-02 Qualcomm Inc Method and apparatus for determining the transmission data rate in a multi-user communication system
US5649299A (en) * 1993-10-27 1997-07-15 Motorola, Inc. Apparatus and method for adapting a digital radiotelephone system to increased subscriber traffic
US6005856A (en) 1993-11-01 1999-12-21 Omnipoint Corporation Communication protocol for spread spectrum wireless communication system
US6088590A (en) 1993-11-01 2000-07-11 Omnipoint Corporation Method and system for mobile controlled handoff and link maintenance in spread spectrum communication
WO1995012945A1 (en) 1993-11-01 1995-05-11 Omnipoint Corporation Despreading/demodulating direct sequence spread spectrum signals
US6094575A (en) 1993-11-01 2000-07-25 Omnipoint Corporation Communication system and method
JP3182032B2 (ja) * 1993-12-10 2001-07-03 株式会社日立国際電気 音声符号化通信方式及びその装置
US5621852A (en) * 1993-12-14 1997-04-15 Interdigital Technology Corporation Efficient codebook structure for code excited linear prediction coding
US5784532A (en) * 1994-02-16 1998-07-21 Qualcomm Incorporated Application specific integrated circuit (ASIC) for performing rapid speech compression in a mobile telephone system
EP0702863B1 (en) * 1994-02-17 2004-10-20 Motorola, Inc. Method and apparatus for controlling encoding rate in a communication system
US5574825A (en) * 1994-03-14 1996-11-12 Lucent Technologies Inc. Linear prediction coefficient generation during frame erasure or packet loss
CA2142391C (en) * 1994-03-14 2001-05-29 Juin-Hwey Chen Computational complexity reduction during frame erasure or packet loss
US5615298A (en) * 1994-03-14 1997-03-25 Lucent Technologies Inc. Excitation signal synthesis during frame erasure or packet loss
US5682386A (en) 1994-04-19 1997-10-28 Multi-Tech Systems, Inc. Data/voice/fax compression multiplexer
US5757801A (en) 1994-04-19 1998-05-26 Multi-Tech Systems, Inc. Advanced priority statistical multiplexer
FI98162C (fi) * 1994-05-30 1997-04-25 Tecnomen Oy HMM-malliin perustuva puheentunnistusmenetelmä
US5602961A (en) * 1994-05-31 1997-02-11 Alaris, Inc. Method and apparatus for speech compression using multi-mode code excited linear predictive coding
US5638412A (en) 1994-06-15 1997-06-10 Qualcomm Incorporated Method for providing service and rate negotiation in a mobile communication system
US5603096A (en) * 1994-07-11 1997-02-11 Qualcomm Incorporated Reverse link, closed loop power control in a code division multiple access system
TW271524B (fi) * 1994-08-05 1996-03-01 Qualcomm Inc
US5742734A (en) * 1994-08-10 1998-04-21 Qualcomm Incorporated Encoding rate selection in a variable rate vocoder
US5832028A (en) 1994-09-09 1998-11-03 Omnipoint Corporation Method and apparatus for coherent serial correlation of a spread spectrum signal
US5953370A (en) 1994-09-09 1999-09-14 Omnipoint Corporation Apparatus for receiving and correlating a spread spectrum signal
US5659574A (en) 1994-09-09 1997-08-19 Omnipoint Corporation Multi-bit correlation of continuous phase modulated signals
US5754584A (en) 1994-09-09 1998-05-19 Omnipoint Corporation Non-coherent spread-spectrum continuous-phase modulation communication system
US5629956A (en) 1994-09-09 1997-05-13 Omnipoint Corporation Method and apparatus for reception and noncoherent serial correlation of a continuous phase modulated signal
US5856998A (en) 1994-09-09 1999-01-05 Omnipoint Corporation Method and apparatus for correlating a continuous phase modulated spread spectrum signal
US5627856A (en) 1994-09-09 1997-05-06 Omnipoint Corporation Method and apparatus for receiving and despreading a continuous phase-modulated spread spectrum signal using self-synchronizing correlators
US5680414A (en) 1994-09-09 1997-10-21 Omnipoint Corporation Synchronization apparatus and method for spread spectrum receiver
US5648982A (en) 1994-09-09 1997-07-15 Omnipoint Corporation Spread spectrum transmitter
US5881100A (en) 1994-09-09 1999-03-09 Omnipoint Corporation Method and apparatus for coherent correlation of a spread spectrum signal
US5610940A (en) 1994-09-09 1997-03-11 Omnipoint Corporation Method and apparatus for noncoherent reception and correlation of a continous phase modulated signal
US5963586A (en) 1994-09-09 1999-10-05 Omnipoint Corporation Method and apparatus for parallel noncoherent correlation of a spread spectrum signal
US5692007A (en) 1994-09-09 1997-11-25 Omnipoint Corporation Method and apparatus for differential phase encoding and decoding in spread-spectrum communication systems with continuous-phase modulation
US5757847A (en) 1994-09-09 1998-05-26 Omnipoint Corporation Method and apparatus for decoding a phase encoded signal
US5754585A (en) 1994-09-09 1998-05-19 Omnipoint Corporation Method and apparatus for serial noncoherent correlation of a spread spectrum signal
US6141353A (en) * 1994-09-15 2000-10-31 Oki Telecom, Inc. Subsequent frame variable data rate indication method for various variable data rate systems
US5537410A (en) * 1994-09-15 1996-07-16 Oki Telecom Subsequent frame variable data rate indication method
JPH08102687A (ja) * 1994-09-29 1996-04-16 Yamaha Corp 音声送受信方式
ATE213864T1 (de) * 1994-10-05 2002-03-15 Advanced Micro Devices Inc Vorrichtung und verfahren zur sprachsignalanalyse zur parameterbestimmung von sprachsignalmerkmalen
US5546448A (en) * 1994-11-10 1996-08-13 Multi-Tech Systems, Inc. Apparatus and method for a caller ID modem interface
US5781880A (en) * 1994-11-21 1998-07-14 Rockwell International Corporation Pitch lag estimation using frequency-domain lowpass filtering of the linear predictive coding (LPC) residual
JPH08179796A (ja) * 1994-12-21 1996-07-12 Sony Corp 音声符号化方法
FR2729246A1 (fr) * 1995-01-06 1996-07-12 Matra Communication Procede de codage de parole a analyse par synthese
US5784403A (en) * 1995-02-03 1998-07-21 Omnipoint Corporation Spread spectrum correlation using saw device
JP3303580B2 (ja) * 1995-02-23 2002-07-22 日本電気株式会社 音声符号化装置
US6292476B1 (en) 1997-04-16 2001-09-18 Qualcomm Inc. Method and apparatus for providing variable rate data in a communications system using non-orthogonal overflow channels
ZA961025B (en) * 1995-02-28 1996-07-16 Qualcomm Inc Method and apparatus for providing variable rate data in a communications system using non-orthogonal overflow channels
US5991725A (en) * 1995-03-07 1999-11-23 Advanced Micro Devices, Inc. System and method for enhanced speech quality in voice storage and retrieval systems
US5699478A (en) * 1995-03-10 1997-12-16 Lucent Technologies Inc. Frame erasure compensation technique
JPH08263099A (ja) * 1995-03-23 1996-10-11 Toshiba Corp 符号化装置
TW347616B (en) 1995-03-31 1998-12-11 Qualcomm Inc Method and apparatus for performing fast power control in a mobile communication system a method and apparatus for controlling transmission power in a mobile communication system is disclosed.
US6977967B1 (en) 1995-03-31 2005-12-20 Qualcomm Incorporated Method and apparatus for performing fast power control in a mobile communication system
US6137840A (en) * 1995-03-31 2000-10-24 Qualcomm Incorporated Method and apparatus for performing fast power control in a mobile communication system
US5548253A (en) * 1995-04-17 1996-08-20 Omnipoint Corporation Spectrally efficient quadrature amplitude modulator
US5508708A (en) * 1995-05-08 1996-04-16 Motorola, Inc. Method and apparatus for location finding in a CDMA system
JP2728122B2 (ja) * 1995-05-23 1998-03-18 日本電気株式会社 無音圧縮音声符号化復号化装置
US5689502A (en) * 1995-06-05 1997-11-18 Omnipoint Corporation Efficient frequency division duplex communication system with interleaved format and timing adjustment control
US5745484A (en) * 1995-06-05 1998-04-28 Omnipoint Corporation Efficient communication system using time division multiplexing and timing adjustment control
US6356607B1 (en) 1995-06-05 2002-03-12 Omnipoint Corporation Preamble code structure and detection method and apparatus
US5959980A (en) * 1995-06-05 1999-09-28 Omnipoint Corporation Timing adjustment control for efficient time division duplex communication
US5802046A (en) * 1995-06-05 1998-09-01 Omnipoint Corporation Efficient time division duplex communication system with interleaved format and timing adjustment control
US6526038B1 (en) * 1995-06-07 2003-02-25 Telcordia Technologies, Inc. Periodic wireless broadcast
GB9512284D0 (en) * 1995-06-16 1995-08-16 Nokia Mobile Phones Ltd Speech Synthesiser
US7020111B2 (en) 1996-06-27 2006-03-28 Interdigital Technology Corporation System for using rapid acquisition spreading codes for spread-spectrum communications
ZA965340B (en) 1995-06-30 1997-01-27 Interdigital Tech Corp Code division multiple access (cdma) communication system
US6885652B1 (en) 1995-06-30 2005-04-26 Interdigital Technology Corporation Code division multiple access (CDMA) communication system
US7929498B2 (en) 1995-06-30 2011-04-19 Interdigital Technology Corporation Adaptive forward power control and adaptive reverse power control for spread-spectrum communications
FI100157B (fi) * 1995-07-12 1997-09-30 Nokia Mobile Phones Ltd Muuttuvanopeuksiset piirikytketyt siirtopalvelut TDMA-pohjaisissa solu kkojärjestelmissä
US6041046A (en) * 1995-07-14 2000-03-21 Omnipoint Corporation Cyclic time hopping in time division multiple access communication system
US5754733A (en) * 1995-08-01 1998-05-19 Qualcomm Incorporated Method and apparatus for generating and encoding line spectral square roots
FR2737948B1 (fr) * 1995-08-16 1997-10-17 Alcatel Mobile Comm France Dispositif de commande de volume sonore pour recepteur de signaux de parole codes par blocs
JP3522012B2 (ja) * 1995-08-23 2004-04-26 沖電気工業株式会社 コード励振線形予測符号化装置
CN1102003C (zh) * 1995-08-31 2003-02-19 Ntt移动通信网株式会社 有无音压缩控制功能的atm传输方法、系统、和装置
US5950164A (en) * 1995-09-29 1999-09-07 Olympus Optical Co., Ltd. Voice recording apparatus capable of displaying remaining recording capacity of memory according to encoding bit rates
JP4005154B2 (ja) * 1995-10-26 2007-11-07 ソニー株式会社 音声復号化方法及び装置
JP3680380B2 (ja) * 1995-10-26 2005-08-10 ソニー株式会社 音声符号化方法及び装置
JPH09152896A (ja) * 1995-11-30 1997-06-10 Oki Electric Ind Co Ltd 声道予測係数符号化・復号化回路、声道予測係数符号化回路、声道予測係数復号化回路、音声符号化装置及び音声復号化装置
US5956674A (en) * 1995-12-01 1999-09-21 Digital Theater Systems, Inc. Multi-channel predictive subband audio coder using psychoacoustic adaptive bit allocation in frequency, time and over the multiple channels
US5822721A (en) * 1995-12-22 1998-10-13 Iterated Systems, Inc. Method and apparatus for fractal-excited linear predictive coding of digital signals
US5737716A (en) * 1995-12-26 1998-04-07 Motorola Method and apparatus for encoding speech using neural network technology for speech classification
US5867763A (en) * 1996-02-08 1999-02-02 Qualcomm Incorporated Method and apparatus for integration of a wireless communication system with a cable T.V. system
US5839052A (en) * 1996-02-08 1998-11-17 Qualcom Incorporated Method and apparatus for integration of a wireless communication system with a cable television system
JPH09230896A (ja) * 1996-02-28 1997-09-05 Sony Corp 音声合成装置
US5754537A (en) * 1996-03-08 1998-05-19 Telefonaktiebolaget L M Ericsson (Publ) Method and system for transmitting background noise data
EP0886927B1 (en) * 1996-03-27 2006-06-07 Motorola, Inc. Method and apparatus for providing a multi-party speech connection for use in a wireless communication system
SE506341C2 (sv) * 1996-04-10 1997-12-08 Ericsson Telefon Ab L M Metod och anordning för rekonstruktion av en mottagen talsignal
GB2312360B (en) * 1996-04-12 2001-01-24 Olympus Optical Co Voice signal coding apparatus
US5708757A (en) * 1996-04-22 1998-01-13 France Telecom Method of determining parameters of a pitch synthesis filter in a speech coder, and speech coder implementing such method
US6205190B1 (en) 1996-04-29 2001-03-20 Qualcomm Inc. System and method for reducing interference generated by a CDMA communications device
US5937374A (en) * 1996-05-15 1999-08-10 Advanced Micro Devices, Inc. System and method for improved pitch estimation which performs first formant energy removal for a frame using coefficients from a prior frame
US6047254A (en) * 1996-05-15 2000-04-04 Advanced Micro Devices, Inc. System and method for determining a first formant analysis filter and prefiltering a speech signal for improved pitch estimation
JP3092652B2 (ja) * 1996-06-10 2000-09-25 日本電気株式会社 音声再生装置
US6744882B1 (en) 1996-07-23 2004-06-01 Qualcomm Inc. Method and apparatus for automatically adjusting speaker and microphone gains within a mobile telephone
JP3266819B2 (ja) * 1996-07-30 2002-03-18 株式会社エイ・ティ・アール人間情報通信研究所 周期信号変換方法、音変換方法および信号分析方法
US5883927A (en) * 1996-07-31 1999-03-16 Nextwave Telecom, Inc. Digital wireless telecommunication device for reduced interference with hearing aids
JPH1049199A (ja) * 1996-08-02 1998-02-20 Nec Corp 無音圧縮音声符号化復号化装置
US5726983A (en) * 1996-08-09 1998-03-10 Motorola, Inc. Communication device with variable frame processing time
US5812968A (en) * 1996-08-28 1998-09-22 Ericsson, Inc. Vocoder apparatus using the link margin
US5881053A (en) * 1996-09-13 1999-03-09 Qualcomm Incorporated Method for a wireless communications channel
SE507370C2 (sv) * 1996-09-13 1998-05-18 Ericsson Telefon Ab L M Metod och anordning för att alstra komfortbrus i linjärprediktiv talavkodare
US6205130B1 (en) 1996-09-25 2001-03-20 Qualcomm Incorporated Method and apparatus for detecting bad data packets received by a mobile telephone using decoded speech parameters
US7788092B2 (en) * 1996-09-25 2010-08-31 Qualcomm Incorporated Method and apparatus for detecting bad data packets received by a mobile telephone using decoded speech parameters
WO1998013941A1 (en) * 1996-09-25 1998-04-02 Qualcomm Incorporated Method and apparatus for detecting bad data packets received by a mobile telephone using decoded speech parameters
US6014622A (en) 1996-09-26 2000-01-11 Rockwell Semiconductor Systems, Inc. Low bit rate speech coder using adaptive open-loop subframe pitch lag estimation and vector quantization
US5954834A (en) * 1996-10-09 1999-09-21 Ericsson Inc. Systems and methods for communicating desired audio information over a communications medium
US5905794A (en) * 1996-10-15 1999-05-18 Multi-Tech Systems, Inc. Caller identification interface using line reversal detection
US6496543B1 (en) 1996-10-29 2002-12-17 Qualcomm Incorporated Method and apparatus for providing high speed data communications in a cellular environment
US5781593A (en) * 1996-11-14 1998-07-14 Omnipoint Corporation Methods and apparatus for vocoder synchronization in mobile communication network
US6141373A (en) * 1996-11-15 2000-10-31 Omnipoint Corporation Preamble code structure and detection method and apparatus
FI964975A (fi) * 1996-12-12 1998-06-13 Nokia Mobile Phones Ltd Menetelmä ja laite puheen koodaamiseksi
US6172965B1 (en) * 1996-12-23 2001-01-09 Nortel Networks Limited Duplex transmission scheme
JP2856185B2 (ja) * 1997-01-21 1999-02-10 日本電気株式会社 音声符号化復号化システム
IL124578A0 (en) * 1997-01-23 1999-01-26 Motorola Inc Apparatus and method for non-linear processing in a communication system
US7751370B2 (en) 2001-07-13 2010-07-06 Qualcomm Incorporated Method and apparatus for forward link rate scheduling
US6335922B1 (en) 1997-02-11 2002-01-01 Qualcomm Incorporated Method and apparatus for forward link rate scheduling
JP3067676B2 (ja) * 1997-02-13 2000-07-17 日本電気株式会社 Lspの予測符号化装置及び方法
US6014375A (en) * 1997-02-13 2000-01-11 Ericsson Inc. TDMA radio protocol with adaptive vocoder selection
US5832443A (en) * 1997-02-25 1998-11-03 Alaris, Inc. Method and apparatus for adaptive audio compression and decompression
US6104993A (en) * 1997-02-26 2000-08-15 Motorola, Inc. Apparatus and method for rate determination in a communication system
WO1998038764A1 (de) * 1997-02-27 1998-09-03 Siemens Aktiengesellschaft Verfahren und anordnung zur rahmenfehlerdetektion zwecks fehlerverdeckung insbesondere bei gsm übertragungen
US6167375A (en) * 1997-03-17 2000-12-26 Kabushiki Kaisha Toshiba Method for encoding and decoding a speech signal including background noise
US6282228B1 (en) 1997-03-20 2001-08-28 Xircom, Inc. Spread spectrum codes for use in communication
US6480521B1 (en) * 1997-03-26 2002-11-12 Qualcomm Incorporated Method and apparatus for transmitting high speed data in a spread spectrum communications system
US5907822A (en) * 1997-04-04 1999-05-25 Lincom Corporation Loss tolerant speech decoder for telecommunications
PL193825B1 (pl) * 1997-04-07 2007-03-30 Koninkl Philips Electronics Nv Sposób i urządzenie do kodowania sygnału mowy
KR100198476B1 (ko) * 1997-04-23 1999-06-15 윤종용 노이즈에 견고한 스펙트럼 포락선 양자화기 및 양자화 방법
US6014623A (en) * 1997-06-12 2000-01-11 United Microelectronics Corp. Method of encoding synthetic speech
US6075792A (en) 1997-06-16 2000-06-13 Interdigital Technology Corporation CDMA communication system which selectively allocates bandwidth upon demand
US6003003A (en) * 1997-06-27 1999-12-14 Advanced Micro Devices, Inc. Speech recognition system having a quantizer using a single robust codebook designed at multiple signal to noise ratios
US6032116A (en) * 1997-06-27 2000-02-29 Advanced Micro Devices, Inc. Distance measure in a speech recognition system for speech recognition using frequency shifting factors to compensate for input signal frequency shifts
US6044343A (en) * 1997-06-27 2000-03-28 Advanced Micro Devices, Inc. Adaptive speech recognition with selective input data to a speech classifier
US6175590B1 (en) 1997-08-08 2001-01-16 Qualcomm Inc. Method and apparatus for determining the rate of received data in a variable rate communication system
US6097972A (en) * 1997-08-29 2000-08-01 Qualcomm Incorporated Method and apparatus for processing power control signals in CDMA mobile telephone system
US6058359A (en) * 1998-03-04 2000-05-02 Telefonaktiebolaget L M Ericsson Speech coding including soft adaptability feature
US6049537A (en) * 1997-09-05 2000-04-11 Motorola, Inc. Method and system for controlling speech encoding in a communication system
US5898696A (en) * 1997-09-05 1999-04-27 Motorola, Inc. Method and system for controlling an encoding rate in a variable rate communication system
US6920150B1 (en) 1997-09-30 2005-07-19 Lucent Technologies Inc. Adaptive communications transcoding and error control
AU4661497A (en) * 1997-09-30 1999-03-22 Qualcomm Incorporated Channel gain modification system and method for noise reduction in voice communication
US5897613A (en) * 1997-10-08 1999-04-27 Lucent Technologies Inc. Efficient transmission of voice silence intervals
US6067515A (en) * 1997-10-27 2000-05-23 Advanced Micro Devices, Inc. Split matrix quantization with split vector quantization error compensation and selective enhanced processing for robust speech recognition
US6070136A (en) * 1997-10-27 2000-05-30 Advanced Micro Devices, Inc. Matrix quantization with vector quantization error compensation for robust speech recognition
US5953695A (en) * 1997-10-29 1999-09-14 Lucent Technologies Inc. Method and apparatus for synchronizing digital speech communications
US7184426B2 (en) 2002-12-12 2007-02-27 Qualcomm, Incorporated Method and apparatus for burst pilot for a time division multiplex system
US9118387B2 (en) 1997-11-03 2015-08-25 Qualcomm Incorporated Pilot reference transmission for a wireless communication system
US6563803B1 (en) * 1997-11-26 2003-05-13 Qualcomm Incorporated Acoustic echo canceller
US6044339A (en) * 1997-12-02 2000-03-28 Dspc Israel Ltd. Reduced real-time processing in stochastic celp encoding
DE19753697B4 (de) * 1997-12-03 2006-04-27 Siemens Ag Verfahren und Funkstation zur Datenübertragung in einem Kommunikationssystem
US6049765A (en) * 1997-12-22 2000-04-11 Lucent Technologies Inc. Silence compression for recorded voice messages
US6104994A (en) * 1998-01-13 2000-08-15 Conexant Systems, Inc. Method for speech coding under background noise conditions
JPH11215006A (ja) * 1998-01-29 1999-08-06 Olympus Optical Co Ltd ディジタル音声信号の送信装置及び受信装置
US6799159B2 (en) * 1998-02-02 2004-09-28 Motorola, Inc. Method and apparatus employing a vocoder for speech processing
US6381569B1 (en) * 1998-02-04 2002-04-30 Qualcomm Incorporated Noise-compensated speech recognition templates
US6603751B1 (en) * 1998-02-13 2003-08-05 Qualcomm Incorporated Method and system for performing a handoff in a wireless communication system, such as a hard handoff
US6545989B1 (en) 1998-02-19 2003-04-08 Qualcomm Incorporated Transmit gating in a wireless communication system
US6104991A (en) * 1998-02-27 2000-08-15 Lucent Technologies, Inc. Speech encoding and decoding system which modifies encoding and decoding characteristics based on an audio signal
FI113571B (fi) 1998-03-09 2004-05-14 Nokia Corp Puheenkoodaus
US6118392A (en) * 1998-03-12 2000-09-12 Liquid Audio Inc. Lossless data compression with low complexity
US6125348A (en) * 1998-03-12 2000-09-26 Liquid Audio Inc. Lossless data compression with low complexity
US6028541A (en) * 1998-03-12 2000-02-22 Liquid Audio Inc. Lossless data compression with low complexity
US6121904A (en) * 1998-03-12 2000-09-19 Liquid Audio, Inc. Lossless data compression with low complexity
US6043763A (en) * 1998-03-12 2000-03-28 Liquid Audio, Inc. Lossless data compression with low complexity
US6169906B1 (en) * 1998-03-24 2001-01-02 Motorola, Inc. Method of transmitting messages in a dispatch call
US20030194033A1 (en) 1998-05-21 2003-10-16 Tiedemann Edward G. Method and apparatus for coordinating transmission of short messages with hard handoff searches in a wireless communications system
US6577645B2 (en) 1998-06-03 2003-06-10 Siemens Aktiengesellschaft Method and radio set for transmitting messages
EP1084586B1 (de) * 1998-06-03 2004-12-22 Siemens Aktiengesellschaft Verfahren und funkgerät zur übertragung von nachrichten
US6141639A (en) * 1998-06-05 2000-10-31 Conexant Systems, Inc. Method and apparatus for coding of signals containing speech and background noise
US6810377B1 (en) * 1998-06-19 2004-10-26 Comsat Corporation Lost frame recovery techniques for parametric, LPC-based speech coding systems
JP3273599B2 (ja) * 1998-06-19 2002-04-08 沖電気工業株式会社 音声符号化レート選択器と音声符号化装置
US6034971A (en) * 1998-06-30 2000-03-07 Motorola, Inc. Method and apparatus for controlling communication system capacity
US6081776A (en) * 1998-07-13 2000-06-27 Lockheed Martin Corp. Speech coding system and method including adaptive finite impulse response filter
DE19833318C2 (de) * 1998-07-24 2001-08-02 Bosch Gmbh Robert Verfahren zur Übertragung von digitalen Nutzdaten
US6163766A (en) * 1998-08-14 2000-12-19 Motorola, Inc. Adaptive rate system and method for wireless communications
US6173254B1 (en) * 1998-08-18 2001-01-09 Denso Corporation, Ltd. Recorded message playback system for a variable bit rate system
JP4308345B2 (ja) * 1998-08-21 2009-08-05 パナソニック株式会社 マルチモード音声符号化装置及び復号化装置
US7072832B1 (en) 1998-08-24 2006-07-04 Mindspeed Technologies, Inc. System for speech encoding having an adaptive encoding arrangement
US6823303B1 (en) * 1998-08-24 2004-11-23 Conexant Systems, Inc. Speech encoder using voice activity detection in coding noise
US6385573B1 (en) * 1998-08-24 2002-05-07 Conexant Systems, Inc. Adaptive tilt compensation for synthesized speech residual
US6240386B1 (en) * 1998-08-24 2001-05-29 Conexant Systems, Inc. Speech codec employing noise classification for noise compensation
US6330533B2 (en) 1998-08-24 2001-12-11 Conexant Systems, Inc. Speech encoder adaptively applying pitch preprocessing with warping of target signal
US6493665B1 (en) * 1998-08-24 2002-12-10 Conexant Systems, Inc. Speech classification and parameter weighting used in codebook search
US6449590B1 (en) 1998-08-24 2002-09-10 Conexant Systems, Inc. Speech encoder using warping in long term preprocessing
US6260010B1 (en) * 1998-08-24 2001-07-10 Conexant Systems, Inc. Speech encoder using gain normalization that combines open and closed loop gains
US7117146B2 (en) * 1998-08-24 2006-10-03 Mindspeed Technologies, Inc. System for improved use of pitch enhancement with subcodebooks
US6188980B1 (en) * 1998-08-24 2001-02-13 Conexant Systems, Inc. Synchronized encoder-decoder frame concealment using speech coding parameters including line spectral frequencies and filter coefficients
US6480822B2 (en) * 1998-08-24 2002-11-12 Conexant Systems, Inc. Low complexity random codebook structure
US6798736B1 (en) 1998-09-22 2004-09-28 Qualcomm Incorporated Method and apparatus for transmitting and receiving variable rate data
US7272556B1 (en) * 1998-09-23 2007-09-18 Lucent Technologies Inc. Scalable and embedded codec for speech and audio signals
US6219642B1 (en) 1998-10-05 2001-04-17 Legerity, Inc. Quantization using frequency and mean compensated frequency input data for robust speech recognition
US6347297B1 (en) * 1998-10-05 2002-02-12 Legerity, Inc. Matrix quantization with vector quantization error compensation and neural network postprocessing for robust speech recognition
US6353808B1 (en) * 1998-10-22 2002-03-05 Sony Corporation Apparatus and method for encoding a signal as well as apparatus and method for decoding a signal
JP3343082B2 (ja) * 1998-10-27 2002-11-11 松下電器産業株式会社 Celp型音声符号化装置
US6463407B2 (en) 1998-11-13 2002-10-08 Qualcomm Inc. Low bit-rate coding of unvoiced segments of speech
US6754630B2 (en) 1998-11-13 2004-06-22 Qualcomm, Inc. Synthesis of speech from pitch prototype waveforms by time-synchronous waveform interpolation
US6424938B1 (en) * 1998-11-23 2002-07-23 Telefonaktiebolaget L M Ericsson Complex signal activity detection for improved speech/noise classification of an audio signal
US6233549B1 (en) 1998-11-23 2001-05-15 Qualcomm, Inc. Low frequency spectral enhancement system and method
US6289099B1 (en) * 1998-11-30 2001-09-11 Qualcomm Inc. Ringer for satellite user terminals
US6256606B1 (en) 1998-11-30 2001-07-03 Conexant Systems, Inc. Silence description coding for multi-rate speech codecs
US6275485B1 (en) 1998-12-03 2001-08-14 Qualcomm Inc. Noise characterization in a wireless communication system
US6512925B1 (en) * 1998-12-03 2003-01-28 Qualcomm, Incorporated Method and apparatus for controlling transmission power while in soft handoff
US6182030B1 (en) 1998-12-18 2001-01-30 Telefonaktiebolaget Lm Ericsson (Publ) Enhanced coding to improve coded communication signals
US6691084B2 (en) * 1998-12-21 2004-02-10 Qualcomm Incorporated Multiple mode variable rate speech coding
US6542486B1 (en) * 1998-12-22 2003-04-01 Nortel Networks Limited Multiple technology vocoder and an associated telecommunications network
US6393074B1 (en) 1998-12-31 2002-05-21 Texas Instruments Incorporated Decoding system for variable-rate convolutionally-coded data sequence
US7406098B2 (en) * 1999-01-13 2008-07-29 Qualcomm Incorporated Resource allocation in a communication system supporting application flows having quality of service requirements
US6330247B1 (en) 1999-02-08 2001-12-11 Qualcomm Incorporated Communication protocol between a communication device and an external accessory
US6324509B1 (en) 1999-02-08 2001-11-27 Qualcomm Incorporated Method and apparatus for accurate endpointing of speech in the presence of noise
US6226607B1 (en) * 1999-02-08 2001-05-01 Qualcomm Incorporated Method and apparatus for eighth-rate random number generation for speech coders
US6574596B2 (en) 1999-02-08 2003-06-03 Qualcomm Incorporated Voice recognition rejection scheme
JP4503853B2 (ja) * 1999-02-08 2010-07-14 クゥアルコム・インコーポレイテッド 可変率音声符号化に基づいた音声合成装置
US6411926B1 (en) 1999-02-08 2002-06-25 Qualcomm Incorporated Distributed voice recognition system
US6587446B2 (en) * 1999-02-11 2003-07-01 Qualcomm Incorporated Handoff in a wireless communication system
US6260009B1 (en) 1999-02-12 2001-07-10 Qualcomm Incorporated CELP-based to CELP-based vocoder packet translation
US6449592B1 (en) 1999-02-26 2002-09-10 Qualcomm Incorporated Method and apparatus for tracking the phase of a quasi-periodic signal
US6397177B1 (en) * 1999-03-10 2002-05-28 Samsung Electronics, Co., Ltd. Speech-encoding rate decision apparatus and method in a variable rate
US6088347A (en) * 1999-03-10 2000-07-11 Massachusetts Institute Of Technology Variable chip rate code-division multiple access
US6233552B1 (en) * 1999-03-12 2001-05-15 Comsat Corporation Adaptive post-filtering technique based on the Modified Yule-Walker filter
US6519479B1 (en) 1999-03-31 2003-02-11 Qualcomm Inc. Spoken user interface for speech-enabled devices
CA2371958C (en) * 1999-04-12 2006-07-25 Samsung Electronics Co., Ltd. Apparatus and method for gated transmission in a cdma communication system
US7058573B1 (en) * 1999-04-20 2006-06-06 Nuance Communications Inc. Speech recognition system to selectively utilize different speech recognition techniques over multiple speech recognition passes
US6260017B1 (en) 1999-05-07 2001-07-10 Qualcomm Inc. Multipulse interpolative coding of transition speech frames
US6766295B1 (en) 1999-05-10 2004-07-20 Nuance Communications Adaptation of a speech recognition system across multiple remote sessions with a speaker
US6661832B1 (en) * 1999-05-11 2003-12-09 Qualcomm Incorporated System and method for providing an accurate estimation of received signal interference for use in wireless communications systems
US6954727B1 (en) * 1999-05-28 2005-10-11 Koninklijke Philips Electronics N.V. Reducing artifact generation in a vocoder
US6397175B1 (en) 1999-07-19 2002-05-28 Qualcomm Incorporated Method and apparatus for subsampling phase spectrum information
US6330532B1 (en) 1999-07-19 2001-12-11 Qualcomm Incorporated Method and apparatus for maintaining a target bit rate in a speech coder
US6393394B1 (en) 1999-07-19 2002-05-21 Qualcomm Incorporated Method and apparatus for interleaving line spectral information quantization methods in a speech coder
US6324505B1 (en) * 1999-07-19 2001-11-27 Qualcomm Incorporated Amplitude quantization scheme for low-bit-rate speech coders
US6324503B1 (en) 1999-07-19 2001-11-27 Qualcomm Incorporated Method and apparatus for providing feedback from decoder to encoder to improve performance in a predictive speech coder under frame erasure conditions
US6496706B1 (en) 1999-07-23 2002-12-17 Qualcomm Incorporated Method and system for transmit gating in a wireless communication system
US6704328B1 (en) * 1999-07-26 2004-03-09 Nortel Networks, Limited Signalling scheme and messaging structure to support the smoothing of large bit rate transmissions
US6603752B1 (en) 1999-07-29 2003-08-05 Ahmed Saifuddin Method and system for controlling transmission energy in a variable rate gated communication system
US6658112B1 (en) 1999-08-06 2003-12-02 General Dynamics Decision Systems, Inc. Voice decoder and method for detecting channel errors using spectral energy evolution
US6633552B1 (en) * 1999-08-06 2003-10-14 Qualcomm Incorporated Method and apparatus for determining the closed loop power control set point in a wireless packet data communication system
US6597667B1 (en) 1999-08-18 2003-07-22 Qualcomm Incorporated Network based muting of a cellular telephone
US6493329B1 (en) 1999-08-23 2002-12-10 Qualcomm Incorporated Adaptive channel estimation in a wireless communication system
US8064409B1 (en) 1999-08-25 2011-11-22 Qualcomm Incorporated Method and apparatus using a multi-carrier forward link in a wireless communication system
US6426971B1 (en) 1999-09-13 2002-07-30 Qualcomm Incorporated System and method for accurately predicting signal to interference and noise ratio to improve communications system performance
US6708024B1 (en) * 1999-09-22 2004-03-16 Legerity, Inc. Method and apparatus for generating comfort noise
US6574593B1 (en) 1999-09-22 2003-06-03 Conexant Systems, Inc. Codebook tables for encoding and decoding
AU2003262451B2 (en) * 1999-09-22 2006-01-19 Macom Technology Solutions Holdings, Inc. Multimode speech encoder
AU766830B2 (en) * 1999-09-22 2003-10-23 Macom Technology Solutions Holdings, Inc. Multimode speech encoder
US6604070B1 (en) 1999-09-22 2003-08-05 Conexant Systems, Inc. System of encoding and decoding speech signals
US6959274B1 (en) * 1999-09-22 2005-10-25 Mindspeed Technologies, Inc. Fixed rate speech compression system and method
US6581032B1 (en) 1999-09-22 2003-06-17 Conexant Systems, Inc. Bitstream protocol for transmission of encoded voice signals
US6636829B1 (en) * 1999-09-22 2003-10-21 Mindspeed Technologies, Inc. Speech communication system and method for handling lost frames
US6782360B1 (en) * 1999-09-22 2004-08-24 Mindspeed Technologies, Inc. Gain quantization for a CELP speech coder
US7054809B1 (en) * 1999-09-22 2006-05-30 Mindspeed Technologies, Inc. Rate selection method for selectable mode vocoder
US6496798B1 (en) * 1999-09-30 2002-12-17 Motorola, Inc. Method and apparatus for encoding and decoding frames of voice model parameters into a low bit rate digital voice message
US6772126B1 (en) * 1999-09-30 2004-08-03 Motorola, Inc. Method and apparatus for transferring low bit rate digital voice messages using incremental messages
US6850506B1 (en) 1999-10-07 2005-02-01 Qualcomm Incorporated Forward-link scheduling in a wireless communication system
US6621804B1 (en) 1999-10-07 2003-09-16 Qualcomm Incorporated Method and apparatus for predicting favored supplemental channel transmission slots using transmission power measurements of a fundamental channel
US7522631B1 (en) * 1999-10-26 2009-04-21 Qualcomm, Incorporated Method and apparatus for efficient data transmission control in a wireless voice-over-data communication system
US6463274B1 (en) * 1999-10-26 2002-10-08 Denso Corporation Multiple class of service determination for digital cellular telephones
US6438518B1 (en) 1999-10-28 2002-08-20 Qualcomm Incorporated Method and apparatus for using coding scheme selection patterns in a predictive speech coder to reduce sensitivity to frame error conditions
US6496794B1 (en) * 1999-11-22 2002-12-17 Motorola, Inc. Method and apparatus for seamless multi-rate speech coding
US6772112B1 (en) 1999-12-10 2004-08-03 Lucent Technologies Inc. System and method to reduce speech delay and improve voice quality using half speech blocks
BR0006803A (pt) * 1999-12-10 2001-12-11 Lucent Technologies Inc Sistema e método para reduzir retardo de fala emelhorar a qualidade de fala utilizando meiosblocos
US7574351B2 (en) * 1999-12-14 2009-08-11 Texas Instruments Incorporated Arranging CELP information of one frame in a second packet
US6745024B1 (en) 2000-01-10 2004-06-01 Qualcomm Incorporated System and method for preparing and sending an electronic mail communication using a wireless communications device
US6510409B1 (en) * 2000-01-18 2003-01-21 Conexant Systems, Inc. Intelligent discontinuous transmission and comfort noise generation scheme for pulse code modulation speech coders
US7127390B1 (en) * 2000-02-08 2006-10-24 Mindspeed Technologies, Inc. Rate determination coding
EP1126651A1 (en) * 2000-02-16 2001-08-22 Lucent Technologies Inc. Link adaptation for RT-EGPRS
US6721368B1 (en) 2000-03-04 2004-04-13 Qualcomm Incorporated Transmitter architectures for communications systems
US6584438B1 (en) 2000-04-24 2003-06-24 Qualcomm Incorporated Frame erasure compensation method in a variable rate speech coder
ATE420432T1 (de) * 2000-04-24 2009-01-15 Qualcomm Inc Verfahren und vorrichtung zur prädiktiven quantisierung von stimmhaften sprachsignalen
US6980527B1 (en) 2000-04-25 2005-12-27 Cwill Telecommunications, Inc. Smart antenna CDMA wireless communication system
US7080009B2 (en) * 2000-05-01 2006-07-18 Motorola, Inc. Method and apparatus for reducing rate determination errors and their artifacts
US6285682B1 (en) * 2000-05-01 2001-09-04 Motorola, Inc. Method and apparatus for determining the frame rate of a frame
FI115329B (fi) * 2000-05-08 2005-04-15 Nokia Corp Menetelmä ja järjestely lähdesignaalin kaistanleveyden vaihtamiseksi tietoliikenneyhteydessä, jossa on valmiudet useisiin kaistanleveyksiin
US7089181B2 (en) 2001-05-30 2006-08-08 Intel Corporation Enhancing the intelligibility of received speech in a noisy environment
US7072833B2 (en) 2000-06-02 2006-07-04 Canon Kabushiki Kaisha Speech processing system
US7010483B2 (en) 2000-06-02 2006-03-07 Canon Kabushiki Kaisha Speech processing system
US7035790B2 (en) 2000-06-02 2006-04-25 Canon Kabushiki Kaisha Speech processing system
US6954745B2 (en) 2000-06-02 2005-10-11 Canon Kabushiki Kaisha Signal processing system
US6735563B1 (en) 2000-07-13 2004-05-11 Qualcomm, Inc. Method and apparatus for constructing voice templates for a speaker-independent voice recognition system
US6671669B1 (en) * 2000-07-18 2003-12-30 Qualcomm Incorporated combined engine system and method for voice recognition
US6510142B1 (en) 2000-07-21 2003-01-21 Motorola, Inc. Method and apparatus for reduced reversed traffic in a cellular telephone system
US6856954B1 (en) * 2000-07-28 2005-02-15 Mindspeed Technologies, Inc. Flexible variable rate vocoder for wireless communication systems
US6728669B1 (en) * 2000-08-07 2004-04-27 Lucent Technologies Inc. Relative pulse position in celp vocoding
EP1944759B1 (en) * 2000-08-09 2010-10-20 Sony Corporation Voice data processing device and processing method
US6477502B1 (en) 2000-08-22 2002-11-05 Qualcomm Incorporated Method and apparatus for using non-symmetric speech coders to produce non-symmetric links in a wireless communication system
US6937979B2 (en) * 2000-09-15 2005-08-30 Mindspeed Technologies, Inc. Coding based on spectral content of a speech signal
US6842733B1 (en) 2000-09-15 2005-01-11 Mindspeed Technologies, Inc. Signal processing system for filtering spectral content of a signal for speech coding
US6850884B2 (en) * 2000-09-15 2005-02-01 Mindspeed Technologies, Inc. Selection of coding parameters based on spectral content of a speech signal
US7133823B2 (en) * 2000-09-15 2006-11-07 Mindspeed Technologies, Inc. System for an adaptive excitation pattern for speech coding
US6760882B1 (en) 2000-09-19 2004-07-06 Intel Corporation Mode selection for data transmission in wireless communication channels based on statistical parameters
US6802035B2 (en) * 2000-09-19 2004-10-05 Intel Corporation System and method of dynamically optimizing a transmission mode of wirelessly transmitted information
US7068683B1 (en) 2000-10-25 2006-06-27 Qualcomm, Incorporated Method and apparatus for high rate packet data and low delay data transmissions
US7171355B1 (en) 2000-10-25 2007-01-30 Broadcom Corporation Method and apparatus for one-stage and two-stage noise feedback coding of speech and audio signals
US6973098B1 (en) 2000-10-25 2005-12-06 Qualcomm, Incorporated Method and apparatus for determining a data rate in a high rate packet data wireless communications system
DE60029453T2 (de) * 2000-11-09 2007-04-12 Koninklijke Kpn N.V. Messen der Übertragungsqualität einer Telefonverbindung in einem Fernmeldenetz
US7606703B2 (en) * 2000-11-15 2009-10-20 Texas Instruments Incorporated Layered celp system and method with varying perceptual filter or short-term postfilter strengths
US6999430B2 (en) * 2000-11-30 2006-02-14 Qualcomm Incorporated Method and apparatus for transmitting data traffic on a wireless communication channel
US6804218B2 (en) 2000-12-04 2004-10-12 Qualcomm Incorporated Method and apparatus for improved detection of rate errors in variable rate receivers
US7472059B2 (en) * 2000-12-08 2008-12-30 Qualcomm Incorporated Method and apparatus for robust speech classification
US7505594B2 (en) * 2000-12-19 2009-03-17 Qualcomm Incorporated Discontinuous transmission (DTX) controller system and method
SE0004818D0 (sv) * 2000-12-22 2000-12-22 Coding Technologies Sweden Ab Enhancing source coding systems by adaptive transposition
US7346918B2 (en) 2000-12-27 2008-03-18 Z-Band, Inc. Intelligent device system and method for distribution of digital signals on a wideband signal distribution system
WO2002054601A1 (en) 2000-12-29 2002-07-11 Morphics Technology, Inc. Channel codec processor configurable for multiple wireless communications standards
US7113522B2 (en) * 2001-01-24 2006-09-26 Qualcomm, Incorporated Enhanced conversion of wideband signals to narrowband signals
US7062445B2 (en) * 2001-01-26 2006-06-13 Microsoft Corporation Quantization loop with heuristic approach
US7120134B2 (en) 2001-02-15 2006-10-10 Qualcomm, Incorporated Reverse link channel architecture for a wireless communication system
US20040204935A1 (en) * 2001-02-21 2004-10-14 Krishnasamy Anandakumar Adaptive voice playout in VOP
US6760587B2 (en) 2001-02-23 2004-07-06 Qualcomm Incorporated Forward-link scheduling in a wireless communication system during soft and softer handoff
US7289461B2 (en) 2001-03-15 2007-10-30 Qualcomm Incorporated Communications using wideband terminals
US20020181546A1 (en) * 2001-03-23 2002-12-05 Odenwalder Joseph P. Preamble channels
US6760576B2 (en) 2001-03-27 2004-07-06 Qualcomm Incorporated Method and apparatus for enhanced rate determination in high data rate wireless communication systems
US8199696B2 (en) * 2001-03-29 2012-06-12 Qualcomm Incorporated Method and apparatus for power control in a wireless communication system
US6625172B2 (en) 2001-04-26 2003-09-23 Joseph P. Odenwalder Rescheduling scheduled transmissions
US7230941B2 (en) 2001-04-26 2007-06-12 Qualcomm Incorporated Preamble channel decoding
JP4591939B2 (ja) * 2001-05-15 2010-12-01 Kddi株式会社 適応的符号化伝送装置および受信装置
US7170924B2 (en) * 2001-05-17 2007-01-30 Qualcomm, Inc. System and method for adjusting combiner weights using an adaptive algorithm in wireless communications system
US6990137B2 (en) * 2001-05-17 2006-01-24 Qualcomm, Incorporated System and method for received signal prediction in wireless communications systems
JP3859462B2 (ja) * 2001-05-18 2006-12-20 株式会社東芝 予測パラメータ分析装置および予測パラメータ分析方法
US6789059B2 (en) * 2001-06-06 2004-09-07 Qualcomm Incorporated Reducing memory requirements of a codebook vector search
GB2386808B (en) 2001-06-28 2004-07-07 Samsung Electronics Co Ltd Apparatus and method for transmitting TFCI bits for a hard split mode in a CDMA mobile communication system
US7489655B2 (en) * 2001-07-06 2009-02-10 Qualcomm, Incorporated Method and apparatus for predictive scheduling in a bi-directional communication system
JP2003044098A (ja) * 2001-07-26 2003-02-14 Nec Corp 音声帯域拡張装置及び音声帯域拡張方法
US7110942B2 (en) * 2001-08-14 2006-09-19 Broadcom Corporation Efficient excitation quantization in a noise feedback coding system using correlation techniques
DE60217522T2 (de) * 2001-08-17 2007-10-18 Broadcom Corp., Irvine Verbessertes verfahren zur verschleierung von bitfehlern bei der sprachcodierung
US7162415B2 (en) * 2001-11-06 2007-01-09 The Regents Of The University Of California Ultra-narrow bandwidth voice coding
US7453801B2 (en) * 2001-11-08 2008-11-18 Qualcomm Incorporated Admission control and resource allocation in a communication system supporting application flows having quality of service requirements
WO2003049353A1 (en) * 2001-12-05 2003-06-12 Qualcomm, Incorporated System and method for adjusting quality of service in a communication system
US7146313B2 (en) * 2001-12-14 2006-12-05 Microsoft Corporation Techniques for measurement of perceptual audio quality
US7027982B2 (en) * 2001-12-14 2006-04-11 Microsoft Corporation Quality and rate control strategy for digital audio
GB2383239B (en) * 2001-12-15 2004-03-17 Motorola Inc A method and apparatus for transmitting data
US7206740B2 (en) * 2002-01-04 2007-04-17 Broadcom Corporation Efficient excitation quantization in noise feedback coding with general noise shaping
JP3778087B2 (ja) * 2002-01-18 2006-05-24 富士ゼロックス株式会社 データ符号化装置及びデータ復号装置
US7313520B2 (en) * 2002-03-20 2007-12-25 The Directv Group, Inc. Adaptive variable bit rate audio compression encoding
US6957183B2 (en) * 2002-03-20 2005-10-18 Qualcomm Inc. Method for robust voice recognition by analyzing redundant features of source signal
US7321559B2 (en) * 2002-06-28 2008-01-22 Lucent Technologies Inc System and method of noise reduction in receiving wireless transmission of packetized audio signals
US6980695B2 (en) * 2002-06-28 2005-12-27 Microsoft Corporation Rate allocation for mixed content video
CA2392640A1 (en) * 2002-07-05 2004-01-05 Voiceage Corporation A method and device for efficient in-based dim-and-burst signaling and half-rate max operation in variable bit-rate wideband speech coding for cdma wireless systems
US8090577B2 (en) 2002-08-08 2012-01-03 Qualcomm Incorported Bandwidth-adaptive quantization
JP2004151123A (ja) * 2002-10-23 2004-05-27 Nec Corp 符号変換方法、符号変換装置、プログラム及びその記憶媒体
US7602722B2 (en) * 2002-12-04 2009-10-13 Nortel Networks Limited Mobile assisted fast scheduling for the reverse link
GB2396271B (en) * 2002-12-10 2005-08-10 Motorola Inc A user terminal and method for voice communication
US7698132B2 (en) * 2002-12-17 2010-04-13 Qualcomm Incorporated Sub-sampled excitation waveform codebooks
US7120447B1 (en) * 2003-02-24 2006-10-10 Nortel Networks Limited Selectable mode vocoder management algorithm for CDMA based networks
US6965859B2 (en) * 2003-02-28 2005-11-15 Xvd Corporation Method and apparatus for audio compression
KR100480341B1 (ko) * 2003-03-13 2005-03-31 한국전자통신연구원 광대역 저전송률 음성 신호의 부호화기
US7009999B2 (en) * 2003-03-28 2006-03-07 Qualcomm Incorporated Selective variable rate encoding to regulate data frame size
KR20050007977A (ko) * 2003-07-12 2005-01-21 삼성전자주식회사 이동 통신 시스템에서의 보코더의 모드 및 전송율 제어 방법
US7577756B2 (en) 2003-07-15 2009-08-18 Special Devices, Inc. Dynamically-and continuously-variable rate, asynchronous data transfer
US7383180B2 (en) * 2003-07-18 2008-06-03 Microsoft Corporation Constant bitrate media encoding techniques
US7609763B2 (en) * 2003-07-18 2009-10-27 Microsoft Corporation Advanced bi-directional predictive coding of video frames
US7343291B2 (en) 2003-07-18 2008-03-11 Microsoft Corporation Multi-pass variable bitrate media encoding
US7146309B1 (en) 2003-09-02 2006-12-05 Mindspeed Technologies, Inc. Deriving seed values to generate excitation values in a speech coder
US7613606B2 (en) * 2003-10-02 2009-11-03 Nokia Corporation Speech codecs
US7379875B2 (en) * 2003-10-24 2008-05-27 Microsoft Corporation Systems and methods for generating audio thumbnails
US7505764B2 (en) * 2003-10-28 2009-03-17 Motorola, Inc. Method for retransmitting a speech packet
US20050147131A1 (en) * 2003-12-29 2005-07-07 Nokia Corporation Low-rate in-band data channel using CELP codewords
US8473286B2 (en) * 2004-02-26 2013-06-25 Broadcom Corporation Noise feedback coding system and method for providing generalized noise shaping within a simple filter structure
KR100629997B1 (ko) * 2004-02-26 2006-09-27 엘지전자 주식회사 오디오 신호의 인코딩 방법
CN1930607B (zh) * 2004-03-05 2010-11-10 松下电器产业株式会社 差错隐藏装置以及差错隐藏方法
JP2005337573A (ja) 2004-05-26 2005-12-08 Sanden Corp 熱交換器
US8670988B2 (en) * 2004-07-23 2014-03-11 Panasonic Corporation Audio encoding/decoding apparatus and method providing multiple coding scheme interoperability
WO2006022124A1 (ja) * 2004-08-27 2006-03-02 Matsushita Electric Industrial Co., Ltd. オーディオデコーダ、方法及びプログラム
CA2691762C (en) 2004-08-30 2012-04-03 Qualcomm Incorporated Method and apparatus for an adaptive de-jitter buffer
SE528213C3 (sv) * 2004-09-30 2006-10-31 Ericsson Telefon Ab L M Förfaranden och arrangemang för adaptiva trösklar vid val av kodek
SE0402372D0 (sv) 2004-09-30 2004-09-30 Ericsson Telefon Ab L M Signal coding
US8085678B2 (en) 2004-10-13 2011-12-27 Qualcomm Incorporated Media (voice) playback (de-jitter) buffer adjustments based on air interface
US7697480B2 (en) * 2004-11-22 2010-04-13 Motorola, Inc Method and apparatus for inter-system active handoff of a hybrid subscriber unit
US20060109819A1 (en) * 2004-11-22 2006-05-25 Marin James S Method and apparatus for inter-system active handoff of a hybrid subscriber unit
US8102872B2 (en) 2005-02-01 2012-01-24 Qualcomm Incorporated Method for discontinuous transmission and accurate reproduction of background noise information
US20060224381A1 (en) * 2005-04-04 2006-10-05 Nokia Corporation Detecting speech frames belonging to a low energy sequence
US20060241937A1 (en) * 2005-04-21 2006-10-26 Ma Changxue C Method and apparatus for automatically discriminating information bearing audio segments and background noise audio segments
US7983301B2 (en) * 2005-06-24 2011-07-19 O2Micro International, Ltd. Method for extended transmission capabilities of short message service
US20080201689A1 (en) * 2005-06-30 2008-08-21 Freescale Semiconductor, Inc. Vector Crc Computatuion on Dsp
US20070005347A1 (en) * 2005-06-30 2007-01-04 Kotzin Michael D Method and apparatus for data frame construction
JP5035816B2 (ja) * 2005-07-14 2012-09-26 一般財団法人電力中央研究所 細孔内付着液体残留量推定方法
US7542421B2 (en) * 2005-09-09 2009-06-02 Tropos Networks Adaptive control of transmission power and data rates of transmission links between access nodes of a mesh network
CN1964244B (zh) * 2005-11-08 2010-04-07 厦门致晟科技有限公司 一种用声码器收发数字信号的方法
KR101019936B1 (ko) * 2005-12-02 2011-03-09 퀄컴 인코포레이티드 음성 파형의 정렬을 위한 시스템, 방법, 및 장치
US8219392B2 (en) * 2005-12-05 2012-07-10 Qualcomm Incorporated Systems, methods, and apparatus for detection of tonal components employing a coding operation with monotone function
KR100744542B1 (ko) * 2005-12-08 2007-08-01 한국전자통신연구원 가변대역 멀티코덱 QoS 제어 장치 및 방법
US8346544B2 (en) * 2006-01-20 2013-01-01 Qualcomm Incorporated Selection of encoding modes and/or encoding rates for speech compression with closed loop re-decision
US8032369B2 (en) * 2006-01-20 2011-10-04 Qualcomm Incorporated Arbitrary average data rates for variable rate coders
US8090573B2 (en) * 2006-01-20 2012-01-03 Qualcomm Incorporated Selection of encoding modes and/or encoding rates for speech compression with open loop re-decision
JP4816115B2 (ja) * 2006-02-08 2011-11-16 カシオ計算機株式会社 音声符号化装置及び音声符号化方法
US8036242B2 (en) * 2006-02-15 2011-10-11 Qualcomm Incorporated Dynamic capacity operating point management for a vocoder in an access terminal
US7720499B2 (en) * 2006-02-27 2010-05-18 Tropos Networks, Inc. Regulation of transmission power control in mitigate self interference by optimizing link transmission parameters in a wireless network
JP4771835B2 (ja) * 2006-03-06 2011-09-14 株式会社リコー トナー及び画像形成方法
FR2898443A1 (fr) * 2006-03-13 2007-09-14 France Telecom Procede de codage d'un signal audio source, dispositif de codage, procede et dispositif de decodage, signal, produits programme d'ordinateur correspondants
US7778828B2 (en) * 2006-03-15 2010-08-17 Sasken Communication Technologies Ltd. Method and system for automatic gain control of a speech signal
US8392176B2 (en) * 2006-04-10 2013-03-05 Qualcomm Incorporated Processing of excitation in audio coding and decoding
KR100900438B1 (ko) * 2006-04-25 2009-06-01 삼성전자주식회사 음성 패킷 복구 장치 및 방법
DE102006025042B4 (de) * 2006-05-26 2008-08-14 Infineon Technologies Ag Datenratenfehler-tolerante Synchronisation eines digitalen Empfängers
US8036186B2 (en) * 2006-07-26 2011-10-11 Tropos Networks, Inc. Adaptively setting transmission power levels of nodes within a wireless mesh network
US8135047B2 (en) 2006-07-31 2012-03-13 Qualcomm Incorporated Systems and methods for including an identifier with a packet associated with a speech signal
US8260609B2 (en) 2006-07-31 2012-09-04 Qualcomm Incorporated Systems, methods, and apparatus for wideband encoding and decoding of inactive frames
KR100883652B1 (ko) * 2006-08-03 2009-02-18 삼성전자주식회사 음성 구간 검출 방법 및 장치, 및 이를 이용한 음성 인식시스템
CN101512639B (zh) * 2006-09-13 2012-03-14 艾利森电话股份有限公司 用于语音/音频发送器和接收器的方法和设备
EP2074711A2 (en) 2006-10-06 2009-07-01 ViaSat, Inc. Forward and reverse calibration for ground-based beamforming
US7877253B2 (en) 2006-10-06 2011-01-25 Qualcomm Incorporated Systems, methods, and apparatus for frame erasure recovery
EP2092517B1 (en) * 2006-10-10 2012-07-18 QUALCOMM Incorporated Method and apparatus for encoding and decoding audio signals
KR100833499B1 (ko) * 2006-10-27 2008-05-29 한국전자통신연구원 가변 대역 멀티 코덱의 음성 품질 측정 장치 및 방법
CN100587186C (zh) * 2006-11-02 2010-02-03 邹家祥 一种保温组合墙板构筑墙体的方法
US8279889B2 (en) * 2007-01-04 2012-10-02 Qualcomm Incorporated Systems and methods for dimming a first packet associated with a first bit rate to a second packet associated with a second bit rate
US8254455B2 (en) * 2007-06-30 2012-08-28 Microsoft Corporation Computing collocated macroblock information for direct mode macroblocks
US8428957B2 (en) 2007-08-24 2013-04-23 Qualcomm Incorporated Spectral noise shaping in audio coding based on spectral dynamics in frequency sub-bands
US20090198500A1 (en) * 2007-08-24 2009-08-06 Qualcomm Incorporated Temporal masking in audio coding based on spectral dynamics in frequency sub-bands
US20090094026A1 (en) * 2007-10-03 2009-04-09 Binshi Cao Method of determining an estimated frame energy of a communication
US8606566B2 (en) * 2007-10-24 2013-12-10 Qnx Software Systems Limited Speech enhancement through partial speech reconstruction
US8326617B2 (en) * 2007-10-24 2012-12-04 Qnx Software Systems Limited Speech enhancement with minimum gating
US8015002B2 (en) 2007-10-24 2011-09-06 Qnx Software Systems Co. Dynamic noise reduction using linear model fitting
JP5229234B2 (ja) 2007-12-18 2013-07-03 富士通株式会社 非音声区間検出方法及び非音声区間検出装置
EP3288034B1 (en) * 2008-03-14 2019-02-20 Panasonic Intellectual Property Corporation of America Decoding device, and method thereof
US8325800B2 (en) 2008-05-07 2012-12-04 Microsoft Corporation Encoding streaming media as a high bit rate layer, a low bit rate layer, and one or more intermediate bit rate layers
US8379851B2 (en) 2008-05-12 2013-02-19 Microsoft Corporation Optimized client side rate control and indexed file layout for streaming media
US7860996B2 (en) 2008-05-30 2010-12-28 Microsoft Corporation Media streaming with seamless ad insertion
US7948887B2 (en) * 2008-06-24 2011-05-24 Microsoft Corporation Network bandwidth measurement
US8144602B2 (en) * 2008-08-06 2012-03-27 Jds Uniphase Corporation Network load tester with real-time detection and recording
US8265140B2 (en) 2008-09-30 2012-09-11 Microsoft Corporation Fine-grained client-side control of scalable media delivery
US8964692B2 (en) * 2008-11-10 2015-02-24 Qualcomm Incorporated Spectrum sensing of bluetooth using a sequence of energy detection measurements
EP2211335A1 (en) * 2009-01-21 2010-07-28 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Apparatus, method and computer program for obtaining a parameter describing a variation of a signal characteristic of a signal
US8189666B2 (en) 2009-02-02 2012-05-29 Microsoft Corporation Local picture identifier and computation of co-located information
WO2010140940A1 (en) * 2009-06-04 2010-12-09 Telefonaktiebolaget Lm Ericsson (Publ) A method and arrangement for estimating the quality degradation of a processed signal
KR20110001130A (ko) * 2009-06-29 2011-01-06 삼성전자주식회사 가중 선형 예측 변환을 이용한 오디오 신호 부호화 및 복호화 장치 및 그 방법
CN102483926B (zh) 2009-07-27 2013-07-24 Scti控股公司 在处理语音信号中通过把语音作为目标和忽略噪声以降噪的系统及方法
US8811200B2 (en) 2009-09-22 2014-08-19 Qualcomm Incorporated Physical layer metrics to support adaptive station-dependent channel state information feedback rate in multi-user communication systems
PT2491559E (pt) 2009-10-19 2015-05-07 Ericsson Telefon Ab L M Método e estimador de fundo para a detecção de actividade de voz
WO2011065741A2 (ko) * 2009-11-24 2011-06-03 엘지전자 주식회사 오디오 신호 처리 방법 및 장치
US8781822B2 (en) * 2009-12-22 2014-07-15 Qualcomm Incorporated Audio and speech processing with optimal bit-allocation for constant bit rate applications
US20110196673A1 (en) * 2010-02-11 2011-08-11 Qualcomm Incorporated Concealing lost packets in a sub-band coding decoder
US8374858B2 (en) * 2010-03-09 2013-02-12 Dts, Inc. Scalable lossless audio codec and authoring tool
US9082416B2 (en) * 2010-09-16 2015-07-14 Qualcomm Incorporated Estimating a pitch lag
PL2676265T3 (pl) 2011-02-14 2019-09-30 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Urządzenie i sposób do kodowania sygnału audio z stosowaniem zrównanej części antycypacji
ES2639646T3 (es) 2011-02-14 2017-10-27 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Codificación y decodificación de posiciones de impulso de pistas de una señal de audio
KR101551046B1 (ko) * 2011-02-14 2015-09-07 프라운호퍼 게젤샤프트 쭈르 푀르데룽 데어 안겐반텐 포르슝 에. 베. 저-지연 통합 스피치 및 오디오 코딩에서 에러 은닉을 위한 장치 및 방법
CN103477387B (zh) 2011-02-14 2015-11-25 弗兰霍菲尔运输应用研究公司 使用频谱域噪声整形的基于线性预测的编码方案
MY166394A (en) 2011-02-14 2018-06-25 Fraunhofer Ges Forschung Information signal representation using lapped transform
BR112013020482B1 (pt) 2011-02-14 2021-02-23 Fraunhofer Ges Forschung aparelho e método para processar um sinal de áudio decodificado em um domínio espectral
PL2676264T3 (pl) 2011-02-14 2015-06-30 Fraunhofer Ges Forschung Koder audio estymujący szum tła podczas faz aktywnych
KR101525185B1 (ko) 2011-02-14 2015-06-02 프라운호퍼 게젤샤프트 쭈르 푀르데룽 데어 안겐반텐 포르슝 에. 베. 트랜지언트 검출 및 품질 결과를 사용하여 일부분의 오디오 신호를 코딩하기 위한 장치 및 방법
TWI488176B (zh) 2011-02-14 2015-06-11 Fraunhofer Ges Forschung 音訊信號音軌脈衝位置之編碼與解碼技術
US8762136B2 (en) * 2011-05-03 2014-06-24 Lsi Corporation System and method of speech compression using an inter frame parameter correlation
US8990074B2 (en) * 2011-05-24 2015-03-24 Qualcomm Incorporated Noise-robust speech coding mode classification
FR2977969A1 (fr) * 2011-07-12 2013-01-18 France Telecom Adaptation de fenetres de ponderation d'analyse ou de synthese pour un codage ou decodage par transformee
US9208796B2 (en) * 2011-08-22 2015-12-08 Genband Us Llc Estimation of speech energy based on code excited linear prediction (CELP) parameters extracted from a partially-decoded CELP-encoded bit stream and applications of same
US9015039B2 (en) * 2011-12-21 2015-04-21 Huawei Technologies Co., Ltd. Adaptive encoding pitch lag for voiced speech
US9111531B2 (en) * 2012-01-13 2015-08-18 Qualcomm Incorporated Multiple coding mode signal classification
EP2830062B1 (en) 2012-03-21 2019-11-20 Samsung Electronics Co., Ltd. Method and apparatus for high-frequency encoding/decoding for bandwidth extension
MY178710A (en) * 2012-12-21 2020-10-20 Fraunhofer Ges Forschung Comfort noise addition for modeling background noise at low bit-rates
CA2894625C (en) 2012-12-21 2017-11-07 Anthony LOMBARD Generation of a comfort noise with high spectro-temporal resolution in discontinuous transmission of audio signals
EP3217398B1 (en) 2013-04-05 2019-08-14 Dolby International AB Advanced quantizer
FR3008533A1 (fr) * 2013-07-12 2015-01-16 Orange Facteur d'echelle optimise pour l'extension de bande de frequence dans un decodeur de signaux audiofrequences
US9640185B2 (en) * 2013-12-12 2017-05-02 Motorola Solutions, Inc. Method and apparatus for enhancing the modulation index of speech sounds passed through a digital vocoder
US9570095B1 (en) * 2014-01-17 2017-02-14 Marvell International Ltd. Systems and methods for instantaneous noise estimation
US9721580B2 (en) * 2014-03-31 2017-08-01 Google Inc. Situation dependent transient suppression
CN105023579A (zh) * 2014-04-30 2015-11-04 中国电信股份有限公司 语音通信中语音编码实现方法、装置和通信终端
EP2980796A1 (en) * 2014-07-28 2016-02-03 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Method and apparatus for processing an audio signal, audio decoder, and audio encoder
TWI602172B (zh) * 2014-08-27 2017-10-11 弗勞恩霍夫爾協會 使用參數以加強隱蔽之用於編碼及解碼音訊內容的編碼器、解碼器及方法
CN104833105A (zh) * 2015-05-28 2015-08-12 芜湖美的厨卫电器制造有限公司 热水器和热水器系统
US11631421B2 (en) * 2015-10-18 2023-04-18 Solos Technology Limited Apparatuses and methods for enhanced speech recognition in variable environments
CN108701466B (zh) * 2016-01-03 2023-05-02 奥罗技术公司 使用预测器模型的信号编码器、解码器和方法
US11227214B2 (en) 2017-11-14 2022-01-18 Advanced Micro Devices, Inc. Memory bandwidth reduction techniques for low power convolutional neural network inference applications
EA038803B1 (ru) * 2017-12-25 2021-10-21 Федеральное государственное унитарное предприятие "Всероссийский научно-исследовательский институт автоматики им. Н.Л. Духова" Способ адаптивной цифровой фильтрации импульсных помех и фильтр для его реализации
US11948073B2 (en) 2018-04-20 2024-04-02 Advanced Micro Devices, Inc. Machine learning inference engine scalability
RU2691122C1 (ru) * 2018-06-13 2019-06-11 Ордена трудового Красного Знамени федеральное государственное бюджетное образовательное учреждение высшего образования "Московский технический университет связи и информатики" (МТУСИ) Способ и устройство компандирования звуковых вещательных сигналов
US11775799B2 (en) 2018-08-02 2023-10-03 Advanced Micro Devices, Inc. Runtime extension for neural network training with heterogeneous memory
US11769041B2 (en) 2018-10-31 2023-09-26 Advanced Micro Devices, Inc. Low latency long short-term memory inference with sequence interleaving
US11063645B2 (en) 2018-12-18 2021-07-13 XCOM Labs, Inc. Methods of wirelessly communicating with a group of devices
US10756795B2 (en) 2018-12-18 2020-08-25 XCOM Labs, Inc. User equipment with cellular link and peer-to-peer link
CN111338974A (zh) 2018-12-19 2020-06-26 超威半导体公司 用于矩阵数学指令集的图块化算法
CN111353575A (zh) * 2018-12-20 2020-06-30 超威半导体公司 用于卷积神经网络的图块化格式
US11330649B2 (en) 2019-01-25 2022-05-10 XCOM Labs, Inc. Methods and systems of multi-link peer-to-peer communications
US10756767B1 (en) 2019-02-05 2020-08-25 XCOM Labs, Inc. User equipment for wirelessly communicating cellular signal with another user equipment
CN111723918A (zh) 2019-03-18 2020-09-29 超威半导体公司 用于卷积内核的自动生成和调谐工具
US11610142B2 (en) 2019-05-28 2023-03-21 Ati Technologies Ulc Safety monitor for image misclassification
US11210199B2 (en) 2019-05-31 2021-12-28 Ati Technologies Ulc Safety monitor for invalid image transform
US11250867B1 (en) * 2019-10-08 2022-02-15 Rockwell Collins, Inc. Incorporating data into a voice signal with zero overhead
JP7332890B2 (ja) * 2019-11-19 2023-08-24 アイコム株式会社 音声通信システム、音声通信方法、および、音声通信プログラム
US11023390B1 (en) * 2020-03-27 2021-06-01 Arm Limited Resizing circuitry
CN112767953B (zh) * 2020-06-24 2024-01-23 腾讯科技(深圳)有限公司 语音编码方法、装置、计算机设备和存储介质

Family Cites Families (71)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US32580A (en) * 1861-06-18 Water-elevatok
US3633107A (en) * 1970-06-04 1972-01-04 Bell Telephone Labor Inc Adaptive signal processor for diversity radio receivers
JPS5017711A (fi) * 1973-06-15 1975-02-25
US3988674A (en) * 1975-03-17 1976-10-26 Communications Satellite Corporation (Comsat) Frame synchronization in speech predictive encoded communication system
US4076958A (en) * 1976-09-13 1978-02-28 E-Systems, Inc. Signal synthesizer spectrum contour scaler
US4214125A (en) * 1977-01-21 1980-07-22 Forrest S. Mozer Method and apparatus for speech synthesizing
CA1123955A (en) * 1978-03-30 1982-05-18 Tetsu Taguchi Speech analysis and synthesis apparatus
DE3023375C1 (fi) * 1980-06-23 1987-12-03 Siemens Ag, 1000 Berlin Und 8000 Muenchen, De
US4379949A (en) * 1981-08-10 1983-04-12 Motorola, Inc. Method of and means for variable-rate coding of LPC parameters
JPS6011360B2 (ja) * 1981-12-15 1985-03-25 ケイディディ株式会社 音声符号化方式
US4535472A (en) * 1982-11-05 1985-08-13 At&T Bell Laboratories Adaptive bit allocator
DE3276651D1 (en) * 1982-11-26 1987-07-30 Ibm Speech signal coding method and apparatus
EP0127718B1 (fr) * 1983-06-07 1987-03-18 International Business Machines Corporation Procédé de détection d'activité dans un système de transmission de la voix
US4672670A (en) * 1983-07-26 1987-06-09 Advanced Micro Devices, Inc. Apparatus and methods for coding, decoding, analyzing and synthesizing a signal
EP0163829B1 (en) * 1984-03-21 1989-08-23 Nippon Telegraph And Telephone Corporation Speech signal processing system
IT1179803B (it) * 1984-10-30 1987-09-16 Cselt Centro Studi Lab Telecom Metodo e dispositivo per la correzione di errori causati da rumore di tipo impulsivo su segnali vocali codificati con bassa velocita di ci fra e trasmessi su canali di comunicazione radio
US4937873A (en) * 1985-03-18 1990-06-26 Massachusetts Institute Of Technology Computationally efficient sine wave synthesis for acoustic waveform processing
US4856068A (en) * 1985-03-18 1989-08-08 Massachusetts Institute Of Technology Audio pre-processing methods and apparatus
US4885790A (en) * 1985-03-18 1989-12-05 Massachusetts Institute Of Technology Processing of acoustic waveforms
US4831636A (en) * 1985-06-28 1989-05-16 Fujitsu Limited Coding transmission equipment for carrying out coding with adaptive quantization
US4827517A (en) * 1985-12-26 1989-05-02 American Telephone And Telegraph Company, At&T Bell Laboratories Digital speech processor using arbitrary excitation coding
US4797929A (en) * 1986-01-03 1989-01-10 Motorola, Inc. Word recognition in a speech recognition system using data reduced word templates
CA1299750C (en) * 1986-01-03 1992-04-28 Ira Alan Gerson Optimal method of data reduction in a speech recognition system
JPH0748695B2 (ja) * 1986-05-23 1995-05-24 株式会社日立製作所 音声符号化方式
US4899384A (en) * 1986-08-25 1990-02-06 Ibm Corporation Table controlled dynamic bit allocation in a variable rate sub-band speech coder
US4771465A (en) * 1986-09-11 1988-09-13 American Telephone And Telegraph Company, At&T Bell Laboratories Digital speech sinusoidal vocoder with transmission of only subset of harmonics
US4797925A (en) * 1986-09-26 1989-01-10 Bell Communications Research, Inc. Method for coding speech at low bit rates
US4903301A (en) * 1987-02-27 1990-02-20 Hitachi, Ltd. Method and system for transmitting variable rate speech signal
US5054072A (en) * 1987-04-02 1991-10-01 Massachusetts Institute Of Technology Coding of acoustic waveforms
US4969192A (en) * 1987-04-06 1990-11-06 Voicecraft, Inc. Vector adaptive predictive coder for speech and audio
US4868867A (en) * 1987-04-06 1989-09-19 Voicecraft Inc. Vector excitation speech or audio coder for transmission or storage
US5202953A (en) * 1987-04-08 1993-04-13 Nec Corporation Multi-pulse type coding system with correlation calculation by backward-filtering operation for multi-pulse searching
US4890327A (en) * 1987-06-03 1989-12-26 Itt Corporation Multi-rate digital voice coder apparatus
US4802171A (en) * 1987-06-04 1989-01-31 Motorola, Inc. Method for error correction in digitally encoded speech
US4831624A (en) * 1987-06-04 1989-05-16 Motorola, Inc. Error detection method for sub-band coding
US4899385A (en) * 1987-06-26 1990-02-06 American Telephone And Telegraph Company Code excited linear predictive vocoder
CA1337217C (en) * 1987-08-28 1995-10-03 Daniel Kenneth Freeman Speech coding
US4960494A (en) * 1987-09-02 1990-10-02 Moltech Invent S.A. Ceramic/metal composite material
US4811404A (en) * 1987-10-01 1989-03-07 Motorola, Inc. Noise suppression system
US4852179A (en) * 1987-10-05 1989-07-25 Motorola, Inc. Variable frame rate, fixed bit rate vocoding method
US4896361A (en) * 1988-01-07 1990-01-23 Motorola, Inc. Digital speech coder having improved vector excitation source
EP0331857B1 (en) * 1988-03-08 1992-05-20 International Business Machines Corporation Improved low bit rate voice coding method and system
EP0331858B1 (en) * 1988-03-08 1993-08-25 International Business Machines Corporation Multi-rate voice encoding method and device
US5023910A (en) * 1988-04-08 1991-06-11 At&T Bell Laboratories Vector quantization in a harmonic speech coding arrangement
US4864561A (en) * 1988-06-20 1989-09-05 American Telephone And Telegraph Company Technique for improved subjective performance in a communication system using attenuated noise-fill
JPH0783315B2 (ja) * 1988-09-26 1995-09-06 富士通株式会社 可変レート音声信号符号化方式
US5077798A (en) * 1988-09-28 1991-12-31 Hitachi, Ltd. Method and system for voice coding based on vector quantization
DE3853161T2 (de) * 1988-10-19 1995-08-17 Ibm Vektorquantisierungscodierer.
NL8901032A (nl) * 1988-11-10 1990-06-01 Philips Nv Coder om extra informatie op te nemen in een digitaal audiosignaal met een tevoren bepaald formaat, een decoder om deze extra informatie uit dit digitale signaal af te leiden, een inrichting voor het opnemen van een digitaal signaal op een registratiedrager, voorzien van de coder, en een registratiedrager verkregen met deze inrichting.
JP3033060B2 (ja) * 1988-12-22 2000-04-17 国際電信電話株式会社 音声予測符号化・復号化方式
CA2005115C (en) * 1989-01-17 1997-04-22 Juin-Hwey Chen Low-delay code-excited linear predictive coder for speech or audio
US5222189A (en) * 1989-01-27 1993-06-22 Dolby Laboratories Licensing Corporation Low time-delay transform coder, decoder, and encoder/decoder for high-quality audio
EP0392126B1 (en) * 1989-04-11 1994-07-20 International Business Machines Corporation Fast pitch tracking process for LTP-based speech coders
US5060269A (en) * 1989-05-18 1991-10-22 General Electric Company Hybrid switched multi-pulse/stochastic speech coding technique
US4975956A (en) * 1989-07-26 1990-12-04 Itt Corporation Low-bit-rate speech coder using LPC data reduction processing
GB2235354A (en) * 1989-08-16 1991-02-27 Philips Electronic Associated Speech coding/encoding using celp
US5091945A (en) * 1989-09-28 1992-02-25 At&T Bell Laboratories Source dependent channel coding with error protection
AU6174290A (en) * 1989-10-06 1991-04-28 Motorola, Inc. Error detection/correction scheme for vocoders
US5307441A (en) * 1989-11-29 1994-04-26 Comsat Corporation Wear-toll quality 4.8 kbps speech codec
JPH03181232A (ja) * 1989-12-11 1991-08-07 Toshiba Corp 可変レート符号化方式
US5097507A (en) * 1989-12-22 1992-03-17 General Electric Company Fading bit error protection for digital cellular multi-pulse speech coder
CH680030A5 (fi) * 1990-03-22 1992-05-29 Ascom Zelcom Ag
JP3102015B2 (ja) * 1990-05-28 2000-10-23 日本電気株式会社 音声復号化方法
US5103459B1 (en) * 1990-06-25 1999-07-06 Qualcomm Inc System and method for generating signal waveforms in a cdma cellular telephone system
US5235671A (en) * 1990-10-15 1993-08-10 Gte Laboratories Incorporated Dynamic bit allocation subband excited transform coding method and apparatus
US5187745A (en) * 1991-06-27 1993-02-16 Motorola, Inc. Efficient codebook search for CELP vocoders
DE69232202T2 (de) * 1991-06-11 2002-07-25 Qualcomm, Inc. Vocoder mit veraendlicher bitrate
US5495555A (en) * 1992-06-01 1996-02-27 Hughes Aircraft Company High quality low bit rate celp-based speech codec
US5734789A (en) * 1992-06-01 1998-03-31 Hughes Electronics Voiced, unvoiced or noise modes in a CELP vocoder
US5566206A (en) * 1993-06-18 1996-10-15 Qualcomm Incorporated Method and apparatus for determining data rate of transmitted variable rate data in a communications receiver
US5537410A (en) * 1994-09-15 1996-07-16 Oki Telecom Subsequent frame variable data rate indication method

Also Published As

Publication number Publication date
CN1071036A (zh) 1993-04-14
BR9206143A (pt) 1995-01-03
EP1998319A3 (en) 2008-12-17
DE69232202T2 (de) 2002-07-25
HK1127152A1 (en) 2009-09-18
HU215861B (hu) 1999-03-29
FI118702B (fi) 2008-02-15
EP1126437B1 (en) 2004-08-04
EP1763020A3 (en) 2010-09-29
DE69233397D1 (de) 2004-09-09
ATE294441T1 (de) 2005-05-15
CA2483324A1 (en) 1992-12-23
ATE272883T1 (de) 2004-08-15
FI20011508A (fi) 2001-07-10
IL102146A (en) 1996-03-31
JP2006079107A (ja) 2006-03-23
JP4191746B2 (ja) 2008-12-03
EP1675100A2 (en) 2006-06-28
EP1162601A2 (en) 2001-12-12
FI935597A0 (fi) 1993-12-13
IL113988A (en) 1996-11-14
EP0588932A1 (en) 1994-03-30
JP2002202800A (ja) 2002-07-19
US5657420A (en) 1997-08-12
EP1107231A3 (en) 2001-12-05
DE69233502T2 (de) 2006-02-23
IL113986A0 (en) 1995-10-31
AU671952B2 (en) 1996-09-19
CN1159639A (zh) 1997-09-17
DE69233397T2 (de) 2005-08-11
EP1107231B1 (en) 2005-04-27
EP0588932B1 (en) 2001-11-14
HUT70719A (en) 1995-10-30
CN1381956A (zh) 2002-11-27
DE69233502D1 (de) 2005-06-02
CN1091535C (zh) 2002-09-25
EP1998319A2 (en) 2008-12-03
CN1398052A (zh) 2003-02-19
CN1112673C (zh) 2003-06-25
CN1167309A (zh) 1997-12-10
CA2483322A1 (en) 1992-12-23
CN1196271C (zh) 2005-04-06
RU2107951C1 (ru) 1998-03-27
JP2004004897A (ja) 2004-01-08
ZA924082B (en) 1993-02-26
AU6089396A (en) 1996-10-03
AU1482597A (en) 1997-05-15
CA2483322C (en) 2008-09-23
AU693374B2 (en) 1998-06-25
FI20061121A (fi) 2006-12-15
JP3964915B2 (ja) 2007-08-22
NO934544L (no) 1993-12-10
CA2483296C (en) 2008-01-22
DK0588932T3 (da) 2002-03-11
US5778338A (en) 1998-07-07
CN1909059A (zh) 2007-02-07
JP3955600B2 (ja) 2007-08-08
US5414796A (en) 1995-05-09
JP2002023796A (ja) 2002-01-25
HK1064785A1 (en) 2005-02-04
EP1126437A2 (en) 2001-08-22
JP2005182075A (ja) 2005-07-07
CA2102099A1 (en) 1992-12-12
IL113987A (en) 1996-11-14
JPH06511320A (ja) 1994-12-15
ATE208945T1 (de) 2001-11-15
DE69232202D1 (de) 2001-12-20
IL113988A0 (en) 1995-10-31
FI20011509A (fi) 2001-07-10
CA2483296A1 (en) 1992-12-23
EP1763020A2 (en) 2007-03-14
IL113987A0 (en) 1995-10-31
IL113986A (en) 1996-11-14
CN1286086C (zh) 2006-11-22
CA2483324C (en) 2008-05-06
DK1126437T3 (da) 2004-11-08
JP2006221186A (ja) 2006-08-24
AU2186592A (en) 1993-01-12
CA2635914A1 (en) 1992-12-23
CA2102099C (en) 2006-04-04
HK1014796A1 (en) 1999-09-30
CN1119796C (zh) 2003-08-27
EP1126437A3 (en) 2001-12-12
EP1107231A2 (en) 2001-06-13
CA2568984A1 (en) 1992-12-23
WO1992022891A1 (en) 1992-12-23
JP3751957B2 (ja) 2006-03-08
FI20061122L (fi) 2006-12-15
FI935597A (fi) 1993-12-13
JP3432822B2 (ja) 2003-08-04
CA2568984C (en) 2007-07-10
CN1492395A (zh) 2004-04-28
ES2166355T3 (es) 2002-04-16
ATE477571T1 (de) 2010-08-15
EP1239456A1 (en) 2002-09-11
EP1998319B1 (en) 2010-08-11
NO934544D0 (no) 1993-12-10
CN1220334C (zh) 2005-09-21
ES2225321T3 (es) 2005-03-16
ES2240252T3 (es) 2005-10-16
DE69233794D1 (de) 2010-09-23
JP3566669B2 (ja) 2004-09-15
EP1162601A3 (en) 2002-07-03
ES2348319T3 (es) 2010-12-02
AU711484B2 (en) 1999-10-14
NO319559B1 (no) 2005-08-29
MX9202808A (es) 1992-12-01
SG70558A1 (en) 2000-02-22

Similar Documents

Publication Publication Date Title
FI120425B (fi) Vaihtelevanopeuksinen vokooderi
NO322638B1 (no) Metode og apparat for maskering av feil i rammer med data.

Legal Events

Date Code Title Description
FG Patent granted

Ref document number: 120425

Country of ref document: FI

MA Patent expired